ALDL Serial (TTL) Question
ALDL Serial (TTL) Question
Hey guys... this is a great site, and this is my first post for something I haven't been able to find out myself. I'm investigating building an ALDL datalogger for iPhones. Nothing fancy at first, probably just for dumping the data frames to the internal flash for later download. Maybe later I can build a dashboard UI, but for now, I just want the ECM's data stream.
As I understand it, ALDL's datastream (at least for my '7427) is 8192 baud 5V TTL. The iPhone is 3.3V TTL, which should be a simple level conversion, using something like the LM1117 chip and a couple of caps. I've seen some ALDL homebrew schematics that use the PC's TX line... is this necessary? If I just jump the ALDL's diagnostic pin to ground with a 10kohm resistor, I can effectively put the ECM into datastream mode, correct? Then all I need is the ALDL TX => iPhone RX level converter and I'm set? If I were to desire the iPhone to enable the datalogging mode through software (rather than a 10kohm resistor), what would be required of the iPhone's TX pin?
This is not an iPhone-specific question, it can be applied to any datalogger device that happens to require 3.3V (or even 5V) TTL input.
Thanks!
As I understand it, ALDL's datastream (at least for my '7427) is 8192 baud 5V TTL. The iPhone is 3.3V TTL, which should be a simple level conversion, using something like the LM1117 chip and a couple of caps. I've seen some ALDL homebrew schematics that use the PC's TX line... is this necessary? If I just jump the ALDL's diagnostic pin to ground with a 10kohm resistor, I can effectively put the ECM into datastream mode, correct? Then all I need is the ALDL TX => iPhone RX level converter and I'm set? If I were to desire the iPhone to enable the datalogging mode through software (rather than a 10kohm resistor), what would be required of the iPhone's TX pin?
This is not an iPhone-specific question, it can be applied to any datalogger device that happens to require 3.3V (or even 5V) TTL input.
Thanks!
Member
Joined: Mar 2009
Posts: 188
Likes: 0
From: Columbus, OH
Car: 1995 K2500
Engine: 5.7
Transmission: 4L80E
Axle/Gears: 4.11's
Re: ALDL Serial (TTL) Question
I'm not much help but I use my WinMo6.5 phone to datalog my AEM UEGO using a bluetooth serial port. Never tried to get it to work with the ALDL data though.
Joined: Mar 2006
Posts: 4,369
Likes: 17
Car: 1973 Datsun 240Z/ 1985 S-15 Jimmy
Engine: Turbo LX9/To be decided
Transmission: 5-speed/T-5
Axle/Gears: R200 3.90/7.5" 3.73
Re: ALDL Serial (TTL) Question
The '427 doesn't use the 10K resistor to enable datalogging. Only the '165 uses that.
You have to send a command to the ECM to enable serial data.
Look in the stickies of the DIY PROM, for more information.
You have to send a command to the ECM to enable serial data.
Look in the stickies of the DIY PROM, for more information.
Re: ALDL Serial (TTL) Question
I understand that RX/TX are multiplexed into one wire on the ALDL side... does anyone have any clues how to do this from a 3.3v TTL on the PC side? I've been studying the schematic here: http://cable.invisibill.net/, but my skills are limited... it seems like if I can convert the 5v to 3.3 and vice versa, just a diode would work for the multiplexing, right?
Please, school me.
Re: ALDL Serial (TTL) Question *iPhone*
Just an update of what I've found...
I started playing with the serial device in my Mac, with some simple C code... I got it to open the serial port at 8192 baud and send command strings. I noticed that with my ALDL -> USB adapter that all of my commands would just echo back, which leads me to believe that there is nothing special that needs to be done for the multiplexed RX/TX on the ALDL side.
I had a heck of a time figuring out why my command would not return anything else, until I realized my checksum algorithm was wrong. I changed it to a 2's compliment checksum and voila... a 3+63+1-byte (command response + payload + checksum) string was returned by the ECM (after the echoed command). I dumped several hundred frames to a file for later parsing... it looks like good data!
Next, I cobbled together a C program for the iphone to make sure I can open its serial port at 8192 baud... it works! Although I have no device yet to connect to it, it's a great start.
All in all, a good day... I'm just waiting on my iPhone connectors and logic level converters to arrive in the mail before I can actually log some data. I'll keep you guys posted.
I started playing with the serial device in my Mac, with some simple C code... I got it to open the serial port at 8192 baud and send command strings. I noticed that with my ALDL -> USB adapter that all of my commands would just echo back, which leads me to believe that there is nothing special that needs to be done for the multiplexed RX/TX on the ALDL side.
I had a heck of a time figuring out why my command would not return anything else, until I realized my checksum algorithm was wrong. I changed it to a 2's compliment checksum and voila... a 3+63+1-byte (command response + payload + checksum) string was returned by the ECM (after the echoed command). I dumped several hundred frames to a file for later parsing... it looks like good data!
Next, I cobbled together a C program for the iphone to make sure I can open its serial port at 8192 baud... it works! Although I have no device yet to connect to it, it's a great start.
All in all, a good day... I'm just waiting on my iPhone connectors and logic level converters to arrive in the mail before I can actually log some data. I'll keep you guys posted.
Thread
Thread Starter
Forum
Replies
Last Post






