P38A My first EAS Fun

This site contains affiliate links for which LandyZone may be compensated if you make a purchase.
Okay, so when I say 'spliced in' I connected directly to the ecu connector, to cut out any possibility of a break in the wiring between the ECU and the ODB port.

When connected via the ODB I get nothing back over the serial connection, just 'PP' (which I think indicates a communications timeout).

When connected directly to the ECU I get something back, a stream of 80 / 28 messages which according to the EAS unlock documentation indicate that the serial port is connected correctly, but can't sync with the ECU.

The dash beeps and shows 35Mph when you connect and the ecu power cycles true, I expected that, but it then continues to beep every couple of seconds which is the bit I don't think is expected.

I've now removed the ECU entirely and have successfully raised the car by Jumpering various pins on the connector, so proved that the compressor and valve block work fine. The backs drop overnight, so I'm guessing the rear air bags are due for replacement, but I'll check that with a soapy spray bottle.

I suspect the problem with communication is down to my laptop (I run linux, so have to run the EAS unlock suite in a VM, I think this is buggering the communications) but it definitely doesn't connect at all via the ODB port and does via the ECU pins.

I think I'm just going to make my own ECU so I can connect to it over wifi, get rid of the self levelling and generally make it a bit more transparent and easy to see what's going on.

As said earlier get everything back to standard and start from that. You are making things more complicated than they need to be.
 
As standard I can't connect to the ECU via the ODB port at all.

Tried 2 different laptops, 3 different usb to serial devices, several different EAS type ODB cables and lots of different com ports. There's no communications at all.

Directly to the ECU I can communicate, but can't sync. It will even read back some of the data (fault codes etc) but won't write anything or clear faults. As per the documentation this is an indication that the EAS software can communicate, but the ECU won't sync.
 
As standard I can't connect to the ECU via the ODB port at all.

Tried 2 different laptops, 3 different usb to serial devices, several different EAS type ODB cables and lots of different com ports. There's no communications at all.

Directly to the ECU I can communicate, but can't sync. It will even read back some of the data (fault codes etc) but won't write anything or clear faults. As per the documentation this is an indication that the EAS software can communicate, but the ECU won't sync.

Long lists of contradictory faults is bad comms. EASunlock is designed to run off a windows laptop it MUST have netframework installed. If you have a serial to USB adaptor you MUST load the adaptor driver BEFORE you connect EASunlock to computer. Maybe the Linus comp is one of the problems.
 
Make your own ECU to replace something that works perfectly well? To do the job properly is not that simple, just catering for air loss in the system to keep the car level is interesting.
The EAS is a good system and works reliably when maintained.

It doesn't seem that complicated, 7 12v outputs (compressor, inlet & exhaust valves and 4 corner valves) and then analogue inputs for height, and a couple of digital inputs for pressure / temperature.

An Arduino Uno has enough GPIO to deal with all that, and enough memory to store heights for various presets and so on.

I just need to do a bit of playing with the height sensors, I assume they all bottom out at different readings when the car is on the bump stops but (this is the bit I need to check) then all increase at the same rate as the car goes up.....

If that's true, it should be possible to self calibrate by dropping to the bump stops, reading the heights and using those as offsets for the heights. It should also be possible to self diagnose faults by dropping the car, depressurising the system then timing how long it takes to fill the tank. Then pushing air into each corner and seeing if the height sensor changes as expected. There's a lot of possibilities for things that the standard ECU doesn't do. It should be able to tell you which corner a leak is affecting without messing about with a squirty bottle. It should be able to keep pressure in the tank overnight when there's a leak in the air bags rather than trying to self level and then making me spend 10 minutes waiting for the tank to fill up in the morning.

I appreciate it works fine if it's maintained, and mine hasn't been maintained which explains my current problems, but there's always room for improvement.
 
It doesn't seem that complicated, 7 12v outputs (compressor, inlet & exhaust valves and 4 corner valves) and then analogue inputs for height, and a couple of digital inputs for pressure / temperature.

An Arduino Uno has enough GPIO to deal with all that, and enough memory to store heights for various presets and so on.

