Menu

Tree [1f09ed] master /
 History

HTTPS access


File Date Author Commit
 pdf 2019-04-12 Y Y [1f09ed] Schematic
 pics 2018-09-14 Y Y [a57753] Add files via upload
 .gitattributes 2018-05-27 yurysvirida yurysvirida [b76750] :octocat: Added .gitattributes & .gitignore files
 .gitignore 2018-05-27 yurysvirida yurysvirida [b76750] :octocat: Added .gitattributes & .gitignore files
 DomoticzInstallMySensors.md 2018-05-27 Y Y [924ef7] Add files via upload
 README.md 2018-07-10 Y Y [fda601] Update README.md
 SecurityPersonalizationHowTo.md 2018-05-27 Y Y [924ef7] Add files via upload
 easyPIRmultisensorsBox.ino 2018-10-25 Y Y [2e031f] _flash.initialize(); moved inside Loop(), no...
 easyPIRmultisensorsBoxWithTempHumSensor.ino 2018-10-25 Y Y [508b65] _flash.initialize(); moved inside Loop(), no...

Read Me

enter image description here
enter image description here
enter image description here
enter image description here

The easyPIRmultisensorsBox is a low cost wireless Arduino IDE compatible (the Atmel ATMega328P 8MHz) microcontroller with RFM 69 CW or Nordic Semiconductor’s NRF 24L01+ radio on board and few other nice additions.

Best sutable for Home Automation, IOT. You may think of it as Arduino Pro Mini plus all the items in the picture below:

Specification:

  • MCU Atmel ATMega328P 8MHz) microcontroller
  • Radios- HopeRF RFM 69 CW (915, 868 0r 433 MHz) or Nordic Semiconductor NRF 24L01+ radio on board
  • Enclosure dimensions 46mm x 36mm x 18mm
  • Powered by two CR2032 batteries in series with high-efficiency power converter (3.5-10V). JST connector for external battery.
  • Wide operating temperature range. Tested -20 +40 Celsius
  • PIR sensor S16-L201D
  • Temperature and humidity sensor Si7021
  • High Accuracy Temperature Sensor ±0.4 °C (max), –10 to 85 °C
  • Precision Relative Humidity Sensor ± 3% RH (max), 0–80% RH
  • Light sensor BH1750, spectral responsibility is approximately human eye response.
  • Authentication security - Atmel ATSHA204A Crypto Authentication Chip
  • External JDEC EPROM
  • Dualoptiboot bootloader. Implements over the air (OTA) firmware update ability
  • Multiradio board. Rfm69cw and nrf24l01+ are supported.
  • FTDI header for programming
  • Reverse polarity protection.
  • Board dimensions 31mm x 41mm.

Arduino IDE Settings

Arduino IDE Settings

programming FTDI adapter connection

enter image description here

How to use it as home automation (IOT) node controller

easyPIRmultisensorsBox.ino is the Arduino example sketch using MySensors API.

  • Controller Setup.
    Burn the easyPIRmultisensorsBox.ino sketch into the board and it will became one of the MySensors home automation network Sensor's Node reporting Motion (PIR), Temperature , Humidity and Vsial light in Luxes to a smart-home controller.
    To create the home automation network you need smart-home controller and at least two Nodes one as a Sensor node and the other one as the “Gateway Serial” connected to a smart-home controller. I personally love Domoticz as a smarthome controller. Please check this HowTo to install Domoticz.

  • No Controller setup.
    However, for no-controller setup, as example, you can use 3 nodes - first node as the “Gateway Serial”, second node as a Relay and last one as a PIR sensor for that a Relay. No controller needed then, keep the Switch and the Relay on the same address and the switch will operate the relay.

Things worth mentioning about the MySensors Arduino sketch:

Code Description
Light meter BH1750 Library by Christopher Laws MySensorsArduinoExamples BH1750
Temperature and humidity sensor Si7021 SparkFun Library SparkFun_Si7021_Breakout_Library
#define MY_RADIO_RFM69
#define MY_RFM69_FREQUENCY RF69_433MHZ
The easyPIRmultisensorsBox can use Hope RF RFM69CW or Nordic Semiconductor's NRF 24L01+ radios.
Define which radio we use – here is RFM 69
with frequency 433 MHZ and it is HW
type – one of the most powerful RFM 69 radios.
#define MY_RADIO_NRF24 Define which radio we use – here is Nordic Semiconductor's NRF 24L01+
#define MY_NODE_ID 0xE0 Define Node address (0xE0 here). I prefer to use static addresses
and in Hexadecimal since it is easier to identify the node
address in Domoticz devices list after it
will be discovered by controller ( Domoticz).
However, you can use AUTO instead of the hardcoded number
(like 0xE0) though. Domoticz will automatically assign node ID then.
#define MY_OTA_FIRMWARE_FEATURE
#define MY_OTA_FLASH_JDECID 0x0
Define OTA feature. OTA stands for “Over The Air firmware updates”.
If your node does not utilize Sleep mode you can send new “firmware”
(compiled sketch binary) by air. Here is the link on how to do it.
Skip to the step "How to upload a new sketch just with OTA" as all initial
steps have been completed in the easyPIRmultisensorsBox.
For OTA we use JDEC Flash chip where the node stores
new firmware and once it has been received and checksum (CRC)
is correct it reboots and flashes your new
code into the node controller. 0x2020 "Erase type"
defined here for JDEC Flash chip .
#define MY_SIGNING_ATSHA204
#define MY_SIGNING_REQUEST_SIGNATURES
Define if you like to use Crypto Authentication to secure your nodes
from intruders or interference. After that, you have to “personalize”
all the nodes, which have those, defines enabled.
How to “personalize” nodes with encryption key.
You need both defines in the nodes you need to protect.
The Gateway Serial could be with only one of those
defines enabled - #define MY_SIGNING_ATSHA204

Connect the Node to FTDI USB adaptor, Select Pro Mini 8MHz board in Arduino IDE and upload the easyPIRmultisensorsBox.ino sketch.

Done

The board designed by Koresh

enter image description here
enter image description here
enter image description here
enter image description here

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.