ESP32: добавить USB-диагностику регистрации Solana

This commit is contained in:
AidarKC
2026-06-13 00:01:57 +04:00
parent 21030b1d51
commit 436e1f0c53
3 changed files with 293 additions and 31 deletions
@@ -0,0 +1,45 @@
# ESP32 USB-диагностика регистрации Solana
- статус: `pending`
## Что сделано
- В основной скетч `shine_homeserver_main` добавено сохранение последней диагностики регистрации Solana в `Preferences`.
- Добавлены USB-команды через `Serial`:
- `last_error`
- `last_diag`
- `reg_diag`
- `clear_error`
- `clear_diag`
- `help`
- Перед отправкой `create_user_pda` добавлена RPC-проверка `users_economy_config_pda`.
- Стартовый `paid_limit_bytes` в подписываемой записи теперь берётся из on-chain `users_economy_config`, а не из хардкода.
## Что проверять
1. Подключить устройство по USB.
2. Открыть последовательный порт `115200`.
3. Отправить команду `last_error`.
4. Убедиться, что устройство печатает сохранённую диагностику между маркерами:
- `LAST_REGISTER_DIAG_BEGIN`
- `LAST_REGISTER_DIAG_END`
5. Запустить регистрацию с устройства и дождаться ошибки или успеха.
6. Снова отправить `last_error`.
7. Проверить, что в диагностике есть:
- `status`
- `summary`
- `rpc`
- `user_pda`
- `users_economy_config_pda`
- `inflow_vault_pda`
- `root_pub`
- `blockchain_pub`
- `device_pub`
8. При ошибке `0x3` проверить, что текст стал конкретнее и помогает понять, какая PDA или RPC-конфигурация не совпала.
## Ожидаемый результат
- Последняя ошибка регистрации читается по USB без просмотра экрана.
- После неудачной регистрации на устройстве остаётся подробная диагностическая запись.
- Если `users_economy_config_pda` отсутствует или принадлежит не той программе, это явно видно до отправки транзакции.