When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
DFI and ECMDiscuss all aspects of DFI (Digital Fuel Injection), ECMs (Electronic Control Module), scanners, and diagnostic equipment. Fine tune your Third Gen computer system for top performance.
Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
I wanted to give a quick status about a project I recently forked from a dormant GitHub repository for monitoring 8192 baud ALDL streams from OBD-I GM ECMs.
Being an experienced engineer/scientist and an amateur mechanic, I decided that I needed more data from the 3.1L V6 LH0 in my 1992 Camaro RS if I were to properly diagnose and learn along the way. Also, I was looking for something that had the 80’s command line UNIX/DOS aesthetic to match the era of the car.
Photos/video are below — the code is compiled on a Raspberry Pi in an integrated 7” screen display case connected to the ECM through an ALDL USB cable from Red Devil. The address definitions were modified from an original LT1 configuration to a LH0 definition ($88 from a TunerPro RT file I found). The console is fully-customizable to display whatever addresses are coded up — the ones shown are some low-hanging fruit as I play around with the arrangement of the displays.
If if people are interested in the step-by-step guide on how this was coded up/compiled and how the Pi was configured, I’d be willing to write a How To — let me know! ~PG
Re: Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
I would also like to get some insight into your code. I've been using a modified version of a Linux PC LT1 ALDL program (ALDL-io) I got from GitHub which I compiled for and am running on a Pi 3. My ecm is a GM MEFI 3 unit which utilizes the general GM ALDL type of commands and data monitor output with a MEFI 3 specific datastream decode definition. Thx
Re: Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
Yes, cool! I grabbed one of these to play around with in the home office. I was trying to run it over wifi, though, and something somewhere kept timing out, or going into sleep mode, disconnecting it from the network that only a reboot would fix. I shelved the project until I get a larger home router so I can hard wire the thing into the network. Other projects, though.....
You're not the only one who's done this. I've seen someone on another forum who's messing with the Pi to datalog on his vehicles.
Re: Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
The Pi displaying the stats from the computer won't need a network connection, Unless you are talking a bluetooth connection between the PI and the adapter. I haven't seen many OBD1 units that have bluetooth. It uses the 12v power and the ALDL cable in the picture. The PI would need to be able to run a program that can decode the stream across the USB connection. If I knew how to do that in Python I could probably come up with a cool display.
Re: Project: Fully-customizable Raspberry Pi-based ALDL Monitor for OBD-I ECMs
Hey all -- apologies as the last year as been a bit busy but I'm jumping back into my ALDL work. I'll post here as I dig it back up and start making progress again!
# not building tty driver by default yet
all: aldl-ftdi aldl-tty aldl-dummy
@echo
@echo '*********************************************************'
@echo ' Run the following as root to install the binaries and'
@echo ' config files: make install'
@echo '*********************************************************'
@echo
# not installing tty driver by default yet
install: aldl-ftdi aldl-dummy
@echo Installing to $(BINDIR)
cp -fv $(BINARIES) $(BINDIR)/
ln -sf $(BINDIR)/aldl-ftdi $(BINDIR)/aldl
@echo 'Creating directory structure'
mkdir -pv $(CONFIGDIR)
mkdir -pv $(LOGDIR)
@echo 'Copying example configs, will not overwrite...'
cp -nv ./config-examples/* $(CONFIGDIR)/
@echo
@echo '*******************************************************'
@echo ' No automatic updates of configs are done. Please see'
@echo ' examples/ if this was an existing installation, and'
@echo ' attempt to merge these changes manually...'
@echo '*******************************************************'
@echo
@echo '****************************************************************'
@echo ' The default log directory is /var/log/aldl, if you are running'
@echo ' this program as a regular user, you must change permissions on'
@echo ' that directory...'
@echo '****************************************************************'
@echo
@echo Install complete, see configs in $(CONFIGDIR) before running
aldl-ftdi: main.c serio-ftdi.o config.h aldl-io.h aldl-types.h $(OBJS)
gcc $(CFLAGS) main.c -o aldl-ftdi $(OBJS) serio-ftdi.o $(LIBS)
@echo
@echo '***************************************************'
@echo ' You must blacklist or rmmod the ftdi_sio driver!!'
@echo ' Debian users can try the debian-config.sh script. '
@echo '***************************************************'
@echo
aldl-tty: main.c serio-tty.o config.h aldl-io.h aldl-types.h $(OBJS)
@echo 'The TTY serial driver is unfinished,'
@echo 'Using it will simply generate an error.'
gcc $(CFLAGS) $(LIBS) main.c -o aldl-tty $(OBJS) serio-tty.o $(LIBS)