Embassy commit hash: 6627824c02f5efc092c1a1fd77914fdde9d15813
- BME280 (temperature, humidity, pressure)
- LIS2DH12 (accelerometer)
- VEML6040 (rgb, white, cct, lux)
- nRF ADC for analog sensors
- Sensor reading exposed via BLE
- E-Paper display
- Display force update (WIP) by buttons
- Sensors are not polled unless there's a connection and there's enough light
- SPI/I2C expander (allows to attach additional sensors/devices and drive them over BLE)
- PoC BLE data collector
- Additional ADC (driver not implemented yet)
- Pairing & Encryption (now all sensor reading are world-readable/writable)
Service UUIDs Characteristic UUIDs
probe-rs-cli erase --chip nrf52840
probe-rs-cli download --chip nrf52840 --format hex s140_nrf52_7.3.0_softdevice.hex
- Consult the nRF52840 pinout and use recommended !low-frequency pins for i2c/spi.
- There must be a separate power switch for i2c expander (now it's on the same power rail as the SPI expander).
- E-Paper display resistor
R.WS1
(rese
pull-down resistor) must be 2 Ohm, not 4.7K. It leads to display going black. Can be fixed with a jumper wire/short across the current one. - Capacitive sensors (and probably all other) must be easy replaceable and attachable (who knows what solvent was used to clean up the board? was it safe for the sensor?).
- MS88SF3 has an internal LDO + buck converter that must be used in the next revision. Current LDO has 4mA quiescent current which is insane for a battery-powered device.
- MS88SF3 should not be placed in the middle of th board because it reduces the range of the BLE signal.
- The second light sensor (VEML6040) was supposed to be a UV Sensor. Now it must be removed from the board to resolve i2c address conflicts.
- Onboard USB must be soldered. Charging must be implemented on the board.