4.9 KiB
TASKS.md — Открытые задачи и планы
Обновлено: 2026-05-24
🔴 Критические (блокируют запуск)
1. Заменить модуль MAX3232 (HW-044)
Статус: Выявлена неисправность 2026-05-24
Проблема: Модуль HW-044 бракованный — не преобразует RS232 в TTL. На TXD пине постоянное напряжение 3.25В, не меняется при передаче данных с терминала.
Что проверено:
- RS232 сигнал с терминала A9 есть: -4.46В на DB9 пин 2 ✅
- Питание MAX3232: 3.3В ✅
- Подключение правильное: TXD→GPIO16, RXD→GPIO17 ✅
- При замере TXD модуля при нагруженной платформе: постоянное 3.25В ❌ (должно меняться 0↔3.3В)
Что нужно: Заказать новый модуль MAX3232 (SP3232 или HW-044). Взять 2-3 штуки про запас.
Проверка нового модуля: Подключить, встать на платформу, замерить TXD пин — должно прыгать ~1.5-2В на тестере.
2. Провести on-site тест после замены MAX3232
Статус: Ожидает выполнения задачи #1
Что проверить:
- Напряжение на TXD модуля меняется при нагрузке на платформе
- Появление RAW байтов
[RAW] 0x02в Serial Monitor - Появление строк
[SCALE]с весом - Публикация MQTT событий → приём на сервере
- Отображение на дашборде https://scales.zeroday.su
✅ Выполнено (2026-05-24)
- ESP32 инициализируется корректно (RTC, ETH, UART, MQTT)
- W5500 Ethernet получает IP по DHCP (192.168.20.252)
- MQTT подключается к брокеру 77.222.43.248:1884 ✅
- Дашборд https://scales.zeroday.su работает ✅
- Настройки терминала A9: bt=4 (9600 baud), tF=0 (непрерывная передача) ✅
- RS232 сигнал с терминала подтверждён тестером (-4.46В на DB9 пин 2) ✅
- Кабель DB15→DB9 проверен, распайка правильная ✅
🟡 Важные (следующая итерация)
3. Переключить MQTT с plain на MQTTS (порт 8883)
Статус: Готово на стороне сервера, не реализовано в прошивке
Что сделано: nginx stream proxy на 8883 настроен и работает
Что нужно: Переписать прошивку ESP32 под MQTTS после подтверждения RS232-потока
4. Персистентность данных в PostgreSQL
Статус: PostgreSQL установлен, не подключён
Сейчас: История хранится in-memory (100 событий), теряется при рестарте
Что нужно:
- Создать таблицу
weighing_events - Подключить
pgnpm модуль в server.js - Писать каждое событие в БД
- API
/api/historyотдаёт из БД с пагинацией
5. Распознавание номерных знаков
Статус: Зарезервировано в JSON ("plate": null)
Пока: Поле зарезервировано, не реализовано
🟢 Улучшения (будущее)
6. Авторизация на дашборде
Сейчас https://scales.zeroday.su открыт без авторизации. Добавить basic auth или JWT.
7. Алерты при ошибках связи
Уведомление (Telegram, email) если ESP32 отключился от MQTT > X минут.
8. Экспорт истории
Кнопка "Скачать CSV" на дашборде для выгрузки истории взвешиваний.
9. Watchdog и автовосстановление в прошивке
Добавить hardware watchdog и логику reconnect при обрыве Ethernet/MQTT.
10. OTA обновление прошивки
Механизм обновления прошивки ESP32 через сеть.
🐛 Известные баги
| # | Описание | Приоритет |
|---|---|---|
| B1 | DS3231 нестабильно определяется при наличии ETH | Низкий |
| B2 | received frame was truncated в логах при старте W5500 |
Некритично |
| B3 | При Reset ESP32 через кнопку EN — Serial Monitor теряет начало лога | Cosmetic |