I just need to do a bit of playing with the height sensors, I assume they all bottom out at different readings when the car is on the bump stops but (this is the bit I need to check) then all increase at the same rate as the car goes up.....

If that's true, it should be possible to self calibrate by dropping to the bump stops, reading the heights and using those as offsets for the heights. It should also be possible to self diagnose faults by dropping the car, depressurising the system then timing how long it takes to fill the tank. Then pushing air into each corner and seeing if the height sensor changes as expected. There's a lot of possibilities for things that the standard ECU doesn't do. It should be able to tell you which corner a leak is affecting without messing about with a squirty bottle. It should be able to keep pressure in the tank overnight when there's a leak in the air bags rather than trying to self level and then making me spend 10 minutes waiting for the tank to fill up in the morning.

I appreciate it works fine if it's maintained, and mine hasn't been maintained which explains my current problems, but there's always room for improvement.

Oh dear me when are you going to start listening?
 
I did listen, there's a problem with the comms between my laptop and the ECU, more than likely because I'm having to run windows in a virtual machine and it's buggering the comms with the ECU.

At this point it's easier (and more fun) for me to build my own ECU than it is to solve the communication problem between my laptop and the current ECU.

What am I not listening to?
 
I did listen, there's a problem with the comms between my laptop and the ECU, more than likely because I'm having to run windows in a virtual machine and it's buggering the comms with the ECU.

At this point it's easier (and more fun) for me to build my own ECU than it is to solve the communication problem between my laptop and the current ECU.

What am I not listening to?

Why do you ask for help and when you get it dismiss it and take your own path? Get on with it no need to ask us is there. You may soon need some of these. https://www.island-4x4.co.uk/coil-spring-conversion-9502-terrafirma-tf222-p-28510.html
 
I originally asked for help with diagnosing the fault with the EAS, but then got further on while waiting for a reply, after that I thought someone might be interested in any progress I make with recreating the ECU since there was some interest in the powerfold mirrors I built.

Thanks for your input, I appreciate your point of view and your vast experience with the P38 electronics but you're right in that I'm not looking for help with it any more.

Thanks again.

@Datatek You used to (or still do?) make ODB -> serial cables for the EAS didn't you? I don't suppose you know if the 35 pin connector on the ECU is a standard part or something land rover specific / impossible to get hold of?
 
@pwood999 has played with the EAS, as has Datatek and @martyuk. I read somewhere of someone who made their own software to run the EAS to help diagnose faults but they never got as far as production as they fixed the issue. Cannot remember who that was now but an internet search would probably bring it up.

Bad comms can be the ODB port itself (take it out and check the back for corrosion) or the connector behind the A-post but I'm guessing others have already suggested that. I've got a feeling it won't communicate without the delay relay working as it should too. The EAS is more complex than it seems. That switch on the dash ain't all it appears from the outside for a start.
 
