Connecting several remote sensors to my HA through NB-IOT

I have a vacation home where I want to install several sensors:

  1. Pulse counter (reed) for an old water meter, battery operated and connected wirelessly
  2. Energy meter, obviously connected to the Grid,
  3. 2nd energy meter, connected to the same grid but in a different location, also wireless.
  4. Maybe other sensors in the future, but all of them with low bandwith requirements.

LTE is expensive, and I don’t have internet access in that house, so I want to use NB-IoT, which has a really cheap flat rate. I can place an NB-IoT Gateway and any other needed hardware next to the 1st energy meter and then connect to the other two sensors wirelessly (zigbee, Mysensors, BLE…). On the NB-IoT side the gateway would be connected to a free cloud service, and HA would get the data through an API.

My problem is that all NB-IOT gateways I’ve found need (I think) programming:

Sentrius MG100 Micro Gateway , LTE-M / NB-IoT / BLE 450-00054-K1 is supposed to convert my BLE data into NB-IOT and send it to a cloud service, but I think it only works ‘out of the box’ with their own BLE sensors. It seems that in order to work with any BLE sensors and cloud services it has to be programmed, and I’m not sure I would know how to do it.

Same happens with ethernet to NB gateways. LoraWan is too expensive, RS 232 or RS 485 would force me to install another gateway for the wireless sensors…

I don’t really know how to program all these. I think I would be able to make a mysensors sensor, an Arduino or ESP if I find the code for those meters already done, but when I look at the NB-IoT Gateway I’ve been unable to find anything ready to use.

Any suggestions?

OK, after checking several systems I’ve decided the following configuration:

Mysensors sensor - Mysensors NB-IoT gateway - Thingspeak - Home Assistant

I am not sure I can program the gateway, NB-IoT is not a mysensors standard, so I plan to start with a very limited functionality: The gateway will have an M5-NB-IoT AT modem connected to a virtual serial port in an Arduino UNO r3. After connecting to NB, it will interrogate the sensors and then send the information to Thingspeak. So the sensors will not send any information unless the gateway asks, and the same will happen with Thingspeak. No interrupts, no conflicts (I hope).

  • I will know if a sensor is not working because its value in Thingspeak will not update
  • I will know if the gateway is not working because no values will update in Thingspeak
  • HA will read the values from Thingspeak.

At a later stage I will add, hopefully, bidirectional communications between the sensors and the gateway, and with Home Assistant. Right now I’m afraid a sensor sending data will collide with the gateway asking for data, sending it through NB or HA asking for something.

Any opinion?