HS GMLAN Gateway

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Been working on a pet project with help of a few other members here, and about ready to start production. But looking for a little more input on best options before finalizing the code.

normal_HEFI-N2k-GW.jpg


Earlier this year I developed this little IP67 rated CAN-2-CAN gateway for some performance boat engine builders. It converts Holley's EFI engine data to the NMEA-2k protocol common in all modern chart plotters and electronic gauges found on boats. Allowing them to connect aftermarket ECMs to modern displays with a CANbus link. Much like the Edge CTS, but rather 10-15 inch units, direct sunlight viewable, and waterproof.

normal_DSCN2087.JPG
MIBS2013_Scout_Garmin_8000_helm_cPanbo-thumb-465x335-7130.jpg


The original LLY powered boat was equipped with these nice J1939 monochrome displays by PPE shown above. They worked great, but only displayed SAE standards data. And of course, GM never stuck to those standards very well. So oil pressure, oil temp, boost, EGT, and fuel level were on analog gauges. When I wanted to measure fuel consumption, I used EFIlive or a friends CTS. Which worked fine long as it was dark outside... Then along with the LLY, went the J1939 option. Limiting the compatible display and gauge options.

So for the past few months I've been compiling everything needed to convert late model high speed GMLAN protocols into J1939 and N2k like we did with the Holley. Starting with the Duramax of course.. This should once again open it up to the largest selection of analog or digital display options. No need for double sensors, or extra wiring on engine swaps. If your into old school dials, a couple companies even make J1939 analog style gauges just for you. Either way, it's just a simple two wire connection to ecm/tcm and your done.

Where I'm right now is deciding what engine (and transmission) parameters makes the final cut. Plus anything I've missed that should be in there. Some pids are limited by the protocols difference. IE, fuel pressure under J1939 typically only goes to 1000kpa or 145psi. There may be another J1939 high pressure option I've overlooked. But is fuel pressure that important?

Second, would you rather have an oil temp or fuel temp gauge? If custom tuned, one could possibly zero out those fuel temp multiplier tables, and relocate that sensor down to the filter head. We can include such options if feasible. So below is my list thus far. Please let me know your suggestions.

[Engine]
RPM
Coolant Temperature
Oil Pressure
Fuel Level
Fuel Temperature
Battery Voltage
Throttle Position
Load
IAT2
Actual Boost PSI (Map – Baro)
Fuel Rate (MPG or GPH)
MAF Rate - Grams Per Sec
DSP / Power Level
MIL Indicator
Water In Fuel Indicator
Low Oil Indicator

[Transmission]
Current Gear
Speedometer
Converter Clutch
Temperature
 

THEFERMANATOR

LEGALLY INSANE
Feb 16, 2009
3,890
44
48
44
ZEPHYRHILLS, FL
If you're setting it up as a gateway for people doing engine swaps, then trans state would be nice to tell when in tow haul or normal mode. I cut the logic module out of a gauge cluster just so I oculd get an indicator to tell me when I was in tow/haul mode.
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Tow Haul on/off was actually one of the first CAN messages I isolated. So guess we just need to find that matching display PGN for the J1939 output side..

Anyone with industrial equipment experience happen to know what those display tow haul as?? Am certain Allison used a specific name for that function, being their primary market.
 

SmokeShow

Well-known member
Nov 30, 2006
6,818
34
48
43
Lawrenceburg, KY
What is "load"?

Seems like Rail Pressure would be nice to be able to keep an eye on instantaneously with a gauge?

Am I misunderstanding what this contraption is for? :confused: Because I think you can watch that and a multitude of other engine parameters over the OBDii. I'll assume most any repower project with a dmax would still utilize an OBDii port and therefore all features communicating over those lines can be watch/monitored instantaneously through it, no?
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
What is "load"?

Seems like Rail Pressure would be nice to be able to keep an eye on instantaneously with a gauge?

Am I misunderstanding what this contraption is for? :confused: Because I think you can watch that and a multitude of other engine parameters over the OBDii. I'll assume most any repower project with a dmax would still utilize an OBDii port and therefore all features communicating over those lines can be watch/monitored instantaneously through it, no?

Engine load calculated. Same as you'd see in EFI or other tools.

Yes they are basically the same thing. But OBDII protocol is slightly different from high speed GMLAN. You have the OBDII specific rule set that fit about any car out there. Used in apps like Torque. Then you have this other GM set of rules that are specific to the manufacture and certain models. Both use the same lower level two wire Bosch CAN protocol and packet structure for data. But OBD is the least important messages on our network. It "requests" some info, and then a node like the ECM sends it back to the diagnostic device. And there is certain things OBD won't do by design.

What GM uses to communicate between different nodes (ECM,TCM,BCM,) runs on the same wires, but has different ID's, message formats, and are of a higher priority. So when the TCM tells our ECM to torque limit the engine because it's shifting, that gets handled well before those OBDII message from a tuner or app asking what the air and trans temps are.