Yeah, the switch on the dash uses some sort of bit level shifting to work out which lamps to operate, I found a website a couple of days ago which had some details about a guy who was building his own software for the ECU (i think that's the one you mentioned as well) but struggling to find it again now, that had a load of useful info about the various logic levels and so on.

edit: ah ha, found it: http://www.nigelhewitt.co.uk/stuff/eas/

As a first stab at it, if I can get something working that will allow me to easily set heights on the 4 corners and then maintain them I'll already be happier with it than I am with the standard ECU.

'if this sensor goes below X close these relays until it goes above Y' shouldn't be too difficult.

I'm really not bothered / don't want it dropping down to motorway height above 50mph, and the self levelling while the car is stopped can go. Readouts from the height sensors on a screen in the car would be nice, and make it easy to find leaks. Being able to manually switch to the extended height profile (or just as high as it will go) would be nice when I have to get under there.
 
Last edited:
Yeah, the switch on the dash uses some sort of bit level shifting to work out which lamps to operate, I found a website a couple of days ago which had some details about a guy who was building his own software for the ECU (i think that's the one you mentioned as well) but struggling to find it again now, that had a load of useful info about the various logic levels and so on.

edit: ah ha, found it: http://www.nigelhewitt.co.uk/stuff/eas/

As a first stab at it, if I can get something working that will allow me to easily set heights on the 4 corners and then maintain them I'll already be happier with it than I am with the standard ECU.

'if this sensor goes below X close these relays until it goes above Y' shouldn't be too difficult.

I'm really not bothered / don't want it dropping down to motorway height above 50mph, and the self levelling while the car is stopped can go. Readouts from the height sensors on a screen in the car would be nice, and make it easy to find leaks. Being able to manually switch to the extended height profile (or just as high as it will go) would be nice when I have to get under there.

What a waste of time, just get the standard stuff working as it should. It performs very well. As i said honeymoon stood up in a canoe.
 
EASunlock software works perfectly in VM on my laptop. What host & Virtualisation are you using ? You need to make sure the host is passing USB comms to the VM properly. Also the Delay Relay is required to trigger the ECU into the correct mode for diagnostics. Otherwise you will get a long list of faults where 90% of them are not your problem. Leaks & compressor failure have implied faults rather than definite errors.

As far as the rest of the EAS is concerned, you can test the system and sort all the leaks with the ECU disconnected from the driver pack & valve block.
  • Get the pump working first & check the relay & thermal sensor. Then fill the tank.
  • Verify the valve block has no leaks
  • Check the connector between driver pack & solenoids
  • Now apply 12V to each driver pack input in turn and check the solenoids operate.
  • Next fill the air-bags and check them for leaks.
Once the air system & driver pack are working correctly, then you will probably find the existing ECU works. All the above is in the Guides. To make testing easier, you could build a manual control box like mine.

No point in trying to build your own ECU until the system works correctly. Nigel Hewitt has details on his unfinished project here.
 
Okay, given that:

I get a long list of faults back
I know the compressor, valve pack etc work (I can operate the system by connecting the various pins on the ECU connector)

I suspect the delay relay is knackered. Thanks for the helpful response @pwood999, I'd already ordered a new delay relay off ebay so will bung that in and will then more than likely be able to connect to the ECU and clear the faults on it.

However, I'm still going to build my own since a) it gives me something to do. and b) seems to wind wammers up for some reason.

I've contacted Nigel Hewlitt about the height selector switch, that's the only bit I'm stuck with really.
 
Okay, given that:

I get a long list of faults back
I know the compressor, valve pack etc work (I can operate the system by connecting the various pins on the ECU connector)

I suspect the delay relay is knackered. Thanks for the helpful response @pwood999, I'd already ordered a new delay relay off ebay so will bung that in and will then more than likely be able to connect to the ECU and clear the faults on it.

However, I'm still going to build my own since a) it gives me something to do. and b) seems to wind wammers up for some reason.

I've contacted Nigel Hewlitt about the height selector switch, that's the only bit I'm stuck with really.

You initially asked about a problem with your EAS. The long list of contradictory faults is bad comms. That is all that needed sorting. Then you start rewiring the bloody thing, for anyone to help you it needs to be standard. Or they will be chasing their tail for days. Now if you want to bugger about with a system that when standard and sorted works as well as it needs to by all means do so. But keep the link to the coil springs for future reference. You may need them.
 
I didn't rewire anything, I plugged 3 wires from the serial cable directly into the ecu rather than going through the ODB port. Until I did that, I didn't have the 'long list of contradictory faults' to prove bad comms, all I had was 'PP' which could mean anything from wrong serial port to completely dead ECU.

so by 'rewiring the bloody thing' I went from 'could be a long list of different things' straight to 'dodgy comms caused by your delay relay' with no fuss required.

Problem solved, thanks for the help all!
 
I didn't rewire anything, I plugged 3 wires from the serial cable directly into the ecu rather than going through the ODB port. Until I did that, I didn't have the 'long list of contradictory faults' to prove bad comms, all I had was 'PP' which could mean anything from wrong serial port to completely dead ECU.

so by 'rewiring the bloody thing' I went from 'could be a long list of different things' straight to 'dodgy comms caused by your delay relay' with no fuss required.

Problem solved, thanks for the help all!

So you have fitted a new delay relay and all is good then? You looked at fuses 24 and 29 i take it.
 
If you have to wait for ten minutes to fill the tank every time, you have a leak as the system does not try to level up only down so tank air is not used.
 
It doesn't seem that complicated, 7 12v outputs (compressor, inlet & exhaust valves and 4 corner valves) and then analogue inputs for height, and a couple of digital inputs for pressure / temperature.

An Arduino Uno has enough GPIO to deal with all that, and enough memory to store heights for various presets and so on.

I just need to do a bit of playing with the height sensors, I assume they all bottom out at different readings when the car is on the bump stops but (this is the bit I need to check) then all increase at the same rate as the car goes up.....

If that's true, it should be possible to self calibrate by dropping to the bump stops, reading the heights and using those as offsets for the heights. It should also be possible to self diagnose faults by dropping the car, depressurising the system then timing how long it takes to fill the tank. Then pushing air into each corner and seeing if the height sensor changes as expected. There's a lot of possibilities for things that the standard ECU doesn't do. It should be able to tell you which corner a leak is affecting without messing about with a squirty bottle. It should be able to keep pressure in the tank overnight when there's a leak in the air bags rather than trying to self level and then making me spend 10 minutes waiting for the tank to fill up in the morning.

I appreciate it works fine if it's maintained, and mine hasn't been maintained which explains my current problems, but there's always room for improvement.
The sensors are not precision devices, the readings are not consistent, the current draw for the compressor will flatten the .battery if you try to maintain height over night if there is any sort of leak and if the system is good there is no wait for the tank to fill or even for the car to level even if left for a week or more. I used to design and manufacture micro controllers for air powered systems, I don't think you have a clue how complex the system is.
 
The sensors are not precision devices, the readings are not consistent, the current draw for the compressor will flatten the .battery if you try to maintain height over night if there is any sort of leak and if the system is good there is no wait for the tank to fill or even for the car to level even if left for a week or more. I used to design and manufacture micro controllers for air powered systems, I don't think you have a clue how complex the system is.

You won't get through Keith he knows best. If it is the delay relay causing no comms it's the first one i have ever heard of doing so. The delay relay switches the EAS ECU on with ignition and switches self levelling on every six hours or so with ignition off those are it's main functions.
 
I'm not going to go into the replacing the EAS ECU with something else - there are benefits to it if you like to tweak things, but also, 90% of the time the standard system works fine if maintained - like most things with these vehicles..

Pet peeve #1 - it's not ODB - it's OBD... On Board Diagnostics.
Pet peeve #2 - does nobody look in RAVE or the ETM anymore?

If you can't communicate with the EAS ECU from the OBD port, but can at the EAS ECU then yes - there is probably a connection problem. I already know there's a connection inbetween the OBD socket and EAS ECU - which is at one of the notorious 'kick panel connectors' in the LH footwell. These connectors are knows for getting moisture in, corroding, and in some cases I have seen - the pin actually snapping off. A bit of a clean up of the wiring, and solder/heatshrink will fix that.

OK, so I know that, as it's an issue I've fixed numerous times - but it's shown in the ETM under the 'Data Link Connector'

ALSO going through the same connector is the wire from the OBD socket to the delay/timer relay - which again if that has corrosion/bad connection, then it might cause you not to get a good connection with the software. As far as I remember the delay/timer relay is used to reset the EAS ECU to start communications, so it's in a known state.

ALSO going through one of those connectors is the wiring between the EAS ECU and the ride height switch, so I think it's worth checking that out.

Dropping overnight at the back - yes, more than likely rear air springs. Mine had been gradually getting worse over the last 6 months to the point where it would be sitting on the bump stops at the rear overnight lately. I replaced the rear air springs over the weekend and it's so far sat for 2 days and the height hasn't moved at all. There was no real signs of wear on the air springs, but on closer inspection at different heights you could see fine cracking in the rubber.
 
Back
Top