Commit Graph

11 Commits

Author SHA1 Message Date
dan 218b7cdb27 ble: encrypt wifi password
BLE "just works" pairing dos not protect against active MITM,
so we need to handle this ourselves. Use nacl/libsodium
crypto_box to encrypt and authenticate the wifi password

this also adds a step to the interaction between client and device:
after writing the password, we now write a "true" to the "connecting"
characteristic to kick off the actual conection attempt.
2026-02-17 12:37:59 +00:00
dan 4be5521504 ble: remove unused connection_state attribute 2026-02-15 17:56:18 +00:00
dan 671c2a382c reset after configuring wifi, and if if doesn't work 2026-02-04 18:42:49 +00:00
dan cee50cd4a8 delete dead commented cde 2026-02-04 17:54:25 +00:00
dan 601c7391a3 write selected wifi credentials to flash nvs
todo
- reboot after writing
- delete bad networks after failing to connect
2026-02-04 00:37:24 +00:00
dan 2cfe436ac9 scan wireless networks & publish over ble
does not actually connect yet
2026-02-02 21:19:39 +00:00
dan 6c4d64ce0e demonstrate reading/writing a characteristic 2026-02-01 16:45:53 +00:00
dan f25a539084 log when current_network_index is changed 2026-02-01 16:43:45 +00:00
dan a729199926 PoC BLE support
It advertises, and it enumerates some characteristics. None of them
are hooked up to anthing yet
2026-02-01 15:27:30 +00:00
dan cdf7209c21 rename project 2026-01-11 20:20:00 +00:00
dan ae0393cd48 rearrange as workspace of crates
I would rather like to be able to write tests for the complicated
bits, but using "cargo test" with the esp32 tolchain/libraries
is beyond my skill level if it's even possible.  Hence we now have
an ecu-portable crate for stuff that can be built using plain old Rust
(e.g. x86_64 with std)  and an ecu-esp32 crate for the rest of it
2025-12-23 16:52:24 +00:00