Originally Posted by Joshboody
Very interested... wish I was a computer guy and understood this stuff, but I know nothing.
Is open sourcing primarily just altering table values? Eventually, could we have access to the calculations/relationships between them? Maybe change (or eliminate) table relationships. Just curious.
What's the timeframe involved with cracking the DME... do you have to translate from German, and/or are you actually tracing to the electrical input/output?
Reading the DME didn't involve much more than gaining read access to the flashable memory/ROM. In the case of most modern DMEs this involves dealing with some moderate level encryption. So working out the encryption keys was necessary. We actually did this through putting some of our in-house resources to work. Within a 50 yard radius of my desk, we probably have access to more raw processing power than most cities in the US. So that helps.
Once we have this ROM (2.1 meg file), we open it up in some sort of map editor. We then set up a definition file, for this particular ROM file that provides a usable framework. By this I mean that it locates the map addresses and converts the raw hex data into useable map/table data. This is the part that I'm not too familiar (yet) with as it involves a fundamental knowledge of MSD80/81 specific tuning. But once these definition files are created (with the help of Shiv and whomever else is willing to help), the rest is just tuning as you would using a closed tuning system. But the advantage of open source is that it is constantly and infinitely updatable/definable as the user would have access to every bit of the flashable DME code. Not just the info that the tuner wants to give you access to. This usually open up a new world for enthusiasts like us and leads to some pretty amazing functionality breakthroughs that wouldn't have been possible or likely otherwise.
Give a man a fish and he can eat for a day. Show him how to fish and he can eat for the rest of his life. Or something like that
[Screenshot of a ROM file show below. Left column is hexadecimal format. Right column in ASCII]