Fred's firmware development diary

Official FreeEMS vanilla firmware development, the heart and soul of the system!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Latest firmware still works and aarons app is working mint too. Just need more packet types to test with and more time to do it in. This weekend should be a good one i would think. Hopefully I can have some custom packet infrastructure to play with by then. That would aid the hardware speccing out quite a bit i reckon.

Bed!

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Yesterday and this morning I spent working on some documents and a little code.

It has become apparent that I need to specify in detail the interface to the data on the device.

Additionally I've started thinking about ways to test the connectivity.

Finally I've started working on a memory management description document that should explain the schemes occuring in the code pretty well.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I've felled a tree this morning and have the rest of the afternoon to Freeeeeeems it up. I'll be looking into the hardware interface stuff and pin outs. Hopefully I can come to some solid conclusions with the aid of some data sheets, measurements/observations, reading and thinking.

I'd like to spend tomorrow on adding to/finishing the serial stuff to some extent, but will carry on with the hardware stuff if I haven't completed it. If I have, maybe I can knock out a new version with many happy new features and improvements etc.

I should setup a build env on the good ladies vista box too and ensure I can generate a functional make file easily from my main one. At the moment it may be possible to grep some lines out of it and change the path of the executables. We'll see...

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I forgot that I had left it unbuildable last night, so I've just fixed that and tidied up a few loose ends here and there. I've checked it in and I'll just ensure it still functions on the device and then get on with that hardware stuff on the 20" monitor. Couldn't really check it in with bugs/mistakes and half finished...

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Memory break down, not quite granular enough for a full analysis, but interesting none the less. I'll have to figure out how to get a break down of code size for each function so I can find out where the fat is and whether any ISRs are too big. Currently only the engine position ISR is too tubby and I need to do quite a bit of work on that anyway, so thats not a worry. Note the nicely arranged flash regions :-)

The size reported as the total is misleading because it includes variables as well as flash. I could split the paged and buffer stuff out to yet another file to clear up the report, but it's probably not worth it at the end of the day.

Code: Select all

   text	   data	    bss	    dec	    hex	filename
      0	   8240	      0	   8240	   2030	zobjects/freeEMS.o
      0	     16	      0	     16	     10	zobjects/staticInit.o
    440	      2	      0	    442	    1ba	zobjects/main.o
    656	      0	      0	    656	    290	zobjects/fuelAndIgnitionCalcs.o
   2726	      0	      0	   2726	    aa6	zobjects/commsCore.o
    669	      0	      0	    669	    29d	zobjects/coreVarsGenerator.o
    165	      0	      0	    165	     a5	zobjects/derivedVarsGenerator.o
    306	      0	      0	    306	    132	zobjects/flashWrite.o
   1534	      0	      0	   1534	    5fe	zobjects/tableLookup.o
    240	      0	      0	    240	     f0	zobjects/interrupts.o
   1588	      0	      0	   1588	    634	zobjects/init.o
    747	      0	      0	    747	    2eb	zobjects/utils.o
    170	      0	      0	    170	     aa	zobjects/globalConstants.o
   2103	      0	      0	   2103	    837	zobjects/injectionISRs.o
    337	      0	      0	    337	    151	zobjects/ignitionISRs.o
   1460	      0	      0	   1460	    5b4	zobjects/enginePositionISRs.o
    811	      0	      0	    811	    32b	zobjects/commsISRs.o
    371	      0	      0	    371	    173	zobjects/realtimeISRs.o
    314	      0	      0	    314	    13a	zobjects/miscISRs.o
      0	   1024	      0	   1024	    400	zobjects/FixedConfig1.o
      0	   1024	      0	   1024	    400	zobjects/FixedConfig2.o
      0	   2048	      0	   2048	    800	zobjects/IATTransferTable.o
      0	   2048	      0	   2048	    800	zobjects/CHTTransferTable.o
      0	   2048	      0	   2048	    800	zobjects/MAFTransferTable.o
      0	   4096	      0	   4096	   1000	zobjects/FuelTables.o
      0	   4096	      0	   4096	   1000	zobjects/FuelTables2.o
      0	   4096	      0	   4096	   1000	zobjects/TimingTables.o
      0	   4096	      0	   4096	   1000	zobjects/TimingTables2.o
      0	   4096	      0	   4096	   1000	zobjects/TunableConfig.o
      0	   4096	      0	   4096	   1000	zobjects/TunableConfig2.o
     52	      0	      0	     52	     34	zobjects/flashBurn.o
  14689	  41026	      0	  55715	   d9a3	(TOTALS)
echo "Flash image size is" `echo \`cat zoutput/freeems-v0.0.18.s19 | wc -l\` "* 16" | bc -l` "bytes."
Flash image size is 48528 bytes.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Well, sleeping in, fighting with vista, doing the XP write up, fixing the internet connection at the inlaws first, buying a new dsl modem has eaten my day. There is a pretty write up for XP though :

http://www.diyefi.org/forum/viewtopic.php?f=8&t=508

And a comments thread if anyone has anything to say :

http://www.diyefi.org/forum/viewtopic.php?f=8&t=509

I'm working on the pin out stuff tonight until and after dinner.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Figured out how to pass off some of the pin out doc work to Jared and Dave :-)

Have plenty of work cut out for the train tomorrow including some of the decoding of data for that.

Off to bed now, no caffeine in the fridge = earlyish night...

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Well, this morning I spent working on an example settings file and on the tube I stood with EEE in hand and read through most of the 8 page thread on IO configurabililty. I've also 75% completed a memory management document which should explain some concepts to those wishing to get to know the code well.

I think the documentation with this project will be nothing short of exceptional when we are done :-) It's already pretty good in many areas.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

The train ride was most productive in terms of interfaces.

I got good work done on the hardware interface and the tuning tool interface.

More on that later if I make enough progress to post up about it :-)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Image

A FreeEMS developers life ;-)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Locked