42 lines
1.9 KiB
Markdown
42 lines
1.9 KiB
Markdown
# Project_SylDa
|
|
|
|
ESP32-S3-PICO-1-N8R8 (Atom S3R Voice), 2 relais, 2 touch sensors (JR223B), BLE, Android app USB OTG.
|
|
|
|
## Hardware
|
|
|
|
- **Board:** Atom S3R Voice (ESP32-S3-PICO-1-N8R8), 16MB OPI flash
|
|
- **Pinnen:** G1=RELAY1, G2=RELAY2, G8+pullup=TOUCH1, G6+pullup=TOUCH2, G41=BUTTON (active low), G46=LED
|
|
- **Touch:** DC3-24V Capacitieve Touch Schakelaar JR223B (GEEN TTP223). Minder C op punt A = gevoeliger = meer false triggers.
|
|
- **BLE:** "AtomS3R-Relay", service `4fafc201-1fb5-459e-8fcc-c5c9c331914b`
|
|
- **BLE cmds:** 0x00=relay1 OFF, 0x01=ON, 0x02=relay2 ON, 0x03=OFF, HMAC_PKT_SIZE=37 (1 cmd + 4 seq + 32 hmac)
|
|
- **NVS:** namespace `hmac`, key `key` — HMAC key 32 bytes, NVS op 0x9000-0xDFFF (partitie tabel)
|
|
|
|
## Workspace
|
|
|
|
`/home/eddy/src/Project_SylDa/` — S3R firmware + Android app
|
|
|
|
## Firmware — `src/main.cpp`
|
|
|
|
- PlatformIO, `platform = espressif32@6.7.0`, board `esp32-s3-devkitc-1`
|
|
- CDC USB serial (`ARDUINO_USB_CDC_ON_BOOT=1`), QIO OPI flash
|
|
- Upload laptop: `pio run -t upload`, port `/dev/ttyACM0`, 115200 baud
|
|
- NVS: namespace "hmac", key "key" (32 bytes HMAC)
|
|
- BLE advertising "AtomS3R-Relay", HMAC-verified relay commands
|
|
|
|
## Android app — `android/`
|
|
|
|
- CDC key exchange (geen FTDI), 2 relay knoppen (touch-to-hold), byte commands
|
|
- Key exchange: SettingsActivity via USB CDC (`UsbSerialTransport`)
|
|
- Flash: EspFlasher via USB CDC, `eraseFlash()` VERWIJDERD (NVS blijft behouden)
|
|
- Partitie layout flash: bootloader 0x0, partitions 0x8000, boot_app0 0xE000, firmware 0x10000
|
|
- BLE scan: 30s timeout, auto-retry 3x, reconnect na disconnect
|
|
- `deviceId` = UUID van ESP, `hmacKey` = HMAC key uit key exchange
|
|
- Bestanden: `MainActivity.kt`, `SettingsActivity.kt`, `EspFlasher.kt`, `UsbSerialTransport.kt`, `PrefsHelper.kt`, `UsbUtils.kt`
|
|
- Assets: `firmware/bootloader.bin`, `partitions.bin`, `boot_app0.bin`, `firmware.bin`
|
|
|
|
## ADB — telefoon
|
|
|
|
```
|
|
adb connect 192.168.1.43:5555
|
|
adb -s 192.168.1.43:5555 install -r app/build/outputs/apk/debug/app-debug.apk
|
|
```
|