Merged CAD support from original FW#10
Conversation
| file.write((uint8_t *)&_prefs->rx_boosted_gain, sizeof(_prefs->rx_boosted_gain)); // 291 | ||
| file.write((uint8_t *)&_prefs->fan_mode, sizeof(_prefs->fan_mode)); // 292 | ||
| file.write((uint8_t *)&_prefs->fan_timeout_secs, sizeof(_prefs->fan_timeout_secs)); // 293 | ||
| file.write((uint8_t *)&_prefs->cad_enabled, sizeof(_prefs->cad_enabled)); // 294 |
There was a problem hiding this comment.
Это неверно. Во-первых fan_timeout_secs - это два байта, поэтому следующий за 293 идет 295 (байт по счету).
Во-вторых, вы таким образом сдвинули на 1 байт все настройки flood_max_* и fem. Те, кто будут обновляться с предыдущей версии прошивки - получают мусор, как в самом cad_enabled, так и в настройках далее.
There was a problem hiding this comment.
Новые параметры правильно добавлять в конец с соблюдением нумерации байт в комментарии согласно размерам читаемых/записываемых полей.
|
Всеравно переменные полетели по п*зде. Так что так себе. Надо либо вырезать fan от tbeam вовсе либо лучше продумывать
|
|
@zhdanow5a Моя ошибка. Запись-то я поправил, а чтение нет. Исправлю. |
|
@zhdanow5a Поправил. Теперь должно быть всё правильно. Можете проверить? |
|
Для чистоты эксперимента - нужно прошить обратно текущую релизную версию моей прошивки. Проверить релевантные настройки, а потом уже шить текущую запатченную версию. По идее больше проблем быть не должно. Проблемы конечно будут при обновлении с официальной прошивки, но тут никуда не деться. Либо совместимость с официальной, но тогда проблемы у всех при обновлениях с предыдущих версий, либо совместимость с предыдущими версиями. |
В оригинальной прошивке MeshCore в ветку DEV уже смержили возможность использования аппаратного детектора активности на канале (channel activity detection, CAD), обсуждение тут: meshcore-dev/MeshCore#1727
Предлагаю PR принять и здесь.