On the other side of our gateway we have the SAE standards J1939 and NMEA 2k using a totally different protocol. Common to heavy equipment and marine, which doesn't speak OBDII. These "broadcasts" data to everyone on the network using a different speed and packet format from our newly deployed GMLAN. Faster than the "requested" way of doing things. Plus every ECU or display manufacture typically uses the same PGN set, no matter what engine or transmission. Also allows for multiple engines to share the same network... Makes life much easier for displaying a bunch of data.

So this little gateway is simply a language translator (with an optional BTLE modem). Who's only job is to convert specific GMLAN or OBD messages into J939 or N2k messages as quickly and efficiently as possible. Lets you connect multiple engines into a single network cable that might have multiple analog gauge sets or digital displays. IE; a twin engine boat with two helms. Then you can chose what, where, and how you want to display all that data. Below is a popular weatherproof unit I think would work nice in a off road vehicles. Search J1939 or NMEA displays to see more options.

pv780_01e.jpg
 

THEFERMANATOR

LEGALLY INSANE
Feb 16, 2009
3,890
44
48
44
ZEPHYRHILLS, FL
Tow Haul on/off was actually one of the first CAN messages I isolated. So guess we just need to find that matching display PGN for the J1939 output side..

Anyone with industrial equipment experience happen to know what those display tow haul as?? Am certain Allison used a specific name for that function, being their primary market.
Allison called it secondary shift schedule. Have to be careful of that one though as GM used the hardwired secondary shift schedule input to trigger the 4 low tables, and GM used a j1850 data bus signal to trigger the actual secondary shift schedule.
 
  • Like
Reactions: goodie454

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Think I finally found the rail pressure PGN. Matches up pretty close with Dmax MPa scale, so will add that one.

PID 164
- Injection Control Pressure
update rate: 1 time/s
resolution: 1/256 MPa (Uns/I)
source: Injection Pressure Sensor

On secondary shift being relate to tow haul in the Allison, not able to find a gauge indicator. Here is a searchable book link that has that definition described differently.
https://books.google.com/books?id=Xg2dBQAAQBAJ&printsec=frontcover

and a big J1939 PGN/SPN description list that doesn't have anything to match up.
https://www.sensor-technik.de/images/stories/pdf/download/m01-can_manual_j1939_en.pdf

So I guess we could make it an accessory indicator unless someone has a better suggestion from that info above.
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Ok I'm done logging CAN data... Not cause I've achieved everything I was after, but rather cause I'm done trying to think like a GM engineer. :violent:

I've stumbled onto some pretty interesting Duramax quarks over the last week worthy of further review by anyone who owns one.

1st, has anyone ever seen the low oil level warning pop up on a duramax??

They all have a pan EOL sensor. It's a simple 2 wire, ground to signal circuit. Because it's an actual CAN data msg sent to the dash, I figured this would be worthy of adding to my little protocol converter. So all I had to do is make the ECM think the EOL sensor was triggered and capture those data packets sent to the BCM. Easy right??

I did everything short of draining the oil out of an engine and driving the truck down the road.. No warning signal ever. No DIC msg, oil light, or ghostly voice saying "hey your engine is about to seize up..." I shorted it, left it open, started engine multiple times, held the rev's up over 2000r and so on. Nothing. This all after I attempted to generate the msg on my bench ECM setup for several hours without any luck.

Now lets take for example the "water in fuel" sensor, which is also a CANbus packet that pops up a DIC msg within seconds of tripping the filter sensor. Used a spare sensor for this test. It even stayed on for a couple run cycles after the sensor was returned to normal, AND set a hard DTC. Which I had to clear with a scan tool. Is it just me, or is that some messed up logic?

Then I also noted on my bench setup that the ECM doesn't "display" oil pressure values below 30psi. Yes it show them correctly in OBD scan tools, but not in streaming data packets destined to the IC. It only reads 00 or 30-120psi. And those seem padded by several seconds compared to an OBD tool values.

When you turn the key on, the oil pressure hex data being sent to BCM will read zero, then as you scale up the voltage "using a potentiometer" this would quickly jump from 0 to about 15psi for under 1sec, then next stop was 30psi value. While using a scan tool I could see all values from 0-145psi, but not in the IC destined data. So while logging data in my buddies truck, I verified that it was showing about 28 psi on the dash at hot idle, and about 25psi in EFIlive. The data packet being sent from the ECM to the BCM was a hex packet 0x29 which equals 30psi on my conversion scale. What the breaking point is to set low oil pressure light I never actually got around to testing.

Several other strange quarks were noted. Like there is no "digital" way to determine if the MIL illuminated. That light is hard wired to the dash, and even "State 03" under EFIlive, [which contains a MIL status indicator pid] doesn't work. Nor does the reduced engine power status pid. You can turn the MIL light on or off under EFIlive, but can't see it's status on the PC. However EFI will tell you when your foot is on the brake pedal. WTF...

Ok end of my rant. I have several more good ones, but just had to get those out of my head to make sure I'm not going crazy reading to much 110001001001....

-K
 
Last edited:

SmokeShow

