Let's get a plan together.

OpenECU software executables and source code

Moderator: Freon

Let's get a plan together.

Postby crazymikie » Thu Jan 13, 2005 10:46 am

I'd like to breakdown the functionality of the project so we can divide different parts up and get going with this.

I was thinking of something like this:

1 - Core Functionality
A - Define functions for read/write of ECU data
B - Define functions for reading sensors

2 - Ability to Read ECU Image
A - Functionality to read Image
B - Ability to save Image to computer after being read

3 - Ability to Modify ECU Image
A - Define what fields control (fueling, timing, boost)
B - Define what legal values are for these fields
C - Create an interface to modify values
D - GUI to display maps
E - Calculate any checksums after modification

4 - Abiltiy to Write ECU Image
A - Functionality to Write ECU Image
1 - Flash kernel
2 - Ensure flash completes
3 - Error checking to prevent corruption
B - Interface to read Image from disk

Feel free to make any edits. I think this needs to be borken down further, but I hope it's a start. After we get these tasks down to a manageable size, we can figure out what code exists and what is needed.

Mike
crazymikie
 
Posts: 105
Joined: Mon Jan 03, 2005 6:45 pm
Location: Watertown, MA

Postby Nemis » Thu Jan 13, 2005 11:12 am

1a 2b read data (and data sensor)is not a problem.here you can see some simple program.

2a i'm working on it, but i have not a lot of free time :-(
2b after 24 this is very simple

3 & 4 an all concern write data:
I have fear to burn my ecu :roll: :oops: !
Nemis
 
Posts: 66
Joined: Thu Dec 30, 2004 3:58 am
Location: italy

Postby crazymikie » Thu Jan 13, 2005 11:39 am

Glad to see responses!

Here are some questions- What language do we want to write everything in? c is nice since it ports easily, (and I know how to program in it :)

As far as #3 goes, we don't have to edit the image live right now. We can save an image, then work on editing it offline. If we know where certain settings reside, we can come up with an offline editor. Then from that, an online editor might be possible :)


Mike
crazymikie
 
Posts: 105
Joined: Mon Jan 03, 2005 6:45 pm
Location: Watertown, MA

Postby cdvma » Thu Jan 13, 2005 2:57 pm

I think at least standardising in C is a good idea. Also dont use OS proprietary extensions if at all possible. Once we evolve to a GUI...I think we should pick a cross-platform graphics library.
cdvma
 
Posts: 86
Joined: Tue Jan 04, 2005 9:18 pm
Location: Roch. Inst. of Tech.

Postby bofh » Thu Jan 13, 2005 4:32 pm

Cross platform is good. Also add Palm and WinCE as "Platforms" we will want to port to. As to my contribution, my programming ability is poor, but my QA testing is top notch.
bofh
 
Posts: 50
Joined: Thu Dec 30, 2004 1:59 pm
Location: Houston, TX

Postby stanton » Thu Jan 13, 2005 4:43 pm

I'm glad we have some good heads here. A plan/structure is always good. I've been frustrated, being so excited about this project, and not being able to help (yet) technically. I was going to create a more visual outline (mind map) to try to help organize, but this list works well.

My suggestion is to keep building the outline as listed, even if one of the sections is "done". This lets us to review the approach and future gaps. It can also help create a structure with links to the "state of the art" on this board for the particular section.

I would add under 1 before A "Hardware for read/write of ECU data".
stanton
 
Posts: 9
Joined: Wed Jan 05, 2005 5:28 pm
Location: NJ

Postby cboles » Thu Jan 13, 2005 5:10 pm

Everything I have written is in C++ for the Windows console. Things are fairly well encapsulated, so the only OS specific things are serial port communications and impementation of time delays, which can be done by changing one class plus one function.
cboles
Site Admin
 
Posts: 1233
Joined: Wed Dec 29, 2004 5:45 pm
Location: Seattle, WA

Postby crazymikie » Fri Jan 14, 2005 9:10 am

Anyone have a good suggestion for a way to track all of this so that people could edit things and update them as they work on them?

I've used 'JSPwiki' before, which is nice. It's a web interface where users can edit web pages right on the server. I can set something up on my server at home if you think it would be useful.

Anyone?
crazymikie
 
Posts: 105
Joined: Mon Jan 03, 2005 6:45 pm
Location: Watertown, MA

Postby Visceral » Fri Jan 14, 2005 10:48 am

Programming Language
Preference for C/C++.

Design
Make a small library for all the serial communications and utility (message parsing, checksum, etc.) routines. That will make it easy to support command line, as well as GUI applications.

Platform differences could be handled with #ifdef blocks. If cboles has written Windows API serial routines, you can put that together with the POSIX example I wrote and basically be done.

Tracking Changes
Crazymikie, do you mean tracking code changes (a/k/a version control)? I would suggest setting up a CVS server. For more info see: http://www.cvshome.org
Visceral
 
Posts: 23
Joined: Thu Dec 30, 2004 10:21 am

Postby cdvma » Fri Jan 14, 2005 11:06 am

CVS is a great peice of software but needs to be dealt with carefully. Is openecu.org a dedicated machine that can host whatever or do you just have web only hosting?
cdvma
 
Posts: 86
Joined: Tue Jan 04, 2005 9:18 pm
Location: Roch. Inst. of Tech.

Postby crazymikie » Fri Jan 14, 2005 1:35 pm

I have experience with CVS and could probably set something up. It's been a while and I'd need to come back up to speed. For the last 5 years, I've dealt with ClearCase.

When I was talking about the wiki page, it was more to let people make changes to a master schedule with ownership and stuff and have everyone able to edit it online. It might not be all that useful, but if people seem interested, please let me know. here is a sample page. You can edit anything you want and the changes show up immediately. Not good for code management, however, good for exchanging ideas quickly.

http://c2.com/cgi/wiki?WikiWikiWeb

Mike
crazymikie
 
Posts: 105
Joined: Mon Jan 03, 2005 6:45 pm
Location: Watertown, MA

Postby yarikoptic » Sat Apr 02, 2005 9:21 am

cboles wrote:Everything I have written is in C++ for the Windows console. Things are fairly well encapsulated, so the only OS specific things are serial port communications and impementation of time delays, which can be done by changing one class plus one function.


Can you create a project on some free open source hoster like sourcforge.net? or because you own openecu you might want to host your own collaborative development tool like gforge... although it would be unnecessary burden.
Then we all could give it a spin, debug, add, fix etc... ;-)
yarikoptic
 
Posts: 25
Joined: Wed Mar 09, 2005 11:10 pm


Return to OpenECU Software

Who is online

Users browsing this forum: No registered users and 9 guests

cron