EP Solar MPPT Tracer charge controller serial interface

I’m currently involved in a project to set up a solar powered wireless station and wanted to remotely monitor the battery charge process. I looked into a number of charge controllers to see if any of them could be connected to a computer. Many of the controllers have ethernet and built in web servers, but these come at a cost.

The (relatively) cheap chinese made EP Solar Tracer MPPT Solar charge controllers have an RJ45 interface for an MT5 remote display which means that there must be some way to get data out of the charge controller.

The MT5 remote display
The MT5 remote display


A couple of google searches for things like:

Brought up all sorts of documentation, much of the protocol information conflicted, but it all seemed to infer that the interface was serial of some sort.

I purchased the 40 Amp Tracer and borrowed a MT5 remote display and started snooping on the interface with a multimeter, oscilloscope and logic analyzer.

The EP Solar Tracer 40 Amp MPPT solar charge controller
The EP Solar Tracer 40 Amp MPPT solar charge controller

I was able to quickly verify the physical interface pin out.

Here’s the pin out of the RJ45 interface.

Pin1 +12V
Pin2 N.C
Pin3 +12V
Pin4 GND
Pin5 TXD
Pin6 RXD
Pin7 GND
Pin8 GND

WARNING: Pins 1 and 3 of the interface supply 12 volts DC. I’m unsure if these are fused, so be very careful not to short them to ground. Note that pin 4 is a ground, so it would be relatively easy to short pins 3 and 4 together.

Note: The wire gauge I'm testing with is far too thin for 40 Amp use!
Note: The wire gauge I’m testing with is far too thin for 40 Amp use!

The pin order is defined as: plug-oriented touch-sided view of the direction of the cable down, from left to right order of 1 to 8…. Or at least that’s how one of the translated Chinese documents describes the pin order.

Here’s a picture (courtesy of wikipedia) for clarication.

RG45 pin numbering (Wire colors are the TIA/EIA-568B standard)
RG45 pin numbering (Wire colors are the TIA/EIA-568B standard)

The serial interface runs at 9600/8-N-1 (9600 baud, 8 data bits, No parity bit and 1 stop bit) on 3.3 Volt TTL Logic.

A FTDI TTL-232R-3V3 USB to TTL serial adapter works well for testing purposes.

Connected upConnected up to a FTDI TTL-232R-3V3 USB to TTL serial adapter.  Wires on the left are from a TIA/EIA-568B cable plugged into the solar controller.  Inset box is the FTDI USB to serial pin out.
Connected up to a FTDI TTL-232R-3V3 USB to TTL serial adapter. Wires on the left are from a TIA/EIA-568B cable plugged into the solar controller. Inset box is the FTDI USB to serial pin out.

I want to interface the charge controller to a Raspberry Pi which is convenient as the RPi UART also works on 3.3Volt TTL logic levels.

I haven’t fully worked out the protocol yet.

The MT5 continually sends the packet

0xAA 0x55 0xAA 0x55 0xAA 0x55 0xEB 0x90 0xEB 0x90 0xEB 0x90 0x16 0xA0 0x00 0xB1 0xA7 0x7F

which loosely matches some of the documentation I’ve found online.

It looks like the response is a number of 16 bit integers (Least significant byte first) and 8 bit bool values. I’m still working on this and hope to have a result soon.

You May Also Like

About the Author: John

9 Comments

  1. Any news on reverse engineering the protocol? I have one next to raspberry also, although cannot access it in next 6 months (abandoned in island for winter).

  2. HI,
    congratulations for your posted findings concernig this project!
    I’m pretty new with the RPi but I’m also trying to connect the rj.45 cable from the controller to a a RPi, not only to log it but also o access it remotely.
    have you made any progress?

  3. great work guys!! I’ve just had one fitted to the boat and was told the remote wasn’t available but really wanted the rPi interface. Is there any info you can publish or is the above thread enough?

  4. Hi John,
    I also have an epsolar tracer (3215RN) and I just finished my data logger: Arduino connected to tracer display (resp. data) port saving a set of values every 5 seconds to a mySQL database. Two arduinos showing everything on 4 OLED displays (SSD1306) in a ‘black box’. And 2 web pages for live and day view. Here’re some pictures:

    Tracer and Black Box: http://www.oliver-witte.de/solar/tracer_blackbox.jpg
    Black Box only: http://www.oliver-witte.de/solar/blackbox.jpg
    Wire plan: http://www.oliver-witte.de/solar/wire_plan.jpg (made with Fritzing)
    Live view: http://www.oliver-witte.de/solar/live_view.jpg
    Day view: http://www.oliver-witte.de/solar/day_view.jpg

    If anyone wants more details, just let me know…

    Have sun 🙂
    Oliver

  5. Hey I have the EPEVER 80a mppt 200v controller and the 100 amp 200v controller EPEVER I want to know how to network the 2 controllers so they communicate together I have 4 300 watt 32voc panels in series to 100 amp and 3 300 watt 31voc connected to 80 amp do I just plug a 8 pin ethernet cable from one to the other?

  6. Hi
    does anybody know, if this is also working with Epever Triron-Series?
    If yes, which communication-modul has to be used? UCS, RCM or RCS?

    Thanks,
    Roger

Leave a Reply to Greg L Cancel reply

Your email address will not be published. Required fields are marked *

Â