Essai : PIC-MAXI-WEB Olimex

Depuis quelques temps, j’avais envie d’essayer une carte qui permette de mettre en œuvre deux de mes passions, l’électronique et le développement WEB.

En faisant des recherches sur internet, j’avais trouvé quelques modèles de cartes de développement intéressantes notamment chez Olimex.

Ce fabricant m’a gentiment proposé une carte PIC-MAXI-WEB pour que je puisse la tester. Je vous présente donc un test/tutoriel de cette carte :


1] Présentation de la carte :

PIC-MAXI-WEB

Elle est composée de :

  • Un microcontrôleur PIC18F97J60
  • Une mémoire Flash 1Mbit pour la sauvegarde des pages WEB
  • Un connecteur ICSP/ICD pour le débogage
  • Un capteur de température
  • Un potentiomètre
  • Deux relais 10A/250VAC
  • Quatre entrées numériques isolées par optocoupleur
  • Douze entrées analogiques
  • Deux boutons poussoirs
  • Un afficheur LCD 16×2 avec rétro-éclairage
  • Une interface RS232
  • Une interface Ethernet

2] Mise à jour :

En configuration usine, la carte est programmée avec la version 5 de la pile Microchip TCP-IP (TCP-IP stack).

PIC-MAXI-WEB_01

La première manipulation a faire est de la mettre à jour :

Il faut télécharger les fichiers nécessaires à la mise à jour (V5.42) sur le site d’Olimex.

Connectez un PICKit2/PICKit3 sur la carte puis ouvrez MPLAB, choisissez le programmateur puis le microcontrôleur :

MPLAB_Prog MPLAB_Device

Importez le fichier « PIC-MAXI-WEB demo Prebuilt.hex » se trouvant dans le dossier « PIC_MAXI_WEB_5_42/TCPIP » (File->Import) puis programmez la carte.

Sur l’écran LCD, la nouvelle version doit apparaître :
PIC-MAXI-WEB_02


3] Chargement des pages WEB :

Pour que la liaison Ethernet fonctionne, il faut configurer la carte réseau comme ceci :
Config_Reseau
Dans « Adresse IP » choisissez une adresse ne se terminant pas comme celle indiquée sur l’afficheur LCD.

Connectez un câble Ethernet entre votre ordinateur et la carte, puis ouvrez un navigateur internet.

Entrez l’adresse IP affichée sur l’écran LCD suivi de « /mpfsupload » (exemple : http://1692.168.0.95/mpfsupload), une page de chargement doit s’afficher :

MPFS_Upload01

Si ce n’est pas le cas, il y a certainement un problème de configuration de la carte réseau. Vous pouvez tester la liaison avec une invite de commandes ping :
Ping
Sur cette image la communication est établie.

Selectionnez le fichier « WebPage MPFSImg2 Prebuilt.bin » se trouvant dans le dossier « PIC_MAXI_WEB_5_42/TCPIP » puis cliquez sur « Upload » :
MPFS_Upload02

Une fois le fichier chargé, un message apparaît :
MPFS_Upload03

Cliquez sur le lien ou entrez l’adresse IP de la carte sur la navigateur internet.

Si la procédure s’est bien déroulée une page WEB apparaît :
PageDemo_Index

Des informations relatives à la carte sont affichées comme la température ou la valeur du potentiomètre.

Si vous cliquez sur les points dans le cadre en haut à droite, la carte doit réagir en allumant des LEDs, actionnant des relais ou en allumant le rétro-éclairage de l’écran :
PageDemo_IndexMod PIC-MAXI-WEB_04
Sur cet exemple, le rétro-éclairage est allumé et les relais sont commandés.

Vous pouvez explorer les différentes pages qui présentent les possibilités offertes par la pile TCP-IP Microchip.

En allant sur la page « Form Processing », vous pouvez également agir sur la carte et également sur le texte de l’afficheur LCD :
PageDemo_Form PIC-MAXI-WEB_05


4] Programmation et chargement d’une page WEB personnalisée :

Comme indiqué au début de cet article, une autre de mes passions est le développement WEB, j’étais donc impatient de mettre en œuvre ma propre page WEB sur cette carte !

J’ai donc examiné les fichiers précédemment chargés. Ils sont disponibles dans le dossier « PIC_MAXI_WEB_5_42/TCPI/Demo App/WebPages2 ».

Les mises à jour des informations sont faites avec de l’AJAX et un fichier XML, c’est un système assez simple à comprendre.

Je me suis donc amusé à faire un thermomètre graphique qui se met à jour automatiquement :
PageWeb_T11 PageWeb_T24 PageWeb_T33

Je mets à disposition les fichiers WEB et le fichier BIN de mon exemple car il est plus simple à comprendre que l’exemple fourni par Olimex.

Pour pouvoir convertir les fichiers WEB en fichier BIN, il faut utiliser un utilitaire fourni avec les fichiers exemples et de mise à jour.

Il s’agit du programme JAVA « Microchip MPFS Generator » (MPFS2.jar) se trouvant dans le dossier « PIC_MAXI_WEB_5_42/Microchip/TCPIP Stack/Utilities » :
MPFS_Generator

Son fonctionnement est assez simple, il faut choisir le répertoire où se trouvent les fichiers à convertir et l’emplacement ou le fichier BIN doit être créé.


5] Paramétrage de la carte :

