
Comment commander la LED interne en toute simplicité sur un Raspberry Pi Pico W ?
Suivez le code ci-après et envoyer le via Thonny par exemple :
import machine
import time
from umqtt.simple import MQTTClient
import network
# Configuration WiFi
ssid = "nom_du_reseau_wifi"
password = "mot_de_passe_wifi"
station = network.WLAN(network.STA_IF)
station.active(True)
station.connect(ssid, password)
while not station.isconnected():
pass
print("Connexion Wi-Fi établie")
# Configuration client MQTT
mqtt_server = "adresse_serveur_mqtt"
mqtt_port = 1883
mqtt_user = "login_mqtt"
mqtt_password = "mot_de_passe_mqtt"
mqtt_topic = b"/maison/led"
client_id = "wemosd1"
client = MQTTClient(client_id, mqtt_server, mqtt_port, mqtt_user, mqtt_password)
# Set up LED pin
led = machine.Pin("LED", machine.Pin.OUT)
# Define MQTT callback function
def mqtt_callback(topic, msg):
if topic == mqtt_topic:
if msg == b"on":
led.value(1)
print("LED allumée")
elif msg == b"off":
led.value(0)
print("LED éteinte")
# Subscribe to MQTT topic
client.set_callback(mqtt_callback)
client.connect()
client.subscribe(mqtt_topic)
# Main loop
while True:
client.check_msg()
time.sleep(1)
Vous allez pouvoir maintenant tester votre nouveau script en micro-python, par exemple depuis un terminal sous Linux, et allumer la LED interne :
mosquitto_pub -h mon_serveur_mqtt -u mon_login -P mon_mon_de_passe -t "/maison/led" -m "on"
Simple non ? Ce script a été généré à la base par ChatGPT, mais a par la suite été modifié pour corriger quelques erreurs.
