Skip to content

paulllleon/Invisible-network

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

(This project page was originally intended for a workshop given at the Mapping Festival 2021 in Geneva, Switzerland. That's why the page is in French.) If you don't speak French but are curious to know more about the project, don't hesitate to write me. It is an ongoing project, I will translate the page into English as soon as I have time.

Invisible-network

Invisible Network est projet réalisé par les designer Paul Lëon et Evan Kelly, tout deux cofondateur du design lab ZEROTERA. Cette page github est dédié à Wibot, un appareil portable qui rend la communication entre les machines perceptible et tangible. Ce dispositif agit comme un médiateur entre l'utilisateur et les machines qui l'entourent. À travers son écran, il indique les relations qu'il entretient avec son environnement personnel.


Composants

Dans ce projet nous utilisions les composants suivants :


Assemblage

  1. brancher le Feather M0 à l'écran
  2. brancher le GPS au Feather M0 en passant par les pins de l'écran
  3. brancher la batterie au Feather M0

1 - L'écran epaper est un wing - une aile en français -, elle a été conçu comme un shield - un bouclier en français - du jardon électronique qui veut que c'est un composant électronique conçu pour s'accrocher directement sur un autre dans notre cas le Feather M0. Vous pouvez donc directement brancher votre Feather M0 au dos de votre l'écran e-paper.

2 - Brancher les câble dans le port de l'écran situées au même niveau que votre carte

(GPS - câble - Fether M0)

  • 3.3V - long cable rouge - 3V
  • GND - long cable noir - GND
  • TX - câble jaune - RX
  • RX - petit câble rouge - TX

Les couleurs de câbles sur le schéma ne sont pas corrects, référez vous à la descritpion ci-dessus

Gps wiring

(image credits : All rights reserved by lady ada)

3 - La batterie est munie d'un connecteur JST 2.0 directemeent branchable au Feather M0

Il n'y qu'un seul sens dans lequel le sens JST peut se brancher, pas de risque de se tromper.


Setup

Commencer il vous faut installer l'application Arduino qui vous permettra d'écrire du code et de l'envoyer à notre micro controleur. Si vous avez déjà Arduino IDE installé, notez que toute version à partir de la 1.8.0 fonctioneron pour ce projet.

Une fois installée, en l'ouvrant l'application arduino vous devriez voir une fenêtre qui ressemble à ça.

(si vous êtes sous MacOS la fenêtre sera légerement différente, le menu se trouvera en dehors de la fenêtre dans la barre de navigation mac habituelle) Arduino IDE

Avant de pouvoir vraiment commencer il nous faut encore installer les Boards Manager qui nous permettra de communiquer à le model spécifique de notre micro controleur. Cela se fait en 2 étapes : (EN documentation here)

1 - Ajouter les Boards Mananger nécessaire pour utiliser le micro controller M0

Rendez vous dans les préférences de l'IDE Arduino. --> Fichier > Préférences

Copier l'URL suivante https://adafruit.github.io/arduino-board-index/package_adafruit_index.json sous le paramettre Url de gestionnaire des cartes supplémetnaries

gestionnaire de carte

2 - Installer les Boards

Rendez vous dans les Gestionnaire de carte. --> Outils > Type de carte: > Gestionnaire de Carte

Installez les paquets suivants :

  • Adafruit AVR Boards
  • Adafruit SAMD Boards

Pour cela taper, un à un, le nom de packets dans la barre de recherche et cliquer sur le boutton installez de l'élément correspondant.

Board manager


ATTENTION

La paquet Adafruit SAMD Boards est parfois capricieux est peu nécessité plusieurs tentative avant de correctement s'installer.

Vous pouvez vérifier que la paquet est bien installé si à côté de son apparêt le label INSTALLED

INSTALLED

Pour les utilisateur.trice.x.s de Windows 7 & 8, il vous faudra installer un driver supplémetaire


Premier pats

Il est mainteant temps de tester que tout fonctionne ! Branchez un câble micro usb à votre micrôcontrôleur et l'autre extermité à votre ordinateur. Si la carte est correctement branchée elle devrait normalement allumer une led, le plus souvent une led rouge juste à côté du port USB.

Si aucune led n'est allumé sur la carte, c'est que le câble USB n'est pas adéquat ou que le port USB de votre ordinateur a est defectueux. Changer USB, changez de port USB est reassayer.

1 - Sélectionner la carte du modèle Feather M0

Outils > Type de carte: > Adafruit SAMD(32.bits... > Adafruit Feather M0

(si le sous-menu Adafruit SAMD(32.bits...) n'apparait pas, c'est que le paquet Adafruit SAMD Boards n'a été correction installé --> revenez au chapitre #Setup)

Carte Feather M0

2 - Sélectionner le bon port USB

Outils > Port > ...(Adafruit Feather M0) Selon votre système d'exploitation le numéro de port affiché avant Adafruit Feather M0

  • Windows : le plus souvent COM ex. COM7 (Adafruit Feather M0), COM14...
  • MacOs : /dev/cu ou /dev/tty.usbserail-xxxx ex. /dev/tty.usbserail-1234 /dev/tty.usbserail-xxxx
  • MacOs + usb Hub : /dev/cu.usbmodem

Si aucun des ports de la liste du menu Outils > Port ne contient Adafruit Feather M0 c'est soit que l'un des paquets Adafruit AVR Boards ou Adafruit SAMD Boards est mal installé, soit que le câble USB n'est pas adapté.

Sélectionner le port comprenant Adafruit Feather M0

Port selection

Il est maintenant temps de téléverser un premier code sur le Feather M0 !

Ouvrez le fichier .ino de l'exemple Blink

// la fonction setup s'exécute une fois lorsque vous appuyez sur reset ou allumez la carte
void setup() {
  // initialiser la broche numero 13 comme une sortie.
  pinMode(13, OUTPUT);
}

// la fonction loop se lance  à la fin se fonction setup et se répète à l'infini
void loop() {
  digitalWrite(13, HIGH);   // allume la LED (HIGH)
  delay(1000);              // attend 1 seconde
  digitalWrite(13, LOW);    // éteind la LED en mettant la tension basse(LOW)
  delay(1000);              // attend 1 seconde
}

Ce code fait clignoter la LED rouge se trouvant juste à côté du porc USB.

Pour téléverser le code au Feather M0 il suffis de sélectionner le bon type de carte et le port :

  • Outils > Type de carte: > Adafruit SAMD(32.bits... > Adafruit Feather M0
  • Outils > Port > ...(Adafruit Feather M0)
  • Appuyer sur le symbole → (flèche vert la droite) situé en haut à gauche de l'IDE Arduino

Uplaod

Si tout se passe bien

  • compilation du croquis
  • téléversement ...
  • téleversement terminé

Si vous êtes passé par ces trois étapes, la LED rouge à côté du porc USB devrait clignoter.

Si ce n'est pas le cas essayer de mettre votre Feather M0 en bootloader manuel. Pour cela, cliquez 2 fois (double clickez) sur le button RESET de votre Feather M0. Le bouton RESET est le petit button noir qui se trouve juste à côté du port USB du Feather M0.

reset

image origignal by lady ada published under this LICENSE

Si le Feather est dans le mode attendu, la LED rouge située à côté du port USB du Feather M0 devrait pulser. SI la LED ne pulse pas, double clickez à nouveau

Vous pouvez maintenant sélectionner le nouveau : Outils > Port > ...(Adafruit Feather M0) puis téléverser le code.


De manière général, si un code ne parvient pas être téléversé c'est qu'un de ces paramettre n'est pas correct.

  • Type de Carte
  • Port USB
  • le Feather M0 n'est pas en mode bootloader

Vérifier ces trois paramettre et effectuer les actions suivantes

  • Sélectionner le bon type de carte : Outils > Type de carte: > Adafruit SAMD(32.bits... > Adafruit Feather M0
  • double clicker sur le button reset de du Feather M0 pour le mettre en mode bottloader
  • Sélectionner le bon port USB : Outils > Port > ...(Adafruit Feather M0)
  • Appuyer sur le symbole → (flèche vert la droite) situé en haut à gauche de l'IDE Arduino

Installation de bibliothèques

Les bibliothèques sont des bouts codes réalisés par la communauté arduino ou des fabriquants de composants électronique. Les bibliotèque permette notamment de communiquer plus facilement avec des compsoants et utilisant des fonction simple qui nous "prémache" le travail.

Dans notre cas, nous aurons besoin de biblothèques pour :

  • afficher du contenu sur l'écran e-paper
  • récupérer l'heure et la position géographique
  • scanner les réseaux wifi
  • communiquer avec la database

Pour télécharger une bibliothèque rendu vous dans le gestionnaire de bibliothèque

Outils > Gérer les bibliothèques

De la même manière que les pacquets, tapez le nom de la bibliothèque dans la bar de rechercher et cliquez sur le bouton Installer


Tester les composants

Télécharger les biblothèques listé ci-dessous

  • Pour l'utilisation do module GPS
    • Adafruit GPS Library
  • Pour utiliser le module Wifi integré au Feather M0
    • WiFi101
  • Pour communiquer avec la base de donnée Firebase
    • Firebase Arduino based on WiFi101
  • Pour utiliser l'écran e-paper
    • Adafruit GFX Library
    • Adafruit ImageReader Library

Ormi le téléchargement des bibliothèques, l'étape de tester chacun des composants n'est pas obligatoire mais peu vous permettre de comprendre comment chaque composants fonctionne individuellement.

Si vous souhaiter finalisé le module Wibot au plus vite e, passez au chapitre suivant : #Connexion à la base de donnée

Pour tester chacun des composants utiliser les exemples dans le dossier electronic/test_component

Pour téléverser les différents exemples à votre Feather M0, référez vous à la fin du chapitre #Premier pats.

La plupart des exemples utilise avec la fonction de debug Serial.print() qui permet d'afficher des informations dans le Moniteur série. Pour y accéder, une fois le téléversement terminé, cliqué sur le symbole de ⚲ loupe situé en haut à droite de l'IDE arduino.

moniteur_serie_bouton

Si l'un des exemple ne fonctionne pas, assurer vous d'avoir bien installé toutes les bibliothèques requises et reessayer de téléverser le code.


Connexion à la base de donnée

Outils > WiFi101 / WiFiNINA Firmware Updater

  • Sélectionner le port contenant Adafruit Feather M0
  • clicker le bouton Test connection
  • (si aucun message d'erreur n'est apparu) - sous Update firmware choisissez le premire élément contenant WINC1501 Model B ... puis clikcez sur le bouton Update Firmware

Dernière étape, la plus importante dans ce process, toujours dans la fenêtre WiFi101 / WiFiNINA Firmware/Certficates Updater

  • Update certificat SSL (EN documentation + image)
  • Dans la section 3. Update SSL root certificates clickez add domain
  • copiez cette URL : invisible-network-default-rtdb.europe-west1.firebasedatabase.app
  • clickez sur le bouton Upload Certificates

Maintenant le certificat installé, vous devriez pouvoir vous connecter à la base de données.

  • Ouvrer le fichier de l'exemple connexion_to_Database
  • Changer les paramètres correspondant à votre réseau
  #define WIFI_SSID "Paul’s iPhone" // le nom de votre réseau wifi
  #define WIFI_PASSWORD "noproblemno" // le mot de passse de votre réseau
  • Changer le USER_NAME pour un nom qui vous sier (éviter les espace et les caractère spéciaux)
  String USER_NAME = "test"; //le pseudo que vous avez chois sans espace ni caractère spécial
  • Téléverser le code
  • Ouvrez le Moniteur Série

Si vous ne parvenez pas à vous connecter à votre réseau wifi, vérifier que le WIFI_SSID soit correctement orthographier. Dans le cas de présence de caractère spéciaux je vous conseil d'utiliser l'exemple wifi_scan-network pour scanner les wifi alentour et copier le nom de votre wifi affiché dans le Moniteur série.

Si tout fonctionne, le Moninteur série imprime le message test a été envoyé

Si ce n'est pas le cas, le Moniteur série devraient afficher CONNECTION REFUSED, vérifier que le certificat SSL est bien installé.


Finalisation de wibot

Ouvrez le fichier /electronic/wibot_mapping_festival

  • Changer les paramettre corespondant à votre réseau WIFI_SSID et WIFI_PASSWORD
  • Changer le USER_NAME pour un nom qui vous sier (éviter les espace et les caractère spéciaux)
  #define WIFI_SSID "Paul’s iPhone" // le nom de votre réseau wifi
  #define WIFI_PASSWORD "noproblemno" // le mot de passse de votre réseau
  ...
  ...
  ...
  String USER_NAME = "paul"; //le pseudo que vous avez chois sans espace ni caractère spécial
  • Téléverser le code
  • Vérifier dans la Moniteur série qu'il n'y ai pas de CONNECTION REFUSED

Si tout semble correctement fonctionner, vous pouvez débrancher le câble USB de votre Feather M0 et continuer à l'alimenter via la batterie 3.7v.

Votre Wibot est maintenant près à explorer les réseaux invisibles, bravo !

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages