-
Qu’est-ce que
RATP Objet Connecté ?La RATP vous propose un objet connecté mobilité, à fabriquer soi-même ou prêt à l’emploi !
Il vous indique en temps réel le prochain passage de votre transport favori. Son petit format vous permet de consulter en un coup d’œil les informations de votre ligne, chez vous, au bureau…
-
Un accès immédiat
RATP Objet Connecté fonctionne comme les écrans d’information en temps réel que vous trouvez sur les quais de notre réseau ou la plupart des arrêts de bus, grâce à l’open data !
-
Comment ça marche ?
Configurez RATP Objet Connecté sur la ligne de transport qui vous concerne pour obtenir les 4 prochains horaires de départ de votre ligne. Vous pouvez également consulter les horaires de début et de fin de service de votre ligne.
Parce que votre temps est précieux, obtenez, grâce à RATP Objet Connecté, les informations nécessaires à l’optimisation de votre départ ! Vous ne raterez plus votre bus ou votre RER !
-
Lancez-vous dans sa fabrication !
Vous êtes fan d’électronique et d’informatique, vous savez souder… Fabriquez RATP Objet Connecté de A à Z : suivez le guide pour trouver toutes les instructions nécessaires à sa conception.
C’est parti ! Une fois votre RATP Objet Connecté finalisé, vous ne pourrez plus vous en passer !
Composants nécessaires
Une carte Arduino Uno basée sur le module WiFi ESP8266 telle qu’une ArduCam Uno avec chargeur de batterie intégré. Un câble USB type B micro mâle est également nécessaire afin de connecter la carte à l’ordinateur et recharger la batterie.
Si vous ne souhaitez pas utiliser RATP Objet Connecté sur batterie, équipez-vous d’une carte basée sur l’ESP8266 sans chargeur, comme la Wemos D1.

Un écran TFT LCD 2.4’’ : il est indispensable qu'il soit possible d’allumer et d’éteindre le rétroéclairage de l’écran (optimisation de la consommation électrique sur batterie).
Vous pouvez néanmoins utiliser d’autres écrans TFT LCD. Il est cependant important de faire attention aux points suivants :
- Le driver doit être un IL9341
- Les écrans conçus spécifiquement pour l’Arduino Uno ne sont pas compatibles avec les cartes basées sur l’ESP8266 (nombre de pins insuffisant et les sorties ne coïncident pas exactement aux sorties de l’Arduino Uno). Il faut donc fabriquer un adaptateur pour rediriger les pins. De plus, ces cartes fonctionnent habituellement avec une alimentation de 5V, or l’ESP8266 fonctionne avec alimentation 3.3V.


Un protoboard et le matériel nécessaire afin d’adapter l’écran TFT à la carte Arduino basée sur l’ESP8266 de votre choix.
Nous vous conseillons :
- Un protoboard sans ligne
- Des pins
- Une résistance de 10kOhm (pour la commande du rétroéclairage)
- Et, du fil électrique.

Une batterie lithium ion de 1000 mAh
Certaines subtilités sont spécifiques au Kit, elles vous seront signalées par cette icône.
Installation de l’environnement
ARDUINO et du Driver
Ajoutez l’url de gestionnaire de cartes supplémentaires suivant dans les préférences de l’arduino IDE :
http://arduino.esp8266.com/stable/package_esp8266com_index.json

- Ajoutez « ESP8266 by ESP8266 Community » dans le gestionnaire de cartes (Outils >Type de Cartes > Gestionnaire de cartes)
- Cherchez « ESP8266 » ou « wemos »

Téléchargez le driver. Ce driver fonctionne également pour l’ARDUCAM. Il vous faudra éventuellement redémarrer votre ordinateur pour finaliser l’installation.

Installation et configuration
des bibliothèques
Installez les bibliothèques MicroDebug et ArduinoJson via le Gestionnaire de bibliothèque
Pour ouvrir le gestionnaire de bibliothèque :
Menu Croquis > Inclure une bibliothèque > Gestionnaire de bibliothèque.

- Téléchargez la bibliothèque TFT_eSPI
- Fermez Arduino, puis copiez le dossier « TFT_eSPI-master » dans le dossier « Libraries » (du dossier « Arduino »)
- Renommez le dossier en «TFT-eSPI» (enlevez les caractères «-master»)

Ouvrez le dossier « TFT_eSPI », pour éditer les pins définis dans fichier « User_Setup.h ». Pour cela, ouvrez «User_Setup.h» dans un éditeur de texte puis modifiez les lignes auxquelles les pins TFT_CS, TFT_DC et TFT_RST sont affectées afin de les faire correspondre aux indications ci-dessous.
#define TFT_CS PIN_D8 // Chip select control pin D8
#define TFT_DC PIN_D4 // Data Command control pin
#define TFT_RST PIN_D3 // Reset pin (could connect to NodeMCU RST, see next line)
Connexions
et soudures
Si vous avez opté pour une alimentation batterie, le rétroéclairage de l'écran LCD TFT doit être éteint par défaut. Le pin qui commandera celui-ci doit idéalement être un pin " pull-down " par défaut. Dans notre cas, seul le pin SCL/D1 peut être forcé à être " pull-down " via une résistance de 10k Ohm.