Well-known member
Nov 30, 2006
6,818
34
48
43
Lawrenceburg, KY
I saw another one ask about what level it had to get down to in order to get a Low Oil message as they had ran it down very low and never kicked on. I think it was either an LBZ or LMM (can't remember if it was x_madmax or malibu that asked the question about the low oil light).

I've ran mine low but it never kicked a light on that I can remember.
 

malibu795

misspeelleerr
Apr 28, 2007
8,294
610
113
42
in the buckeye state
My low oil light would throw when the sensor was disconnected..

Also found at lest on my LMM oil pressure sensor is off(low) 10-15psi..

Very cool project!!!
 

Chevy1925

don't know sh!t about IFS
Staff member
Oct 21, 2009
21,743
5,911
113
Phoenix Az
My engine oil low light comes on every time im over 3 quarts low. but we are talking about an 02 LB7 setup as well....
 

SmokeShow

Well-known member
Nov 30, 2006
6,818
34
48
43
Lawrenceburg, KY
My engine oil low light comes on every time im over 3 quarts low. but we are talking about an 02 LB7 setup as well....

I've only ever had to add about 2 quarts to get topped back off. So I guess I just never got down low enough. :D

Mine's a dumb old 2002 also. :thumb:
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
My low oil light would throw when the sensor was disconnected..

Also found at lest on my LMM oil pressure sensor is off(low) 10-15psi..

Very cool project!!!

Was that also a LMM that set the light with EOL disconnected? If so I'll retest on a bone stock truck without any tuning. Possibly a DTC's disabled, will have to look into it.

Found many differences between the LB7 to LMM relating to DTC options. Like an LB7 will never limp on low fuel pressure. Was driving a stock truck the other day and rail pressure would drop under 6000psi at WOT and never set a code.. Owner wondered why it was such a dog.. :rofl:

I also may have found a work around on the MIL using an OBDII check DTC option. Gotta test it further.

Thanks for the input everyone.
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Just checked the DTC list in a customers LMM tune and swear every other engine circuit down to the AC clutch was listed. But no EOL. Strange. Like they wrote it out or forgot it..

There was however DTC settings for oil pressure sensor, along with my new favorites, the MIL circuit failure, and about 4 related to a bricked PCM...
 

THEFERMANATOR

LEGALLY INSANE
Feb 16, 2009
3,890
44
48
44
ZEPHYRHILLS, FL
Was that also a LMM that set the light with EOL disconnected? If so I'll retest on a bone stock truck without any tuning. Possibly a DTC's disabled, will have to look into it.

Found many differences between the LB7 to LMM relating to DTC options. Like an LB7 will never limp on low fuel pressure. Was driving a stock truck the other day and rail pressure would drop under 6000psi at WOT and never set a code.. Owner wondered why it was such a dog.. :rofl:

I also may have found a work around on the MIL using an OBDII check DTC option. Gotta test it further.

Thanks for the input everyone.

MANY LB7's have code for low rail pressure. 01's are the worst, but later trucks can as well. With that being said, mine would only hold 14,200 when my cp3 went, and it never coded. I know 01's pop it easy, while 02's seem to never, and p3-04 are hit and miss.
 

kidturbo

Piston Tester
Jul 21, 2010
2,552
1,398
113
Somewhere On The Ohio
www.marinemods.us
Update

Got most of the GMLAN data displaying in NMEA/2000 plotters this week. Still fine tuning a couple values and beta testing on a friends Dmax boat. But here is the final breakdown.

ECU - Value
ECM - RPM
ECM - Oil Pressure
ECM - Fuel Level
ECM – Engine Temp
TCM - Gear Position as F-N-R
ECM – Water In Water In Fuel Light
ECM – Rail Fuel Pressure as X10 output
ECM – Controller Voltage
ECM - BARO Pressure mb
ECM - True Boost Pressure = (MAP–BARO)
ECM – Engine Load
ECM – IAT2 as Outside Air Temp
ECM – Fuel Temp - "Sensor Shown As Oil Temp / Move To Oil Line"
ECM – Current Fuel Rate as GPH Value

I wanted to add EGT probe value in there, but as I understand once you delete the DPF settings you lose that EGT pid reading? Anyone found a work around for this besides a stand alone probe?

Now, who wants a J1939 version? Should be WAY cooler than N2k options above with these new J1939 network switches I found. Can you say push button start, idle control and a few others cool mods that come to mind...

Cheers,

-K
 

Attachments

  • imagejpeg_0_9.jpg
    imagejpeg_0_9.jpg
    178.7 KB · Views: 33
Last edited:

THEFERMANATOR

LEGALLY INSANE
Feb 16, 2009
3,890
44
48
44
ZEPHYRHILLS, FL
The NMEA2000 gateway would allow somebody to wire in say a LOWRANCE LMF-200 or LMF-400 to there truck, and get all of this data as well. Theres quite a few NMEA2000 gauges out now since most all of the outboards have gone to it now. It would allow for one gauge to display 2 or 4(the LMF-200 is a 2 1/8" and can do 2, and the LMF-400 is a 3 3/8" and can show 4 at once) parameters at a time.