Tag Archives: UART

How to connect to diagnostics port of AC Stag gas controllers without special cable

Stag gas controllers have 4 pin socket for diagnostic purposes. AcGasSynchro software can be downloaded free, but you need cable/adapter to connect USB port of a computer to this special socket. If you don’t plan running automotive businesses and just curious to play with diagnostics software once or twice is not worth to buy a special cable for about 30 USD.

Good news that Stag gas controller use standard UART TTL level interface. So you need just easy findable USB – UART converter. Connect RX<->TX, TX<->RX, GND <-> GND, that is all.

You need a converter to UART TTL level (0/5V ), not to RS-232(-13/+13V). The RS-232 converter can permanently damage your diagnostics port and/or gas computer.

I prefer to use Arduino board because it also has integrated USB – UART converter and You don’t need to write any code, just load example “blink” project to make sure that Arduino RX, TX ports won’t interfere. You need to connect RX<->RX, TX<->TX, GND <-> GND. Don’t connect +12V wire to anything.


Connect Arduino board or USB -UART converter with USB cable to a computer, turn on ignition and start AcGasSynchro software.

You can turn off ignition after few second because diagnostic interface works without ignition, but goes sleep after several minutes without ignitions is turned off.

Go Port – Connect.

Software should find proper COM port what is associated with USB – UART converter and connect. If it fails to connect check if you didn’t mix up RX and TX connections, and ignition is on.


Now you are on your own, just remember that controller tracks logins and changes, so you can void your warranty.

You could make electric connection less messy buy using SuperSeal plug.

Arduino GPS clock using NMEA protocol

GPS for accurate synchronization and  position measurement must use precise clock, so GPS satellites are equipped with atomic clocks. Clock accuracy is amazing ± 1 second in 1 million years. Using GPS module is available not only acquire position, speed, bet also time and date, so in this post I’ll explain how to do it.

GPS clock consist of old Sirf II GPS module, MAX 232, Arduino Mega and LCD display (Hitachi HD44780).

Sirf II module has RS-232 interface for communication and it can be  connected to PC Com port. Atmega in Arduino board has  UART interface. RS-232 basically is the same UART, only zeros and ones voltage levels are different. To match levels MAX232 driver is used. Today’s GPS modules have UART port, so there isn’t any need for MAX232.

Arduino in this project doesn’t have clock function it just pass time and date from GPS module to display. It works that way because GPS module has internal RTC(Real time clock) it’s not accurate, but it is synchronized to GPS system.

As you can see from video GPS module RTC is sychronised before GPS fix happens, but GPS fix is only one indicator that shows that clock is synchronised.
Continue reading