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 »

We have missing teeth! :-)

viewtopic.php?p=18461#p18461

Image

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 new decoder has exposed some issues in the firmware which I need to take care of. So today is dedicated to the following two tasks:

1) Fix and install the new output ISR code and retest
2) Profile all critical code sections with the saleae and pin fiddling (all ISRs and major main loop sections.

I'll be doing various documentation and admin tasks and a few easy small things on OLV and the firmware too, maybe even MTX.

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 »

Last night I pushed a commit that disabled the firmware. That's all it did, so it was harmless, however that's the second time that I've put bad code up for people to use, and it is totally unacceptable and makes me a hypocrite. Today my priority is to change my dev practice such that it can't and doesn't happen again.
  • In future I will push all commits as done to a dev branch which is not recommended for use.
  • Once tested I'll push to the master branch on all servers.
  • All experimental code will only get pushed to my private repository on the server, this is already the case.
I'll modify my script and add a new script to the bin dir to automate this process.

My most humble apologies to Sim for this. I'm ashamed of what I did.

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 »

Done, see commit 384510307c5d108cd45c25e30b265f89a58a4fa9 for how to achieve this in your repo.
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 »

This morning I've completed the guide to using the issue tracker. It's fairly comprehensive and covers each step of the process from each person's perspective. If you need to use it for any reason, and don't know how, or only think you do ;-) here is the guide: viewtopic.php?f=54&t=1381

In other news, OpenLogViewer now has a facebook page: viewtopic.php?f=32&t=1386

I felt that it was time considering how much better the app has become recently with Ben's work on 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 »

viewtopic.php?f=32&t=1393

Full screen mode now in service! :-)
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 started writing an interrogation application such that I can more quickly prototype comms stuff in the firmware. That way I make myself independent from MTX and OLV in terms of data retrieval and even processing. I'm not planning to share the source of this app, but I am planning to distribute binaries of it and even require a dump from it in order to provide support services. This application will be instrumental in incremental development of the DDL format which will be used by tuner software to talk to the firmware. This is very definitely a side project while I develop firmware and not at all a focus. The information that it will provide is required for 0.3.0 and there is a lot of work to go into 0.2.0 before then. It will be very gradually improved in sync with the firmware as a sort of reference implementation. Right now it is very simple, and not worth talking about, except that it exists and shows the latest firmware identification information in good detail:

Code: Select all

################################################################################
###################### Initiating Interrogation Sequence!! #####################
################################################################################
Interface Version: IFreeEMS Vanilla
Firmware Version:  FreeEMS-0.2.0-SNAPSHOT-1-ge92379a-DEV
Decoder Name:      MissingTeeth-Crank-36minus1
Build Date:        14:40:06 Nov  6 2011
Compiler Version:  3.3.6-m68hc1x-20060122
Build OS Type:     Linux
Maximum Size:      2064
Echo length:       10
################################################################################
################### Interrogation Sequence Completed in 64ms! ##################
################################################################################
The format of the interface version is definitely going to change in future, and further information will be added, some of which is already in the firmware, but it's a nice little start.

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 »

Also, I forgot to mention, yesterday I put some time into the configuration guide! It's still very much a draft/skeleton, but it contains at least a mention of eveything you can/should/might want to play with in the current firmware. This will expand as the features increase and future documentation will be auto-generated from the source for consistency and accuracy and uptodateness. Skeleton thread is here: viewtopic.php?f=54&t=1085
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 »

Fred wrote:Last night I was working on Preston's stuff and came to the conclusion that he has a weird setup! :-)

Image

RPM, % input arrival error, which input event.

The reason for the steps in the error plot is just interference patterns due to sampling rate. The fact that it is of a larger magnitude with RPM is of concern. This effectively means that Preston's car has a variable width hall sensor, or that he has a mechanical issue. I can't fix that in software, sadly. Well, not by any reasonable means, anyway. It definitely comes under "won't fix" and/or "fix your car" :-)

The plot is interesting, though.

If it turns out that he doesn't have any mech issues, and it really does that, then we will switch him to a single edge decoder and call it a day. If he locks the dizzy then we will also add a latency setting such that he can get flat timing from idle to redline even with his input moving around like that.
Well, Preston welded the dizzy guts up and things are much better. He will test the new tuned angle decoder in a few hours and we'll find out of my math is bad or good. The car is in much better shape now, though. For the first time, it's on full control as opposed to just being additive to the stock hw timing. Cool!

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 »

A bit of nostalgia for those that are interested:

viewtopic.php?f=41&t=1413

:-)
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