Il peux être utile de pouvoir configurer la connexion Ethernet la carte, c’est possible de le faire via la liaison série RS232.

Sur cette carte, c’est une liaison RS232 sur connecteur SUB-D9, ce qui devient compliqué à trouver sur les ordinateurs récents. Il est peut-être possible d’utiliser un module de conversion USB FTDI (à tester).

Connectez un câble de liaison série entre votre ordinateur et la carte puis ouvrez HyperTerminal ou un autre programme de console terminal (pour moi c’est TeraTerm).

Configurez le port COM comme ceci :
TeraTerm_Config

Quand la carte est sous tension, appuyez sur le bouton reset (RST), un message doit apparaître sur le terminal :
TeraTerm_Run

Pour accéder au menu de configuration, appuyez sur le bouton n°1 (BUT1) pendant quelques secondes puis appuyez sur le bouton reset (RST) en même temps.

Le menu suivant doit apparaître :
TeraTerm_Menu
Il sera peut-être nécessaire de modifier les autres paramètres selon l’utilisation de la carte.

Pour modifier l’adresse IP de la carte, choisissez le menu n°3 et entrez la nouvelle adresse. Il est préférable de cocher l’option « Echo local » sur la console terminal (Menu Setup/Terminal avec TeraTerm) pour pouvoir visualiser les manipulations au clavier.

Une fois les paramètres modifiés, choisissez le menu n°0 pour les sauvegarder :
TeraTerm_IP

PIC-MAXI-WEB_03
La nouvelle adresse IP apparaît sur l’afficheur LCD.


6] Commande de la carte via WIFI et BOX :

En essayant cette carte, je me suis dit qu’il serait sympa de pouvoir commander la carte par WIFI, même si elle n’a pas d’électronique pour le faire.

Je me suis donc lancé, tête baissée, sans savoir si c’était possible de le faire avec ma BOX SFR. Et bien c’est tout à fait possible en configurant la carte correctement.

J’ai configuré la carte comme ceci :
TeraTerm_ConfigBox

Il faut faire attention au paramétrage du DHCP qui doit être activé pour permettre un changement d’adresse IP dynamiquement.

J’ai connecté ma BOX sur le port LAN2 et j’ai vérifié sur la page interface de la BOX que ma carte était bien reconnue :
SFRBox
SFRBox_Config

L’adresse IP de la carte a été modifiée automatiquement dès le branchement du câble Ethernet.

J’ai ensuite entré la nouvelle adresse IP de la carte sur le navigateur de ma tablette et ai testé le fonctionnement :
SFRBox_Test01
Modification de l’état d’un relais et du rétro-éclairage.

SFRBox_Test02
Modification du texte sur l’afficheur LCD.


7] Conclusion :

J’ai eu un peu de mal au début pour faire fonctionner cette carte mais avec les bonnes documentations, j’ai fini par réussir.

N’ayant pas trouvé beaucoup de tutoriels sur l’utilisation de cette carte, j’ai décidé de faire cet article qui me paraît assez complet pour la mise en fonction de la carte.

La prochaine étape sera de mettre en route un serveur WEB pour pouvoir utiliser la carte à distance via internet, c’est le principe de base de la domotique.


8] Documentations / Boutique Olimex :

Vous pouvez retrouver les produits Olimex sur leur boutique eBay.

Pour marque-pages : Permaliens.

9 réponses à Essai : PIC-MAXI-WEB Olimex

  1. fabien dit :

    ouah, tu a bosser dur!!! vivement la prochaine étape!
    très bien fait le TUTO

  2. jC_Omega dit :

    Félicitation pour ce tuto.
    La carte Olimex est bien performante.

  3. Thienou dit :

    Merci à vous deux

  4. Hassan OH dit :

    Très bon boulot. Toute la gamme Olimex est intéressante. Bonne continuation

  5. Al Jabre dit :

    Merci beaucoup pour ce tutoriel
    Je découvre justement cette carte pour mon projet de fin d’étude et votre tutoriel m’aide énormément.

  6. Thierry dit :

    bonjour,
    merci beaucoup pour cette aide précieuse. On avance plus vite dans la maitrise de cette carte.
    Mais je rencontre un problème avec le fichier .bin. Lorsque je le génère à partir de vos sources à l’aide de « Microchip MPFS Generator » (MPFS2.jar) , je n’obtiens pas du tout le même fichier (4Ko au lieu de 45Ko) et le comportement n’est pas du tout le même. Quelle est la configuration à utiliser avec MPFS2.jar ?
    Cordialement
    Thierry

    • Thienou dit :

      Bonjour,

      Je viens d’essayer à nouveau avec les fichiers du lien et j’obtiens bien un fichier de 45ko.

      Il faut sélectionner le dossier « pagetest_thienou » dans « Source Directory » avec « Webpage Directory » de sélectionné.

      Dans « Processing Options » il faut choisir « BIN Image », dans « Ouput Files » le dossier de destination et décocher « Upload Image To ».

  7. PIDOU S dit :

    Bonjour,
    Bravo pour votre site.
    je débute avec les PIC32 et j aimerai réaliser une connexion Ethernet entre un PIC32 et une interface Windows en C#
    faire dans un premier temps un Ping
    est ce que quelqu un aurait un bout de code en c pour établir une connexion ?
    Merci pour vos réponses
    Sébastien

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *