Engineering:MySensors

From HandWiki
MySensors
MySensors.org
Initial release2013; 11 years ago (2013)
Stable release
2.3.2 / December 9, 2019 (2019-12-09)[1]
Written inC
TypeInternet of things
LicenseGNU General Public License 2.0 or Commercial
Websitewww.mysensors.org

MySensors is a free and open source DIY (do-it yourself) software framework for wireless IoT (Internet of Things) devices allowing devices to communicate using radio transmitters. The library was originally developed for the Arduino platform.[2][3]

The MySensors devices create a virtual radio network of nodes that automatically forms a self healing mesh like structure. Each node can relay messages for other nodes to cover greater distances using simple short range transceivers. Each node can have several sensors or actuators attached and can interact with other nodes in the network.

The radio network can consist of up to 254 nodes where one node can act as a gateway to the internet or a home automation controller. The controller adds functionality to the radio network such as id assignment and time awareness.

Supported hardware platforms

The framework can natively be run on the following platforms and micro controllers.

Communication options

MySensors supports wireless communication using the following transceivers:

  • NRF24L01
  • RFM69
  • RFM95 (LoRa)
  • WiFi (ESP8266 & ESP32)

Wired communication over:

Security

The wireless communication can be signed using truncated HMAC-SHA256 either through hardware with Atmel ATSHA204A or compatible software emulation and optionally encrypted. The implementation is timing neutral with whitened random numbers, attack detection-and-lockout and protects against timing attacks, replay attacks and man in the middle attacks.

Over the air firmware updates

The firmware of a MySensor node can be updated over the air using a few different bootloader options:

  • In place overwriting of flash memory using MySensorsBootloaderRF24.[6]
  • Using external flash with the DualOptiBoot.[7]
  • For ESP8266 nodes using the built in OTA feature.[8]

See also

References

  1. "News History | MySensors - Create your own Connected Home Experience". https://www.mysensors.org/news. 
  2. Ramljak, Dario (2015). Sustav nadzora kvalitete zraka u zatvorenim prostorima koristeći bežične senzorske mreže (M.Sc. thesis). University of Zagreb.
  3. Guarnieri Calò Carducci, Carlo (2015). "Design of a Low Cost Multipurpose Wireless Sensor Network". IEEE International Workshop on Measurement and Networking. Coimbra, Portugal. https://www.researchgate.net/publication/282855975. 
  4. "mysensors/ArduinoHwSAMD". https://github.com/mysensors/ArduinoHwSAMD. 
  5. hek. "Building a wired RS485 sensor network | MySensors - Create your own Connected Home Experience". https://www.mysensors.org/build/rs485. 
  6. "mysensors/MySensorsBootloaderRF24". https://github.com/mysensors/MySensorsBootloaderRF24. 
  7. "mysensors/DualOptiboot". https://github.com/mysensors/DualOptiboot. 
  8. "OTA Update · ESP8266 Arduino Core". https://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html. 

External links