Hi. I have made an Arduino sketch that communicates with my PC using the Mysensors protocol. However, I am not using the Mysensors library, but done my own implementation of the protocol.
The reason for this approach is that I have mounted a 433 MHz receiver and transmitter on the Arduino. The receiver I use for receiving the signal directly from my weather station in the garden and the transmitter I use for sending commands directly to some cheap RF plugs.
In other words, the units I communicate with on 433 MHz are not Mysensors units, and my Arduino sketch is just translating the signal to/from the 433 MHz units to the Mysensors protocol. In this way I can use existing home automation software that already supports Mysensors.
So far I have tested it with Domotics and MYSController, and everything seems to work just fine. However, I have a few questions to the Mysensors protocol that I hope you can help me with:
1:
Is it required/mandatory that each sensors/actuator sends a presentation message? This would be troublesome for me to implement, since my "gateway" sketch does not know which sensors/actuators I have when it boots up. Normally the sensors/actuators would send the presentation message themselves when they are booted, but this does of course not happen in my case, since my sensors/actuators that communicates on 433MHz are not Mysensors devices. Both Domoticz and MYSController seems to register the sensors the first time they send a message (for example the first time the weather station sends the temperature). Is it ok to do it like this, or could there be any cases where this could cause problems?
2:
At the moment my sketch does not support Ack, meaning that all Mysensors messaages I send to the PC have Ack parameter set to 0, and the sketch does not do anything if it receives and message from the PC where the Ack parameter is set to 1. If it is required to support Ack, then how does the aknowledge telegram look like, and what should be done if no acknowledge is received?
3:
In which cases would the req message type be used?
4:
Are there any of the internal messages that are required/mandatory to be supported in my sketch?
Thanks.