Fred's firmware development diary

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

Re: Fred's firmware development diary

Post by Fred »

Code: Select all

/home/user/workspaces/home/freeems-vanilla/src> make help
################################################################################
#                        Dependency And Target Summary                         #
################################################################################
#                                                                              #
#   Common targets:                                                            #
#                                                                              #
#       0) help - This comment block                                           #
#       1) all - Not all, just executes fast                                   #
#       2) fast - Compiles direct to object code and links once with no debug  #
#       3) slow - Three stage compilation with assembly retained               #
#       4) slowgc - As above, but with garbage collection during linking       #
#       5) full - Executes alldebug, slow, slowgc and size                     #
#       6) alldebug - Generates all debug output files                         #
#       7) install - Not yet implemented                                       #
#       8) release - Not yet implemented                                       #
#       9) clean - Removes all files and directories generated by building     #
#                                                                              #
#   Second level targets:                                                      #
#                                                                              #
#       Stage one:                                                             #
#                                                                              #
#           1) preprocess - run the C preprocessor over the raw C files        #
#           2) compile - compile the preprocessed C into assembly              #
#           3) assemble - assemble the assembly files into object files        #
#                                                                              #
#       Stage two                                                              #
#                                                                              #
#           1) link - Generate ELFs objects                                    #
#           2) gclink - As above, but with garbage collection                  #
#           3) s19 - Create s19s from elfs                                     #
#           4) gcs19 - Create s19s from gc elfs                                #
#                                                                              #
#       Stage three:                                                           #
#                                                                              #
#           2) maps - Memory map files                                         #
#           3) rees - Readelf dumps                                            #
#           4) elfdmps - Classic objdump output for final elfs                 #
#           5) objdmps - Classic objdump output for each object file           #
#                                                                              #
################################################################################
Getting closer :-)

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Well, the release process has been a bit rushed so don't expect it to be perfect. I'll tidy it up tomorrow night at some point with a bit of luck...

0.0.19 Doxygenated is released!!

http://freeems.aaronb.info/docs/doxygen-html/

Enjoy the much improved docs at the above link.

Release notes are now on the web :

http://freeems.aaronb.info/docs/doxygen ... Notes.html

As are change logs :

http://freeems.aaronb.info/docs/doxygen ... eLogs.html

I haven't uploaded the bzip2 file yet, but you can get a copy from this tag on github if you want it :

http://github.com/fredcooke/freeems-van ... oxygenated

click the first commits hash and then download.

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I had better get around to tidying up the last release situation tomorrow night... I'd forgotten about that.

The functions sendXXXXBusyWait don't work... don't use them... I'll look into it tomorrow...

Also don't use the debug functions from paged flash code with local strings. Again, more on that tomorrow, might just rip them out, not much use anyway...

In other news :

http://pastie.org/376895

We have some limited unit testing. I need to tidy it up tomorrow but it should be sweet :-)

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

This week has been another insane week...

The fact that it snowed a bunch and I had to work via VPN didn't really help much either.

Hours for Jan / Feb so far 52 52 57 42 52 - the first four of those you can add 20 hours traveling time per week to and you can see why FreeEMS has been a bit quiet lately. I'll be cutting back starting monday, don't worry.

This weekend I will try to really make the most of. I have hardware and software changes to make for a number of things. With a bit of luck I can get some of that tidied away and complete and start on something interesting.

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Docs, firmware and code are now available from sourceforge for 0.0.19.

https://sourceforge.net/project/showfil ... _id=659852
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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I feel like git hub has caused me to neglect this thread. Before when my code was private between releases I felt the need to share constantly what I'm doing, but now it's obvious because it's all on github.

So, I'll try to keep you all (1 or 2 of you) posted regardless from now on.

I'm currently working on 4 things :
  • Comms changes to new way of doing things.
  • Test framework for functions that it makes sense to test.
  • Scheduler implementation for use by all decoders.
  • Refactoring my decoder to split the fuel+ign stuff out to sharable places.
I'll let you know when any of this gets anywhere worth playing with.

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I *LOVE* shower ideas!!

I just had one of the best ideas for code on this project to date, in the shower. Epic. Will try to code it up in the morning.

Jotting down a note about it now.

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

I got some good work done on the shower idea, and will probably work on it again tomorrow too.

In the mean time though, for those not following Aaron's threads, I've written a C utility to read binary dumps of comms data from FreeEMS and print out stats on it. This quickly exposed two significant bugs which I didn't know about and consequently they are now fixed. If anyone want's to take the C parser and turn it into a tuning util, go right ahead :-) (sean, loader util?)

In other news, I thought I'd post here about Aaron's lastest work on the tuner. He has added a binary file reader to it such that he can read large dumps of data from my box or any other box and the app will behave much like it is connected to the device. This is somewhat good news as it means really effective testing and development can be done without a xdp512 chip or card.

So, what am I getting at? If anyone reading this is good with python, get git, get Aaron's source and get hacking :-) Currently it's a wee bit slow to parse the stream of data. It also appears to be screwing up reception of some packets for some reason. I think Aaron has a handle on that last one though. If anyone wants to help out, making the tuner faster is a good way to help right now :-)

Additionally, adding new stuff to it as found assigned to him and Ben in the mantis instance is also a good way to go.

More news from me and/or him as it comes to hand!

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Retraction :

It's not that slow afterall :-)

10% python cpu usage with my xterm minimised or covered.

This is fine. It's still doing something funny with packets, but it should be fast enough, yay.

I added pysco support to it, but it didn't appear to make much difference really. 6.5% to 7.5% instead of around 10%.

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: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Fred's firmware development diary

Post by Fred »

Drum roll PLEASE!!!

Tonight I cracked out eclipse and a terminal, built the code, looked at the git situation, started writing some documentation to break me back in gently, read through the comms file (one of the biggest) and started to warm up again! It would appear to have been nearly two months since I did anything significant on the code. Not good. I'll probably spend tomorrow on the train getting back into it too. I'll spend my evenings on the server setup such that we can migrate away from go/no daddy asap. The new server should be faster at least for a while, and I can automate backups etc with it so it's all round better in every way really, cept cost, but it's going to run quite a few websites so that will be spread out and blend into nothing.

Additionally, I have various people bugging me about making progress. Gearhead, jharvey, aaronb and others too. Best I get stuck back into it as hard as I can.

More to come soon.

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