Close

Physical Layer

A project log for Outback MATE Reverse Engineering

Reverse engineering Outback Power's Solar Chargers so I can obtain better data for logging

jared-sansonJared Sanson 09/11/2015 at 05:452 Comments

-The Outback system uses a proprietary interface to connect the MATE to one of their devices over standard Cat5 cable. It can talk to multiple devices through the use of one of their proprietary hubs, or can just connect directly to the device. The RS232 protocol from the MATE unit is documented, but this proprietary protocol (what I call from now on "MateNET") is completely undocumented.

Before I started attempting to reverse engineer, I guessed that the protocol would use some sort of standard protocol over RS485 - but I was wrong! After looking at the signals in a live system it was clear that the interface was not differential at all, it was just standard serial (UART) at 0-24V logic levels!

The actual format of the bus is 9600 baud, 9n1 (yes, 9 bits of data - the 9th bit is used to signify the "address" byte, or the start of the packet)

To figure out the exact pinout, I decided to reverse-engineer the MATE circuitry (since I had easy access to one I could pull apart). The circuit is pretty basic, it consists of a standard ATMEGA32, some EEPROMs (for logging), an RTC, a buck converter, RS232 isolation, and the MateNET interface. What suprised me is their use of a logic mux to switch between RS232 and MateNET - obviously because the ATMEGA32 only has one serial port!

I have replicated the circuitry related to the MateNET RJ45 port below: (This does not show the EEPROMS/RTC/ATMEGA)

The pinout of the MATE is as follows:

1: +V (Battery Voltage)
2: GND
3: (TX:MATE -> RX:MX/FX)
6: (RX:MATE <- TX:MX/FX)
Note that these use the standard ethernet pairs (Orange/Green pairs).

Creating an adapter from the above schematic was easy. I decided to forgo the comparators, and just use some opto-isolators (which also guarantees my linux board will be isolated from the charger)

This opto-isolator can replace the MATE, or a MX/FX unit (for testing - this allowed me to poke values at the MATE and helped me figure out the packet formats with much finer detail than I could have by simply capturing and observing them!)

To connect the adapter to an MX/FX unit using an RJ45 cable:

Opto-Isolator <> MX/FX
+V  : Pin 1 (Green/White)
GND : Pin 2 (Green)
TX  : Pin 3 (Orange/White)
RX  : Pin 6 (Orange)

To connect the adapter to a Mate:

Opto-Isolator <> MATE
+V  : Pin 1 (Green/White)
GND : Pin 2 (Green)
TX  : Pin 6 (Orange)
RX  : Pin 3 (Orange/White)

(Note the swapped TX/RX)

Discussions

Karl Parks wrote 09/15/2023 at 03:24 point

This was really helpful! Thank you for sharing! I was able to power my AXS Port with 5V because I don't have a Hub/Device in hand for my development. Thank you!

  Are you sure? yes | no

gashah143 wrote 04/09/2018 at 19:08 point

Hi, I am using the OutBack Inverter & the same board as mentioned in your circuit diagram to talk to inverter on RS232. I want to convert it into RS485, I used some converters from RS232 to 485 but no luck.......can you provide me some guidance on that?? It will be really Helpful.....Thanks!!!

  Are you sure? yes | no