Рабочий HTTP веб-сервер для управления 8 реле через Ethernet.
- Веб-интерфейс на http://192.168.1.100
- 8 реле (GPIO 17-24) - включение/выключение через кнопки
- DHT22 датчик (GPIO 42) - температура и влажность
- Автообновление страницы каждые 10 секунд
- Кнопки ALL ON / ALL OFF для управления всеми реле
- Плата: Waveshare RP2350-POE-ETH-8DI-8RO (или совместимая с RP2350B)
- Прошивка: WeAct RP2350B MicroPython v1.27.0 (файл
micropython-rp2350b-v1.27.0.uf2) - Инструмент: mpremote (
pip install mpremote)
# Зажать BOOTSEL, подключить USB
# Скопировать micropython-rp2350b-v1.27.0.uf2 на диск RPI-RP2cd w5500_lib
mpremote cp w5500_simple.py :w5500_simple.py
mpremote cp webserver_simple.py :main.py
mpremote resetping 192.168.1.100
# Открыть http://192.168.1.100 в браузереw5500_lib/
├── w5500_simple.py # Драйвер W5500 (чистый Python)
├── webserver_simple.py # HTTP веб-сервер (главный файл)
├── dht_quick.py # Тест DHT22 датчика
└── gpio_scan.py # Сканирование GPIO
В файле webserver_simple.py:
# Сеть
IP = [192, 168, 1, 100]
GW = [192, 168, 1, 1]
SN = [255, 255, 255, 0]
# Реле (GPIO 17-24)
RELAY_PINS = [17, 18, 19, 20, 21, 22, 23, 24]
# DHT22 датчик
DHT_PIN = 42| Компонент | GPIO |
|---|---|
| W5500 SCK | 34 |
| W5500 MOSI | 35 |
| W5500 MISO | 36 |
| W5500 CS | 33 |
| W5500 RST | 25 |
| Реле 1-8 | 17-24 |
| DHT22 | 42 |
- Чистый Python драйвер W5500 - не зависит от встроенного network модуля
- Chunked sending - большие ответы разбиваются на части (TX буфер 2KB)
- Content-Length header - браузер корректно показывает загрузку
- SoftSPI - работает на любых GPIO (34-36 для RP2350B)
Стандартный MicroPython для RP2350 не поддерживает GPIO 34-47 (только 0-29). WeAct прошивка для RP2350B поддерживает все 48 GPIO, но не имеет встроенного драйвера WIZNET5K. Поэтому используется чистый Python драйвер через SoftSPI.
- Проверить подключение датчика к GPIO 42
- Переподключить питание датчика
- Убедиться что есть pull-up резистор (обычно встроен в модуль)
- Проверить Ethernet кабель
ping 192.168.1.100- Убедиться что плата и ПК в одной подсети
- Проверить что GPIO 17-24 не заняты другими устройствами
MIT