MySensors
3 minute read
MySensors is an open source hardware and software community focusing on do-it-yourself home automation and Internet of Things. To know more about MySensors network follow this link
Provider Specific key points
- In a network MySensors can have maximum of 254 nodes
- node id
0
is always a gateway node - node id
1
to254
can be allocatable to any node - Supported features in MyController
OTA
features / Firmware updatereboot
a nodereset
a node- get a node info
- discover nodes
Heartbeat
request- Response to internal message like
I_TIME
,I_CONFIG
,I_ID_REQUEST
- Assigns NodeId if nodeId set as
AUTO
on a node
Not implemented / supported features (that is supported on MyController 1.x)
- Handle sleeping nodes
- There is no node alive check
Common Configuration
-
Form view
-
YAML View
provider: type: mysensors_v2 # (1) enableInternalMessageAck: true # (2) enableStreamMessageAck: false # (3) retryCount: 3 # (4) timeout: 1s # (5)
type
should be selected asmysensors_v2
enableInternalMessageAck
enable acknowledgement for internal messagesenableStreamMessageAck
enable acknowledgement for streaming messages. ie: OTA/firmware messagesretryCount
- if do not receive the acknowledgement on the specifiedtimeout
, keeps resend the message till it reaches the retryCounttimeout
- wait for the acknowledgement till this timeout
Protocols
MySensors gateway supports the following protocols
Protocol Configuration - MQTT
-
Form view
-
YAML View
provider: protocol: type: mqtt # (1) transmitPreDelay: 15ms # (2) broker: tcp://192.168.1.21:1883 # (3) insecureSkipVerify: false # (4) username: '' # (5) password: '' # (6) subscribe: out_rfm69/# # (7) publish: in_rfm69 # (8) qos: 0 # (9)
type
type of the protocol. here it should bemqtt
transmitPreDelay
- wait till this time to avoid collision and sends the data to provider networkbroker
mqtt broker urlinsecureSkipVerify
if you want to skip the insecure ssl, enable this optionusername
username of the mqtt broker. if it isanonymous
leave it as a blankpassword
if username supplied, password should be supplied. otherwise leave it as a blanksubscribe
topic to be subscribed to get messages from MySensors gatewaypublish
topic to be used to post data from MyController to MySensors networkqos
MQTT qos
Note
It is important to include/#
at the end of subscription
topic to receive from all the nodes. example: out_rfm69/#
Protocol Configuration - Serial
-
Form view
-
YAML View
provider: protocol: type: serial # (1) transmitPreDelay: 15ms # (2) portname: /dev/ttyUSB0 # (3) baudrate: 115200 # (4)
type
of the protocol. here it should beserial
transmitPreDelay
- wait till this time to avoid collision and sends the data to provider networkportname
name of the serial portbaudrate
baud rate of the serial port
Protocol Configuration - Ethernet
-
Form view
-
YAML View
provider: protocol: type: ethernet # (1) transmitPreDelay: 15ms # (2) server: tcp://192.168.1.42:5000 # (3) insecureSkipVerify: false # (4)
type
of the protocol. here it should beethernet
transmitPreDelay
- wait till this time to avoid collision and sends the data to provider networkserver
ethernet server address with portinsecureSkipVerify
if you want to skip the insecure ssl, enable this option
Last modified May 11, 2021: doc update (82361ce)