welcome to the nRF52 !!!!
I split the nRF52 in a separate Hackaday project and github repo as the potential is so huge that it can soon take this Home Smart Mesh to a whole new level
- nRF52 Mesh Hackaday project
- nRF52 Mesh Github repo : Fully functional using nRF SDK 15 with a clean application and boards declaration
nRF24 + nRF51 + nRF52 Mesh !
Hardware 1 : nRF51 Sensors
The nRF51 sensors Tag is a low cost (8 ~ 9 €) sensors Tag that can talk Bluetooth and custom radio and equipped with sensors that allow very versatile applications. See further below on why custom radio is way more efficient than Bluetooth in the case of sensors logging.
- MPU6050 (x3 axis acceleration and x3 axis gyroscope)
- AP3216 (Ambient Light)
- BMP180 (Temperature, Pressure)
=> Finally a clean git integration based on the nRFSDK : although most of the projects are based on mbed-os, unfortunately the nRFSDK integration inside mbedos (of the time of the evaluation) only supports usage with softdevices which take control over the HW and only allow bluetooth, not esb custom radio, so I had to fall back over a bare nRFSDK usage and I was surprised how clean the experience was, the support is great (googling issues can be quickly found on the forum), so now a subset of the required sdk is integrated as a submodule in a an SDK based project.
=> Note that current available application on the github repo is only broadcasting x3 axis acceleration, other parameters are still to be added (should be fast forward).
Hardware 2 : nRF51 Beacon
The nRF51 is a market available bluetooth beacon , but I hacked it to turn it into a custom RF Mesh beacon. Main code already on github. I used the nRF SDK with the proprietary_rf examples esb_low_power_ptx. The modified code makes the beacon behave as a dash button talking to all other mesh RF nodes, every press ends up in the database and can feed any python MQTT script (actually every press, and every release are separate logged events). Given the low cost of around $4, this makes it an ideal IoT ally. I program this beacon with a jLink Edu and I designed for it this 3d printed needle adapter
Hardware 3 : STM32 IoT Board
This board issue of the #STM32 Blue pill IoT expansion boards project, comes with multiple functions
- APDS9960 : Gesture and proximity, Light Color sensing
- WS2812B : RGB LED status
- BME280 : Temperature, Humidity Pressure
- nRF24L01+ PA LNA + Shield : Long range repeater
- HCI : Host Controller Interface, talking to Rasp server c++ App and to Python.
- mbedos : based application with arduino like c++ call backs and usage facility.
Hardware 4 : STM8L Cell Coin Sensor Tag
- BME280 : Temperature Pressure Humidity
- MX44009 : Light
- MRMS211H : Magnet sensors
- Usage of modules very simple to solder, can reduce the cost vs on the shelf tags by soldering only the required module
- cost-less debugger and IDE
- power measures : to be provided during next week (beginning December)
Fully open source available on github
- STM32 Gateway and repeaters, Raspberry pi server MQTT to DB, and react webapp on github
- The latest STM8L Coin Cell SW on github
- The program broadcasting BME280 and MAX44009 values over the nRF24L01+ on that repo is here
Raspberry pi IoT Software
- C++ RF Gateway: RF Mesh network to MQTT
- Mosquitto: MQTT Broquer
- Mongodb: Document Database for complex structures data
- InfluxDB: Timeseries Database for simple values over time
- Grafana: Generic exploration of time series data
- React+D3js: Highly customized frontend webapp
- OpenHAB2: forwards connected devices to MQTT (Smart sockets,...)
- NodeRed: Easy High level IoT rules
Grafana Interactive dashboard snapshot
- Follow this Interactive snapshot link
- There you can experience an...