It's been a while.
Indeed.
Let's pick on what's new in the RV. It's on-line. Let's outline the major changes starting with the network.
The Raspberry Pi based access point that was providing the RV WiFi Network has been unplugged.
A New Router
In its place is a Netgear N750 (WNDR4300) router running OpenWRT v24.10 and the Travelmate package to provide an access point. Having a dedicated router has made things easier, more capable and more reliable.
Running OpenWRT means the router can send status and health messages over MQTT. As in:
{
"dateTime":"2025-10-03T17:58:00",
"router_hostname":"OpenWrt",
"wifi_interfaces":[
{
"interface":"phy0-ap0",
"essid":"C*****",
"access_point":"28:***",
"mode":"Master",
"channel":1,
"frequency_ghz":2.412,
"hardware":"embedded [Atheros AR9340]",
...
"phy_name":"yes"
},
{
"interface":"phy1-ap0",
"essid":"C*****",
"access_point":"28:****",
"mode":"Master",
"channel":149,
"frequency_ghz":5.745,
"hardware":"168C:0033 168C:A120 [Atheros AR9580]",
"phy_name":"yes"
},
{
"interface":"phy1-sta0",
"essid":"SG",
"access_point":"2F",
"mode":"Client",
"channel":149,
"frequency_ghz":5.745,
"hardware":"168C:0033 168C:A120 [Atheros AR9580]",
"phy_name":"yes"
}
],
"connected_clients":{
"count":3,
"clients":[
{
"mac":"a",
"hostname":"foo",
"ip":""
},
{
"mac":"b",
"hostname":"bar",
"ip":""
},
{
"mac":"c",
"hostname":"too",
"ip":""
}
]
}
}
[ Thank you ChatGPT, or Claude, for writing the 'ash' shell script that pulled the data from the router, crafted the JSON packet and sent it out. ]
At a glance I can tell how the router is working and if the expected clients are connected.
Travelmate provides an Access Point and uplink capability. Right now, I have the 2.4GHz radio in the router configured as the AP. The 5GHz radio in the router is the internet uplink. When the RV is parked, an old Samsung smartphone with a Tello data plan provides Internet access. A 2GB/month, $6 plan is sufficient to support the data consumption. So far, I seem to be using about 30-40MB per day.
A great feature of Travelmate is that it will monitor all configured available uplinks/hotspots and connect to a higher priority one. This means that all I have to do when I'm in the RV is enable the hotspot on my phone. After a minute or so, the router switches from the 2GB Tello phone to my 20G Mint Mobile device. And I can do large data updates without consuming all of my Tello data.
Power!
I had been hesitant to use a dedicated router because of my guess-timated powerconsumption. But now that the RV has 200Ah of LiFePO4 battery there's sufficient power to run the systems for several days.
I measured the current consumption of the router to be about 2.5A. And it's powered by 12V DC. A simple buck converter was installed to ensure the 13-14V of battery power is pulled down to a consistent 12V DC. The router and Raspberry Pi can stay on all of the time without concerns about depleting the batteries.
The router, the Pi, the ESP32 and the phone are all connected to the Load Output on the EPEver MPPT controller. I can monitor the current. When things are idling, the power consumption is very small.
Weather Now
The second big change is the 433MHz RF devices in the RV. I found another Acurite 5-in-1 weather station on sale for $50. It stays in the RV and gets pulled out and put up when we stop. This station transmits all data on 433MHz.
There are four other temperature and humidity sensors around the RV that also send on 433MHz.
433Mhz Reception
The binary data from the devices are intercepted, converted to JSON and sent over MQTT:
{"model":"Nexus-TH", "id":22, "channel":2, "battery_ok":0, "temperature_C":34.6, "humidity":22, "protocol":"Nexus, FreeTec NC-7345, NX-3980, Solight TE82S, TFA 30.3209 temperature/humidity sensor", "rssi":-50, "duration":731000}
{"topic":"WEATHER/CURRENT/ACURITE", "dateTime":"2025-10-03T18:13:21-06:00", "version":"1.0", "station":"2796", "channel":"A", "temperature":81, "humidity":46, "windSpeed":0, "windDirection":135, "rain":1.3}
One disappointment is that this setup is not able to receive and decode the transmissions from the TPMS sensors on all six RV wheels. I've made a number of attempts to decode and have not been successful. I've tried contacting the TPMS vendor, asking if they'd publicize their protocol details and they've refused.
Next up - It's Brian's Fault

No comments :
Post a Comment