Miata Turbo Forum - Boost cars, acquire cats.

Miata Turbo Forum - Boost cars, acquire cats. (https://www.miataturbo.net/)
-   ECUs and Tuning (https://www.miataturbo.net/ecus-tuning-54/)
-   -   Arduino as ECU? (https://www.miataturbo.net/ecus-tuning-54/arduino-ecu-50695/)

bloodline 10-05-2010 10:38 AM


Originally Posted by Techsalvager (Post 638951)
http://users.forthnet.gr/ath/twikico...a16CASdisk.jpg
Looks a little off compared to the 1.6 cas
off course thats probably fixiable but just giving you a view of the 1.6 disc

I just checked, they encode the same data... If you move my Crank timing sequence to the outer edge, and then invert it, it looks identical to the image you posted :)

Thank you for posting that, I mst say ou had me scared for a moment :)

bloodline 10-05-2010 02:43 PM

A new Disk, this one has the crank signal inverted and moved to the outer edge:

http://www.cutiemish.com/casdisc.jpg

bloodline 10-07-2010 09:39 AM

After quite a bit of testing my code seems to exhibit instability at random RPMs... Has anyone else noticed this, has anyonenelse tested my code?

I will profile my code asap, and see if I can find the issue... Stupid work getting in the way at the moment :(

bloodline 10-07-2010 04:20 PM

Ok, my ECU code is fine. It was my simulator code that was wrong :)

ctxspy 10-07-2010 10:15 PM

good to hear you're still working on it. if you ship me your arduino i'll test it on my car ;-)

bloodline 10-08-2010 08:48 AM


Originally Posted by ctxspy (Post 640386)
good to hear you're still working on it. if you ship me your arduino i'll test it on my car ;-)

An Arduino UNO only cost about $20... why not buy one and help out? I'm fine dealing with the software side, I'm quite experienced with software design (although hard realtime systems are quite new to me, and one of the reasons why I wanted to do a project like this), but while I understand the theory behind the electronics to interface with the engine, I have 0 experience and would much like someone with that experience to help out :)

For a laugh, I ported my code to my mBed board... Wow, this project would be much easier on a super fast mcu ;)

Techsalvager 10-08-2010 09:18 AM

will the uno do what is needed as well and have all the outputs? I may buy one and hook it up to bench setup with a 1.6 cas and ignitor\coils\spark plugs

bloodline 10-08-2010 10:04 AM


Originally Posted by Techsalvager (Post 640515)
will the uno do what is needed as well and have all the outputs? I may buy one and hook it up to bench setup with a 1.6 cas and ignitor\coils\spark plugs

The UNO has 14 digital I/O (of which 6 can be used as PWM, crudely put as analog outputs), it also has 6 separate analog inputs (which can also be used as Digital I/O) and a USB link... I'm no hardware expert but that would seem to be enough I/O for our needs.

It has 32k of code memory (more than enough for our needs, my barebones code uses about 4k) and 2k of RAM which is adequate. It runs at 16Mhz, with 1 instruction per cycle, so we can brute force a lot of stuff.

I/O pins 2 and 3 can trigger interrupts... Though I've opted not to use interrupts with my software design.

The I/O system is is all 5volt so spot on for the Mazda electronic system. The more powerful mBed device is all 3.3volt so would be a bit more involved to interface with the 5volt electrical system of the mx5...

I would say it's a fair bit better than the 6800 in the stock ECU.

My code is hardcoded to the mk1 (NA) CAS.

If you look at my code, you can see the input/output pins are configurable, so the software is flexible WRT hardware if need be.

-Edit- If you do get one, then let me know, and I'll send you my latest code.

bloodline 10-10-2010 06:50 AM

I found a dump of the '94 1.6 ECU ROM here:

http://forum.miata.net/vb/showpost.p...&postcount=332

I've been working through it to see if there is anything I can learn. It seems pretty straight forward and I'll build my timing and fuelling maps based on that data, which should give a good safe starting point.

I've also started thinking about a Laptop App to allow ECU parameter adjustment while the ECU is running (MacBook only for the time being, apologies)... that should be quite useful.

Techsalvager 10-10-2010 09:43 AM

good stuff bloodline

ctxspy 10-10-2010 10:42 AM

if you share your spec for communication i can write something in Java or C#

bloodline 10-10-2010 01:52 PM


Originally Posted by ctxspy (Post 641139)
if you share your spec for communication i can write something in Java or C#

That would be brilliant! I spend most of my days using Objective-C and C++ so I tend to keep my personal projects to those languages (I'm quite comfortable with most Asm languages too, hense my interest in micro controllers)... I will make the communication protocol very simple, we can bash out a spec together at a later date :)

bloodline 10-10-2010 04:52 PM

I popped into my local electronics store to pick up a couple of potentiometers, so I can test my analog code, and bought a piazo transducer... After a quick test, it looks like it would be quite easy to add a knock sensor to this project, would have to run extra wiring from the engine bay though as the existing loom lacks any spare wires :(

bloodline 10-14-2010 10:51 AM

I don't know if any one is still interested, but I have moved my injector code over to an interrupt based system, (the old system had a limit to the maximum injector open time) and also the coil dwell time is now adjustable. I will be releasing this new code soon. The project is now at version 0.5 :)

I hope someone will find it useful.

ctxspy 10-14-2010 12:04 PM

I'm still interested. I don't know that i'll use it on my car presently but it's something i'll follow and help where i can.

If i may humbly suggest -- slow down on your version numbers, as 1.0 is usually reserved for a working product :P

Techsalvager 10-14-2010 12:51 PM

depends on how someone does their versioning.

bloodline 10-14-2010 04:02 PM


Originally Posted by ctxspy (Post 643058)
I'm still interested. I don't know that i'll use it on my car presently but it's something i'll follow and help where i can.

If i may humbly suggest -- slow down on your version numbers, as 1.0 is usually reserved for a working product :P

Every time I do a large code rewrite or fundamental change in how the code is structured, I bump the 0.x. All subsequent improvements will bump the 0.0x. The first code that is proven to actually work will get 1.0 version number.

It's my system... :laugh:

ctxspy 10-14-2010 11:25 PM

got it. Let me know when you want to start talking about a configuration interface.

josdavlar 10-15-2010 10:42 PM

still watching this thread!

could you clarify what the CAS is and what that black and white disk is?

ctxspy 10-16-2010 12:11 AM


Originally Posted by josdavlar (Post 643927)
still watching this thread!

could you clarify what the CAS is and what that black and white disk is?

http://lmgtfy.com/?q=what+does+a+cas+do+on+a+miata

are you just trying to build up your post count??
having read your other posts (all on this thread) I can only imagine you're a non-miata guy and you joined this forum because of this thread. That said, please spend 5 minutes before posting questions to do basic research.


All times are GMT -4. The time now is 11:52 PM.


© 2024 MH Sub I, LLC dba Internet Brands