scottnichol
New Member
- Joined
- Nov 4, 2021
- Messages
- 19
Hello!
I recently set up a system with 4x100W panels into a Renogy Rover 40A charge controller. Coupled with a 200Ah battery and 1000W inverter. The whole system works great. The kit I purchased included the Renogy BT-1 bluetooth module for monitoring through their apps. But I wasn't happy with what was being reported and wanted something more robust.
Enter SolarShed, a simple python script to read from the RJ-11 serial port. I got a Raspberry Pi, built an RJ-11 to DB-9 to USB cable and was able to read data from the port. I could see volts, amps and watts coming off the panels, battery charge percentage and a host of other parameters. There was some additional configuration using Prometheus for data aggregation and Grafana to visualize all of the data over time. It was all working 24/7 and I could monitor all of it from any web browser.
Then I did two boneheaded things:
I'm wondering if any of the following may have happened:
thanks
scott nichol
I recently set up a system with 4x100W panels into a Renogy Rover 40A charge controller. Coupled with a 200Ah battery and 1000W inverter. The whole system works great. The kit I purchased included the Renogy BT-1 bluetooth module for monitoring through their apps. But I wasn't happy with what was being reported and wanted something more robust.
Enter SolarShed, a simple python script to read from the RJ-11 serial port. I got a Raspberry Pi, built an RJ-11 to DB-9 to USB cable and was able to read data from the port. I could see volts, amps and watts coming off the panels, battery charge percentage and a host of other parameters. There was some additional configuration using Prometheus for data aggregation and Grafana to visualize all of the data over time. It was all working 24/7 and I could monitor all of it from any web browser.
Then I did two boneheaded things:
- I wanted to see if it was possible to have both my Raspberry Pi and the BT-1 module plugged into the RJ-11 port at the same time, but of course this didn't work because the male end of the phone line splitter only has 4 pins and who knows what cross talk is going on there
- Next, I'd heard about the Renogy DC Home app for monitoring with their BT-1 module and wanted to see what it could offer, unplug the Raspberry Pi, plug in the BT-1 and check out the app
- I added my charge controller, checked out the app and it was pretty much inferior to what I had running on my Raspberry Pi
I've tried just about everything I can think of from rewiring the cable, connecting the serial port directly to the GPIO, and completely reinstalling the RaspberryPi and all software from scratch and still no dice.Traceback (most recent call last):
File "/home/pi/.local/lib/python3.9/site-packages/solarshed/server.py", line 37, in <module> battery_percentage_gauge.set(controller.battery_percentage())
File "/home/pi/.local/lib/python3.9/site-packages/solarshed/controllers/renogy_rover.py", line 80, in battery_percentage return self.read_register(256) & 0x00ff
File "/home/pi/.local/lib/python3.9/site-packages/minimalmodbus.py", line 258, in read_register return self._genericCommand(functioncode, registeraddress, numberOfDecimals=numberOfDecimals, signed=signed)
File "/home/pi/.local/lib/python3.9/site-packages/minimalmodbus.py", line 697, in _genericCommand payloadFromSlave = self._performCommand(functioncode, payloadToSlave)
File "/home/pi/.local/lib/python3.9/site-packages/minimalmodbus.py", line 795, in _performCommand response = self._communicate(request, number_of_bytes_to_read)
File "/home/pi/.local/lib/python3.9/site-packages/minimalmodbus.py", line 930, in _communicate raise IOError('No communication with the instrument (no answer)')
I'm wondering if any of the following may have happened:
- Trying to connect both devices simultaneously caused the controller to flip its TX/RX wires?
- Using the newer DC Home app from Renogy updated something within the charge controller firmware to prevent rogue agents from talking to the controller, maybe as a security feature?
thanks
scott nichol