Want Wired Ethernet For All Sensor Nodes / Gateway
I have a large building (150,000SF+) that I have been planning a large installation quantity (500) of low-cost sensors distributed throughout. Motion, temperature, distance sensors, IR blasters, relay controls, etc. MySensors seems IDEAL for this as a standardized and well tested platform from which to run.
However, the physical construction of the building makes radio a very poor choice, even with repeating capability. Lots of concrete and steel -> We will be running approximately 70 UniFi AP’s to provide enough WiFi radio coverage density, some of them for just one room!
I know MS offers RS-485 wired as an alternative communications media.
However we would be daisy chaining 30-40 Arduino sensor boards, likely consuming several thousand feet of RS-485.
What I would prefer to use would be Arduinos with good Ethernet hats. Use good PoE splitters and have the Sensor boards wired via my business-class PoE switches. I would make a VLAN just for MS -> Sensor boards + controller. My Ethernet switches are also already set up with enterprise class power planning so Sensors/Controller will never loose power if I can run them PoE (small local UPS at each rack buys enough time for rack ‘shore power’, which is from a large automatic transfer switch with 50kW generator already installed).
I well understand that this ‘stretches’ the intended setup for MS. However for our needs it is far and away better to run the network communication layer/topology via PoE/Ethernet.
What does everyone suggest? Stretch MS to do this, or (if one even exists) should I look at another middleware/suite that is better suited?I REALLY like that standardization present in MS, it’s just the radio communication topology is sub optimal in our situation.
Also, if there might be a way for us to add Ethernet-based communication to MySensors core, this could be a way for us to give back.
Thanks to anyone and everyone in advance.
Welcome to the MySensors community @armoredsaint
What type of controller are you planning to use? One way to do what you want could be to simply let each Arduino be a gateway, with locally attached sensors. You would get 30-40 gateways, and some controllers might not support that many gateways, but if you have a custom controller, or select a controller that supports many gateways, you could use MySensors as it is, no need to change anything.
Thank you for the welcome and the reply!
As far as a gateway I planned to use a Raspberry Pi 3+ B, and run it as an Ethernet gateway and/or Serial and/or MQTT. Alternatively, if I need more horsepower for my gateway with this topology I can easily fire up a VM on one of my VMWare servers and give it up to 12x processors / 24G of RAM. Servers are on 10G SFP+ fiber cards to the core switch so I don’t think network bandwidth should be a bottleneck.
I have a Ras inbound to build/test the whole sensor network, but may eventually port the controller to a VM anyways as we’re installing VMotion for high availability and this would benefit.
Finally, I run Homeseer HS3 doing business logic interconnection and management between all of our various systems.
Ah, I see what you’re saying. Configure each Arduino to be its own gateway.
In that case I’d have them all communicate using MQTT onto various channels on the VLAN and keep my existing MQTT broker VM to handle it.
Does MySensors library already have provisions to allow easy configuration of an Arduino to be a gateway with local sensors? If yes this is the probably easiest way to do it.
Does MySensors library already have provisions to allow easy configuration of an Arduino to be a gateway with local sensors?
Yes, create a standard (MQTT) gateway without transport (radio) and attach sensors as you would with a sensor node.
Genius. Thank you both!!! Stoked that it appears MS is going to work just peachy for this.
kimot last edited by kimot
Sorry, but if you have got ethernet on each node, why using MS gateway? Simple use pure MQTT and publish to the broker. You only need MQTT library, not all MySensors in this case.
Carywin last edited by
You don’t need MySensors for this, PubSubClient will do what you need.