Skip to content
reichart edited this page Jun 17, 2026 · 36 revisions

prologue

Wiki de la réparation exemples-de-montages avec les ateliers et projets réalisés au repair café festisol animations et projets réalisés pendant FESTISOL et à la MJC ; CROUS-micro-python animations et projets commencés au CROUS et poursuivis pendant les ateliers numériques ; piano une nouvelle passion réalisée à coup de marteau visio et communication ; jeux réparations, récréations mathématiques, création de nouveaux jeux developpement-voiture robot, intelligence artificielle ; raspberry-pico et micro-python ; Repair Café d’Orsay Blog

Pour les utilisateurs de Linux, souvent le module esp est inaccessible : utiliser usermod ou chmod comme pour une installation arduino ; pour le module raspberry pico: il rentre en mode clé USB ( OTG ) très facilement

    sudo usermod -a -G dialout ${USER}

Table of Contents

Pas toujours facile de trouver la bonne documentation sur les contrôleurs. Je recommande de lire les cours CROUS ; j’ai remis quelques explications sommaires : comment trouver l’emplacement d’une LED ? Voici des photos et des exemples

documentation constructeur esp32

tuto Exemples Python pour esp32sxx

La documentation constructeur du contrôleur est complexe pour débuter ; des fabricants de kits ont des cours très complets

pour les interfaces

cours ICI

Affichage sur écran OLED pour esp32

C3

Une télécommande pour commander un drone

SCL(fil vert) et SDA(fil jaune) sont reliés aux broches 3 et 4

Il est possible de réaliser le montage sans fil en utilisant les deux broches 5 et 6 pour alimenter l'afficheur

   gnd = Pin(5, Pin.OUT)
   plus = Pin(6, Pin.OUT)
   plus.value(1)
   gnd.value(0)
   time.sleep(0.1)
   i2c = I2C(0, sda=Pin(8), scl=Pin(7))

https://github.com/arnaudrco/CROUS-micro-python/blob/main/oled.py

https://github.com/arnaudrco/CROUS-micro-python/blob/main/ssd1306.py

S3

brochage : cette fois, aucun fil n’est nécessaire pour la version zéro !

code pour esp-now

devinette sur quelle broche est la LED néopixel : pin 21

code

La version "wroom" est encore différente ; RGB doit être soudé pour allumer la LED ; devinette sur quelle broche est la LED néopixel : pin 48

Pour un afficheur SPI

spi = SPI(1, baudrate=40000000, sck=Pin(1), mosi=Pin(2), miso=None) reset = Pin(3, Pin.OUT) dc = Pin(4, Pin.OUT) cs = Pin(5, Pin.OUT) bl = Pin(6, Pin.OUT)

Développement micropython

Pas facile à utiliser Python ? Gilles a rédiger un guide ; suivez la fiche sur le développement micropython pour le contrôleur de vol esp-drone avec installation sur esp32 ici

Premiers essais

Pas facile de commencer ; souvent une erreur de port et rien ne marche ; c’est simple sous Linux avec Thonny

voir aussi https://github.com/anumby-source/raspberry-pico/wiki

sudo apt-get install thonny
Pensez à ouvrir les ports de communication
sudo chmod 777 /dev/tty*

cours électricité

Pour commencer je recommande de le cours-d’électricité ICI

Le repair café a fait des séances de réparation au CROUS pendant le confinement en rencontrant beaucoup d’étudiants désemparés. Certains avaient des projets numériques. Il existe des kits très bien faits dans le commerce mais souvent peu accessibles. Comment faire simple et avec peu de moyens avec des modules esp à 2 euros ou raspberry pico ?

L’univers Arduino est vaste ; découvrez des montages en quelques clics pour faire des jouets avec des arduino, les nouveaux modules raspberry pico ou avec du wifi les petits esp CROUS-micro-python

micro-python

Pour faire clignoter une LED sur un esp32C3

    from machine import Pin
    import time
    led=Pin(8,Pin.OUT)   
    while True:
        time.sleep(1)
        led.value(0)
        time.sleep(1)
        led.value(1)

Gilles donne un cours de micro-python en utilisant un mini esp32 C3

Tuto Micropython ICI avec de nombreux exemples : allumer la LED interne ( pin 8 ), lire le bouton BOOT ( pin 9 ), créer des interruptions, activer un servo moteur …

Ultrason

Capteur ultrason sur esp8266 ici

code sur esp8266 ici

projets

Mettez un python dans un esp : le module peut être programmé en micro-python et elle répond en ouvrant une console arduino. Les environnements de développement sont très sympathiques en Python : Thonny, Mu ou uPyCraft.

avec Windows

Avec Windows, j’aime bien utiliser Thonny

Amusez vous à installer uPyCraft

avec Linux

Amusez vous à installer Mu. Il n’y a pas de bouton d’arrêt d’urgence comme pour uPyCraft mais il est très pratique pour les débutants. Appuyez sur tidy image pour une jolie mise en forme ou vérifierimage !

Choisissez le mode ESP micropython

cliquez sur lancer image

installez Micropython suivant la dernière version esp8266-20210902-v1.xx.bin la version 17 est disponible ici. Version pour esp32 ici

esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20210902-v1.17.bin
L’installation échoue si le port USB est déjà utilisé par un autre programme comme une console arduino ouverte par ailleurs. Si l’installation est faite en mode portable, je dois vérifier que le groupe dialout est créé , et déclarer le port USB est ouvert en écriture si une erreur apparaît sur la lecture du port se terminant par ttyxxx ou ACMxxx. Mais heureusement cette installation est faite en installant complètement l’interface de développement (IDE) arduino
sudo usermod -a -G dialout <mon-nom-utilisateur>
sudo chmod a+rw /dev/ttyACM0
Le logiciel crée automatiquement un programme boot.py qui fait clignoter la LED interne

Avec un esp8266, la LED interne est connectée sur GPIO 2 : ce programme allume la LED

led=Pin(2,Pin.OUT)   

led.value(1)

code en python ici

Pour un esp32, amusez vous à utiliser Thonny pour enregistrer micropython en ouvrant la boîte de dialogue en bas

Maintenant, vous pouvez allumer la LED bleue de cet esp !

faire tourner un servo moteur avec une ligne de commande !

Ateliers du CROUS pour des montages simples en python (pico) ou en C (esp C3) avec des vidéos ici

Le servo-moteur est commandé en python

servo.duty(122) # butée haute 180°
essayer une boucle avec un angle négatif servo.duty(10) : le servo va faire des tours complets !

code en python ici

faire clignoter une led multicolore

Montage d’une led multicolore avec un nouveau module esp32-c3

Site web programmé en Python

Amusez vous à allumer une lampe avec une interface web

code en python ici

La page web est écrite en langage lisible sur n’importe que navigateur en HMTL. Cela parait compliqué. Le HTML (HyperText Markup Language) est un langage utilisant des balises. Ici, nous ouvrons une page par la balise <html> et nous la fermons par </html>. Il permet de créer et structurer des pages Web. Par définition, toutes les pages Web utilisent le format HTML.

html = &quot;&quot;&quot;&lt;html&gt;&lt;head&gt; &lt;title&gt;ESP Web Server&lt;/title&gt; &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;
&lt;link rel=&quot;icon&quot; href=&quot;data:,&quot;&gt; &lt;style&gt;html{font-family: Helvetica; display:inline-block; margin: 0px auto; text-align: center;}
h1{color: #0F3376; padding: 2vh;}p{font-size: 1.5rem;}.button{display: inline-block; background-color: #e7bd3b; border: none; 
border-radius: 4px; color: white; padding: 16px 40px; text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}
.button2{background-color: #4286f4;}&lt;/style&gt;&lt;/head&gt;&lt;body&gt; &lt;h1&gt;ESP Web Server&lt;/h1&gt; 
&lt;p&gt;GPIO state: &lt;strong&gt;&quot;&quot;&quot; + gpio_state + &quot;&quot;&quot;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/?led=on&quot;&gt;&lt;button class=&quot;button&quot;&gt;ON&lt;/button&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;/?led=off&quot;&gt;&lt;button class=&quot;button button2&quot;&gt;OFF&lt;/button&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;&quot;&quot;&quot;

Répéteur WiFi programmé en Python

Répéteur WiFi programmé en Python est ici

Pico W600

Exemple de montage d’un W600

https://github.com/arnaudrco/CROUS-micro-python/wiki/Pico-W600

Cours d'électricité :

cours d'Electricité de Pascal pour l' association "Auxilia"

Pages connexes :

  1. Ateliers du CROUS
  2. Tableau de correspondance GPIO DATA
  3. Raspberry pico
  4. développement IA en python
  5. Développements de code anumby
  6. Serveur Web en micropython
  7. Répéteur WiFi
  8. Pico W600
  9. Capteurs
  10. Afficheurs
  11. Actionneurs
  12. Instruments
  13. Processeur
  14. Visio
  15. Video
aller plus loin avec des Exemples de montages faciles et le cours micro python de Chris ici

Mots clés

A Actionneurs Afficheurs Animations2021 Animations2022 Animations2023 Animations2024 Archives B Boite à outils Boomerang C Capteurs CLIMAT code anumby CROUS cymbales électroniques D Développements Domotique / Énergie / Objets connectés E électricité Electroménager Eolienne Escape Game F Festisol Festisol G Gometz le Chatel GPIO I Instruments Instruments IR jardin solaire J Jeux informatiques anciens Jouets Jouets pour petit Jouets amusants L Logiciels Low-Tech LUDOMAT ludothèque M Machine à café Math micropython Mini-Austin-avec-batterie-plomb Mode-d’emploi Montages N nvme O Olympiade Organigramme P PC Photovoltaïque Pico W600 Piscine Processeur Proto python R Raspberry pico Répéteur WiFi Robot éclairé Festisol 2021 Robot tournesol Robot Rust S Service Jeunesse Simulateur Smartphone Sonnette programmable Status Stockage T télécommande IR pour tractopelle Télécommandes diverses Tiers Lieu Tournesol Transmission V Video Visio Z Zéro déchet

Clone this wiki locally