ESP32ArduinoRenogy
ESP32ArduinoRenogy copied to clipboard
Works on Renogy Rover 20
An update for your documentation. I'm using your code with a Renogy Rover 20A. This device includes an RJ45 connector for communicating with a bluetooth device.
- Interface is an RJ45 that speaks RS485 (not RS232). I'm using an RS485-to-TTL board. (It looks just like your RS232-to-TTL board, but for RS485.)
- There are 3 important pins (colors mapped to RJ45 T-568A pinout): 1 = +5v = green stripe 2 = A, TX/RX+ = green 3 = B, TX/RX- = orange stripe 4 = GND = blue 5 = NC (idle) 6 = CAN_H (CAN Bus signal) 7 = NC (idle) 8 = CAN_L (CAN Bus signal) It uses 9600bps baud. Ignore the pins you don't use.
- For the RS485-to-TTL board, use pins 2,3,4 from the Rover's RJ45 interface.
- For powering the ESP32, I'm using the +5V and GND (pins 1 and 4) from the Rover's RJ45 interface. Works great! As soon as the Rover powers up, the ESP32 powers up.
- No code changes to your code. It reads the status perfectly.
The one thing missing from your code: It doesn't read any error code from the device. I'd like to see when the Rover returns "E0" (no error), "E3" (low battery), etc. Not sure how to do that.