Renduinix - Arduino Renix Management (Jeep Cherokee 88-91)

Post your pics, drop your gripes, ask for help. Need to fix, need to modify, want to show off? do it all here.
Post Reply
Trashpanda
Warlord
Posts: 15
Joined: Thu Aug 24, 2017 8:25 am

Renduinix - Arduino Renix Management (Jeep Cherokee 88-91)

Post by Trashpanda » Thu Oct 05, 2017 8:39 pm

I found out about this a while ago, this is an Arduino setup to monitor and tweak the Renix engine management system of the 88-91 Jeep Cherokee and others.

https://www.youtube.com/playlist?list=P ... GCfwxb3Wrb

Here's the Code: https://github.com/NickInTimeFilms/Renduinix

I want to start updating the code to work with one of the ACS boards, and run this on a Nano. Looks like a great project considering I have 3 of these jeeps.
Lord Trashpanda - High Priest/Chief Spam Catcher, Giver of the Law.

opfor
tactical nylon fetishist
Posts: 200
Joined: Fri Aug 25, 2017 9:19 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-9

Post by opfor » Thu Oct 05, 2017 10:13 pm

Going through the code on this... Here's the interesting and useful part, I'll probably throw away the rest of the code:

Code: Select all

/*
    Glossary
      From what I have researched, this is the framing- it isn't correct for some on the GTA. Still working on it. Jeep Data points updated by Nick Risley. 
    Byte   : 4.0L Jeep              / 4 cyl renix (R21 turbo)   / 13,32 2.0 F3R AMC GTA (confirmed)
    Byte 0 : Program Version 1 & 2  / Program Version           / Program Version
    Byte 1 : PROM Version    3 & 4  / PROM Version              / PROM version
    Byte 2 : Calibration code 5 & 6 / Engine run flags (bin)    / Switch values. C = engine off, nothing selected. 4 = off idle stop
    Byte 3 : MAP                    / MAP                       / MAP
    Byte 4 : CLT                    / CLT                       / CLT
    Byte 5 : IAT                    / IAT                       / IAT
    Byte 6 : Battery Volts          / Battery Volts             / Battery Volts
    Byte 7 : Oxygen sensor          / Oxygen sensor
    Byte 8 : RPM LO byte            / RPM LO Byte               / RPM LO
    Byte 9 : RPM HI byte            / RPM HI byte               / RPM HI
    Byte 10: 9th & 10th PROM        / Inj pulsewidth LO byte    / Injector Pulse LO
    Byte 11: 7th & 8th PROM         / Inj pulsewidth HI byte    / Injector Pulse HI
    Byte 12: Throttle position      / Knock sensor
    Byte 13: Advance degrees        / Advance degrees           / Throttle Position
    Byte 14: *unknown               / Control
    Byte 15: *ECT_ADC               / Turbo correction value
    Byte 16: Baro before start      / unknown
    Byte 17: *Mode                  / Failure flags  %
    Byte 18: Loop/Exhaust, *ALFA - (byte/10=air ratio) {14.7:1) / Road speed
    Byte 19: Pulse width            / throttle stop
    Byte 20: *..?                   / Throttle position
    Byte 21: Throt Sw/Fuel Sync     / System Board Error flags %%
    Byte 22: *Advance + knock mask  / ..?
    Byte 23: *warmup                / warmup
    Byte 24: ST Fuel Trim           / Stored errors %%%
    Byte 25: *temperature adc errors / recent errors %%%
    Byte 26: LT Fuel Trim           / Advance + knock correction
    Byte 27: Knock                  / Barometric pressure before start
    Byte 28: *..?                   / Adjustment off MAP
    Byte 29: A/C Sw/Request         / Switch values %%%%         / Switches possibly. changes when air is selected, makes sense
    Byte 30: 11th & 12th PROM       / Errors %%%%%
    For bitRead(x,y) x=value byte, y= position where bit 7 = 128/msb, bit 0 = 1/lsb
    % 7:Bad injector/6:TDC unable to be found/5:Roadspeed/4:Fuel pump/3:MAP bad/2:Knock sensor bad/1:Crank Pos Sens bad/0:unkown
    %% 7:Bad PROM version/6:Injector circuit fault/5:CPS variance/4:EEPROM CRC/3:ROM CRC/2~0:unknown
    %%% 7:TPS open/6:TPS short/5:CTS open/4:CTS short/3:IAT open/2:IAT short/1:EGR open/0:EGR short
    %%%% 7:Unknown/6:unknown/5:Sync(cam pos on 6pot?)/4:unknown/3:starter/2:AC engage/1:AC request/0:PARK (gears)
    %%%%% 7:Ignition module bad/6~4:unknown/3:oxygen relay/2:latch relay/1:aircon relay/0:unknown
*/
More Parts List:

- Arduino (the UNO R3 is prefered for beginners)
- NPN Transistor (any will do, I used a 2N3904)
- 3.3K ohm Resistor
- 1k ohm Resistor
- Molex connector 03-09-2159
- Molex pins 02-09-2103
OPFOR - Moderator of the Moderated.

nacho
Red Neck
Posts: 32
Joined: Sat Aug 26, 2017 4:28 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-9

Post by nacho » Tue Oct 10, 2017 8:25 am

looks, kinda cool, but why? better fuel economy, trouble shooting?

opfor
tactical nylon fetishist
Posts: 200
Joined: Fri Aug 25, 2017 9:19 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-9

