How did hondata add map columns?

K-Series Programmable ECU installation questions / support issues
Locked
Razathorn
Posts: 469
Joined: Tue Jun 14, 2005 12:17 am
Location: Lenexa, Kansas, USA

How did hondata add map columns?

Post by Razathorn »

I was reading on clubrsx, in one of the many threads with the general hondata vs CN theme (re: injectors) and ran across a little gem that made my programming brain go 'wha...'.

Basically, you guys said that the factory rsx ecu has 10 columns for map pressure and you added additional columns for boost. How the heck did you pull that off... the adding columns thing. I thought that the table sizes would have to be hard coded in the ecu itself... something hondata couldn't modify.

For example... and this gets CS intense, how is the table stored in the ecu... is it a static structure in memory... one with a fixed hard coded size at a given offset... or is it potentially a linked structure you were able to expand on by determining what kind of structure you were dealing with in a debugger (say a btree or hash for instance).

I'm most curious how you made the ecu use additional tables... did you have to seak out and change constants with a hex editor? How much of the ecu code in the ecu is 'flashable' -- ie can you replace the actual 'running processes' on the ecu or simply flash memory regions that the honda program uses. Are handy things like lean cut and various other features you have added flashed to the honda ecu as executable binary code or is that done in somewhat of a 'hook' fashion by the daughter board.

Wow, I imagine I confused a quite a few people outside of the hondata hackers ;).
smp606
Posts: 6
Joined: Tue Apr 26, 2005 3:27 pm

Re: How did hondata add map columns?

Post by smp606 »

Razathorn wrote:I was reading on clubrsx, in one of the many threads with the general hondata vs CN theme (re: injectors) and ran across a little gem that made my programming brain go 'wha...'.

Basically, you guys said that the factory rsx ecu has 10 columns for map pressure and you added additional columns for boost. How the heck did you pull that off... the adding columns thing. I thought that the table sizes would have to be hard coded in the ecu itself... something hondata couldn't modify.

For example... and this gets CS intense, how is the table stored in the ecu... is it a static structure in memory... one with a fixed hard coded size at a given offset... or is it potentially a linked structure you were able to expand on by determining what kind of structure you were dealing with in a debugger (say a btree or hash for instance).

I'm most curious how you made the ecu use additional tables... did you have to seak out and change constants with a hex editor? How much of the ecu code in the ecu is 'flashable' -- ie can you replace the actual 'running processes' on the ecu or simply flash memory regions that the honda program uses. Are handy things like lean cut and various other features you have added flashed to the honda ecu as executable binary code or is that done in somewhat of a 'hook' fashion by the daughter board.

Wow, I imagine I confused a quite a few people outside of the hondata hackers ;).
One thing....I am pretty sure the "space" for the boost tables was made available by removing the stock ignition-retard tables. I think this was mentioned a while back.
damonEK20
Posts: 6
Joined: Tue Aug 09, 2005 1:24 pm
Location: New Orleans, LA

Post by damonEK20 »

The ECU is a programmable OKI. Google OKI CHIP MANUAL RSX and you'll find it. It's a fully programmable universal CPU with 128 or 256k for assembly code and data (looks alot like the older intel CPUs I studied back in college, actually). I doubt fuel tables and such would be stored in hardware tables, any table structures would be defined by code. It is remarkable what Hondata has done, but then it is their job, maybe it's not as complicated as we all might think.
Locked