It has been almost forever since my last log, and to my followers, I apologize.
In point of fact, I'm terrible at logging things, but I did manage to write down some of the process as I went through it, so here I will bundle not one, but Three logs that I wrote long ago, but didn't post until now:
From some time in May 2015:
Greetings from the Road
![]()
The road trip has begun. I write this from the woods outside Mendocino, CA. New to the ECUality arsenal is the dash terminal - an Arduino Mega 2560 equipped with an Xbee and lit LCD display. The unit is powered from an ignition-switched 12V line from the dash fuse panel, so it comes on when the ignition is turned on. The ECU, which is in the engine compartment, communicates with the dash monitor via the Xbee wireless board. All serial functionality can be easily directed to USB or Xbee, so the dash terminal can access the full compliment of commands.
Currently I am only using the dash monitor it to measure oil pressure, but much more is in store for this unit. Eventually it will enable all of the following:
Remote control access to common commands (performance mode, log data)
Remote control selection of readings to display.
Alerts for electrical faults and unsafe sensor readings
Control the bow-mounted pneumatic traffic axe. (just kidding. probably)
And maybe: Remote re-programming (still mulling this over)
From a couple days later
Houston, We
have a miss
So far, ECUality has gotten us to our destinations on the
road trip, but the steep, winding driving through the coastal redwoods has
surfaced a miss of unknown origin, and it appears to be getting worse. A list of
observable miss properties:
- Duration:
each miss lasts an estimated 1-10 cylinder fires (it bucks)
- Frequency:
Started once every few minutes, now I get several misses in succession
when exiting every curve.
- Throttle
dependency: no definite dependency
- Warm/Cold
dependency: seems to happen mainly when engine is warm, but not 100% sure
it doesn't happen cold
- RPM
dependency: More pronounced at low
RPM, but no strong dependency.
Guesses about cause :
- Closed-loop
calibration is sending mixture too lean.
- Tach
signal from Hall sensor is cutting out
- Air
sensor signal is cutting out
- injector
driver is cutting out
Techniques to determine cause:
- Add
ECU code to check for and report anomalous readings for RPM and air flow
- Manually
enrich the mixture and see if performance improves.
- Add
ECU code to talk to the injector driver via SPI. (Wire library)
I'm going to do all of these. In this order.
From some time in June 2015
Miss Resolved
ECUality development has slowed, but it has by no means
stopped. I have now taken ECUality up
the California coast twice to Mendocino and
once up to the woodlands near Eureka.
It hasn't been smooth sailing every time. The trips to Mendocino revealed a miss, which
I later diagnosed as being caused by a mistake in the tach input circuit. I had erroneously assumed that the tach signal was the same
0-5V coming from the ignition module as it was going in. It turns out that while the signal going to
the ignition module was 0-5, the signal from the module (and to the ECU)
was 0-12V. My circuit had protection
that kept it from being damaged, but the signal was clipped so severely that
the signal to noise ratio was way bad, and occasionally the ECU would sense noise
as extra tach pulses.
The code I wrote to check for anomalous RPM readings (see
previous post) was what lighted the way. Every time the engine would miss, I would see RPM
fault reports on the dash terminal. This
let me know to look at the tach sub-circuit for problems.
The solution was very simple. I hacked a voltage divider onto the board at
the input to the comparator to bring the signal down to the 0-5V level that the
Schmitt trigger wants.
I see this is a couple of years old and I hope I'm not out of line here because I'm new to Arduino so much that I know almost nothing but I do something about engines. I don't know if anything you are doing with your project could be part of your "missing" problems but everything you've written along with your smog sheets indicate a classic vacuum issue. Your VW uses a return fuel system and experience would have me starting there. Its parameters are not forgiving and your project is about fuel. From there I would test the block gases recirculating to the intake. If you have AC consider if there is any possible relationship to your missing and AC. Off hand I don't know of any OEM ECU where AC monitoring\sensing isn't integral to fuel delivery. You also mention coming out of curves. Your VW power steering also effects vacuum. Off hand I can't tell you anything about the testing involved but it's based on the greater the steering wheel rotation, the more drastic effect on vacuum along with a more adverse effect on engine performance. Cost effectiveness has led to a lot of system integration that really should not have been used. Vacuum is an obvious cost saver with integration but it also leads to a lot of obscure sources for creating problems.
You've also brought up heated oxygen sensors. You haven't mentioned how much access you have to OEM program parameters but there are some controls here you can play with to fool or cheat OEM programming to accept out of range temperatures as normal. This will not be acceptable for your emission testing requirements though.
Just some thoughts here for your project.