Post by opfor » Tue Oct 10, 2017 2:15 pm

Trouble shooting.
OPFOR - Moderator of the Moderated.

opfor
tactical nylon fetishist
Posts: 200
Joined: Fri Aug 25, 2017 9:19 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-9

Post by opfor » Thu Oct 19, 2017 4:31 am

Ok, so after a bit more experimentation, and looking at the documentation of the whole thing I think I have a fairly good understanding of what's going on here, and propose some possibilities for doing other cool stuff.

First, the basics are:

1) A board that converts the output of the On-Board Computer from Transistor out to a TTL-Serial type output.
2) Takes Serial type output, at 62500 baud
3) Parses output in the arduino to develop output.

Rather than directly reversing this, it seems useful to use this as the basis for some troubleshooting application that's computer based, it would be super-easy to just take serial IO and then parse it in PERL and develop a running counter system. This could also be used on more advanced systems like RasPi and others.

I think it's super cool that he's doing it all on an arduino, but I think it kinda leaves some things to be desired as far as better understanding the standard that was used to make this work. In theory at least, this looks like a pretty-simple method for starting out. I'm going to design up some boards for doing the OBC->Serial and then plug it into a computer and see what I get. It may also be interesting to just make the OBC->Serial an OBC->USB (maybe both).
OPFOR - Moderator of the Moderated.

arclight
Operator
Posts: 33
Joined: Thu Oct 05, 2017 5:31 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-91)

Post by arclight » Mon Dec 18, 2017 9:39 pm

FYI, you can buy brand-new OBDII connectors at JK Electronics in Westminster. Like it's a normal retail item there.

opfor
tactical nylon fetishist
Posts: 200
Joined: Fri Aug 25, 2017 9:19 pm

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-91)

Post by opfor » Tue Dec 19, 2017 3:11 am

Well, that's the problem, the Renix jeep isn't OBD-II, it's ORB (IIRC) has a totally different control layout and pinout.
OPFOR - Moderator of the Moderated.

skroo
noob
Posts: 2
Joined: Wed Oct 04, 2017 2:33 am

Re: Renduinix - Arduino Renix Management (Jeep Cherokee 88-91)

Post by skroo » Tue Jan 02, 2018 3:29 am

opfor wrote:
Tue Dec 19, 2017 3:11 am
Well, that's the problem, the Renix jeep isn't OBD-II, it's ORB (IIRC) has a totally different control layout and pinout.
From what I remember, it's basically the same comms protocol as EFI Renaults of the time used. It's manufacturer-specific as a result, but here's what I remember off the top of my head about that:

Renault had their own proprietary sorta-scantool for the EFI engines. This means the 1.4 and 1.7 found in the Alliance and Encore, as well as the 2.0 in the GTA (which was basically an Alliance underneath, but with an engine specific to the US market). This applies from 1985/6 up to 1988 ('83 to '85 Alliances and Encores were carburetted depending on market; all GTAs were injected and '87-'88 only models).

On the 6-cylinder side, there was the XJ with the 4.0 from 1987 on and the 1988-1992 Eagle Premier with the PRV V6 (same as the 1990-1992 Dodge Monaco).

Reason I mention all of this: a 1988 to 1992-era scantool suitable for the Eagle Premier with the V6 may also work for Renix XJs. I want to say that later Premiers/Monacos used Bosch EFI, but don't recall 100% on that one. Either way, Premier scantools are probably going to be cheaper than XJ scantools because, well, nobody bought Premiers or Monacos. They'd also be ripe for reverse-engineering.

The AMC/Renault Medallion may be a long-shot model to look at for scantools. It's an oddball in that it used a 2.2-litre 4-cylinder motor shared only with the 1986-up Peugeot 505 in the US, but the Peugeot did not use the same engine management as the Renault (again, IIRC). That said, the Renault may use the same protocols as the XJ, etc.

I don't remember if the Renault/Renix ECUs stored codes. I think that they did, and that they could be recalled by grounding a particular pin on the harness and switching the ignition on and off while watching the check engine light for flashes that corresponded to certain codes. Then again, I could be confusing this with the behaviour of the Bosch Motronic 1.3 ECU in later EFI Peugeots, so take that with a grain of salt.

Where all of this gets complicated is that with Chrysler buying out AMC/Renault in 1988, a lot of the Renault electrics and electronics were gradually phased out on legacy models through about 1993. This makes it difficult to pin down compatibility to exact dates - I've seen Premiers with parts stamped Renault, AMC, and Chrysler on the same vehicle.

I'll ask around the Renault folks for confirmation of this. They probably can't answer protocol-specific questions, but should at least be able to give some idea as to compatibility.

One other thing to consider: Bosch K-Jetronic injection may be a possibility for a retrofit to a Renix XJ. This would probably involve some not inconsiderable physical rework, but it would give you mechanical fuel injection. Early injected Porsche 911s used the system in a 6-cylinder configuration, as did the Peugeot 604 V6 and DeLorean as well as some BMWs and Mercedes. It was also used in early 4-cylinder injected Peugeot 505s as well as a couple of others, but given its design (fuel distributor vs. common rail) you're better off sticking to the 6-cylinder cars if you're looking into it.

Frankly, I think the Renix system is better than K-Jet, but from a hardening perspective K-Jet has some advantages (and disadvantages, mainly in making the AFM work).

Post Reply