Faites correspondre la taille du protoboard à celle de la carte Arduino (20 trous x 22 trous).
Soudez ensuite les pins correspondants aux deux rangées supérieures de la carte Arduino (Vin à IOref et MISO/D6 à SCL/D1) ; puis soudez un pin pour le D3.
Enfin, soudez les câbles de façon à respecter le schéma présenté à la section 4.1 et ajoutez la résistance « pull-down ».

Soudez l’écran LCD TFT sur l’adaptateur.

Attention : Veillez à ce que le lecteur de carte SD qui se trouve à l’arrière de l’écran ne court-circuite pas les connections sur le protoboard. L’application de ruban adhésif isolant sur le lecteur de carte prévient ce problème.
Branchez la batterie au connecteur de la carte ArduCam Uno.

Personnalisation du code
et programmation
Téléchargez le Croquis Arduino BIV-DUINO et décompressez-le pour obtenir le dossier BIV-DUINO.
- BIV-DUINO.ino
- CARACTERES_SPECIAUX.ino
- DRAW_ICON.ino
- Free_Fonts.h
- GET_RATP_DATA_FROM_REST_API.ino
- HTTPS.ino
- Logos.h
- TFT.ino
- WIFI.ino
Avec le KIT : téléchargez le croquis arduino BIV-DUINO-KIT

Pour permettre à l’ESP8266 de se connecter à votre réseau wifi, modifiez les lignes 12 et 13 du croquis dans l’onglet «BIV-DUINO».
Remplacez : «le nom de votre réseau Wifi» par le SSID de votre réseau wifi, et «votre mot de passe» par le mot de passe de votre réseau wifi. (Attention à respecter la casse !)
/*----------------------PARAMETRES WIFI-------------------------*/
#define SSIDWIFI «le nom de votre réseau Wifi»
#define PASSWORD «votre mot de passe»
Éditez les lignes 17, 18, 20, 22 et 28 du croquis dans l’onglet «BIV-DUINO».
- Affectez à la matrice typeLigne la valeur correspondante au type de ligne qui vous intéresse : «bus», «rers», «metros», «tramways» ou «noctiliens».
- Affectez à la matrice idLigne le numéro de la ligne correspondante.
- Affectez à la matrice arretLigne le nom de votre arrêt (pas de majuscule, remplacez les espaces par des « + »).
- Renseignez dans la matrice directionLigne la direction dans laquelle vous prenez cette ligne: aller «A» ou retour «R». Afin de connaitre votre direction, rendez-vous dans votre navigateur Internet à l’url à construire suivant la règle ci-dessous :
URL = «https://makers.ratp.fr/api/schedules/» + typeLigne + «/» + idLigne + «/» + arretLigne + «/» + directionLigne
Faites varier le paramètre directionLigne entre «A» et «R» et vérifiez que la destination de la réponse qui s’affiche vous correspond.
Attention, certaines lignes ont plusieurs destinations possibles, la notion de destination est différente de la notion de direction. Il est donc possible de préciser la/les destination(s) qui vous intéresse si nécessaire. Pour cela, affectez au tableau la/les destination(s) correspondante(s).
exemple : char* destination [] = {«Gare du Nord»,«Colonel Fabien»};
Avec le KIT : Vous pouvez programmer jusqu’à 4 lignes différentes. Pour cela, il faut affecter plusieurs valeurs à chaque matrice : le premier élément de typeLigne correspond au premier élément de idLigne et ainsi de suite.
/*--------------------PARAMETRES DE LIGNE RATP----------------------*/
// type de ligne en minuscule: «bus», «rers», «metros», «tramways» ou «noctiliens»
String typeLigne[] = {«metros»};
String idLigne[] = {«5»};
// nom de votre arrêt sans espace, remplacer les espaces par des «+»
String arretLigne[] = {«stalingrad»};
// «A»: pour la direction aller, «R»: pour la direction retour
String directionLigne[] = {«R»};
// Certaines lignes ont plusieurs destinations (terminus) possibles,
// si certaines destinations en particulier vous intéressent,
// renseignez la/les destination(s) dans cette matrice.
// Sinon laissez une matrice vide {{«», «», «», «»}}.
// Attention à l’orthographe.
char* destination [1][4] = {{«», «», «», «»}};
Ouvrez Arduino et assurez-vous que le port sur lequel est branché votre carte est bien sélectionné dans le menu Outils > Port. Veillez également à ce que le type de carte sélectionné soit bien « Wemos D1 R2 & mini » dans le menu Outils > Type de carte.
Une fois ces vérifications effectuées, téléversez le programme en cliquant sur la flèche en haut à gauche de la fenêtre Arduino.

RATP Objet Connecté !