Firmware developent status

It's all about the code!
Post Reply
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Major milestone with https://sourceforge.net/p/rusefi/tickets/125/

C header for configuration header is now generated with a java tool from https://sourceforge.net/p/rusefi/code/HEAD/tree/trunk/firmware/rusefi_config.ini file

Next step would be generating the fields section of rusefi.ini with the same tool from the same file - this way it would be much easier to change configuration structure and keep all the offsets in synch between C and TS.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

We now have gen_config.bat & ConfigDefinition.jar

This tool takes our custom rusefi_config.ini plain text file and produces both TunerStudion rusefi.ini and C header engine_configuration_generated_structures.h
All the offsets within the configuration data structure are now calculated by the software, this makes the configuration structure much more flexible and reduces human error - and there were human errors in rusefi.ini

Because of that configurations would often be changed in an in-compatible way in the near future - that means that one should probably re-create TS project with each firmware update. At some point the configuration would freeze and things would get easy again.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Image

Start-up screen is a bit less confusing now, also custom icon - that was https://sourceforge.net/p/rusefi/tickets/135/

Who wants to implement https://sourceforge.net/p/rusefi/tickets/139/ ?

PS: I am leaving for a vacation tomorrow, WOO HOO!
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Good news: ChibiOS now supports two virtual serial ports via one physical USB cable, this might be cool since less cables less connectors less PCB space.

Bad news: that only works on OTG_HS device which uses PB14 & PB15, not on OTG_FS device sitting on PA11 & PA12 which is the microUSB on the discovery board.

And I have totally forgotten that the stm32 chip has two USB devices - so technically we do not need FT232 anyway. The only benefit if FT232 is that it does not have the https://sourceforge.net/p/rusefi/tickets/46/ issue
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Good news: you can now update firmware in one click from dev console start window

Other news: for some reason this only works each other time, probably something in the command

Code: Select all

openocd-0.8.0.exe -f interface/stlink-v2.cfg -f board/stm32f4discovery.cfg -c init -c targets -c "halt" -c "flash write_image erase rusefi.elf" -c "verify_image rusefi.elf" -c "reset run" -c shutdown
could be improved for the command to work always, not just each other time.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

TS Fahrenheit conversion now works for CLT and IAT, dev console can now display CLT and IAT in F also.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

#$%!#$% #$ % :( :(

It was a mistake that I always compile my stuff with Eclipse for myself (auto-generated Makefile) while the build servers uses our custom Makefile: https://sourceforge.net/p/rusefi/tickets/149/
$@#$ compiler do not know what it was doing, but it was SILENTLY breaking log() function so that log(x)==x! And usually it does not.

Fixed in #6949
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
kb1gtt
contributor
contributor
Posts: 3758
Joined: Tue Sep 10, 2013 1:42 am
Location: ME of USA

Re: Firmware developent status

Post by kb1gtt »

I think you closet compiler needs a name.
Welcome to the friendlier side of internet crazy :)
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

kb1gtt wrote:I think you closet compiler needs a name.
It's gcc version 4.8.1 (Sourcery CodeBench Lite 2013.11-24) both on the build server and on the desktop - it's the _configuration_ which was different which was causing this :(
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Meet the build server:
build_server.jpg
build_server.jpg (165.19 KiB) Viewed 76863 times
This 2005 Dell Dell Optiplex 620 Pentium 4 now has a stm32f4 board permanently connected to it. Why? Because trying the code on a real hardware is finally part of the continues integration! This should reduce the chance of getting a red light on delivery. See https://sourceforge.net/p/rusefi/tickets/150/

The full test cycle already takes 20 minutes and it would take more once Coverity is added into the script. Please PM me if you want to donate a less-then-10-years-old server or desktop.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
tigeryan
Posts: 27
Joined: Sun Feb 08, 2015 11:15 pm

Re: Firmware developent status

Post by tigeryan »

What type of specs would you like to have? I might have access to some hardware that is certainly better then that box....
Ford Festiva with Mazda Protege Block, Mazda Miata BP4W head and Protege intake w/mods, Ford Escort GT transmission ----- yup, it is a lemon!!! --- fun site https://mixdrinkenjoy.com
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

tigeryan wrote:What type of specs would you like to have? I might have access to some hardware that is certainly better then that box....
4Gb of ram and Windows. I guess this job is CPU and HDD bound. Not too loud since it's 8 feet from where my desk is.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Not really fixed, rolling it back :(
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Doing nothing but banging my head against two walls for the next ~10 days now :(

https://sourceforge.net/p/rusefi/tickets/152/
https://sourceforge.net/p/rusefi/tickets/155/
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
HeavyMetal
Posts: 1
Joined: Wed Mar 04, 2015 10:35 pm

Re: Firmware developent status

Post by HeavyMetal »

Russian,

Do you still need a computer? Give me your base requirements and I will see what I have. I think I have a Dell PowerEdge 2850 w 2 xeon procs and maybe 8 gig ram. I would have to crack it open and look. It would not be the most quite thing. I do have some desktops and some Precision laptops. All I would want is to pick your brain a lot. I am new to microcontrollers and C language. I do mostly C# and have done a little in C++. If you are interested, let me know.
shredator
contributor
contributor
Posts: 17
Joined: Tue Dec 24, 2013 12:49 am

Re: Firmware developent status

Post by shredator »

I have an extra board that I can hook up to the old build server if that helps anything, but it won't be windows...
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

russian wrote:Doing nothing but banging my head against two walls for the next ~10 days now :(
https://sourceforge.net/p/rusefi/tickets/155/
This was a bug in Chibi serial driver: https://sourceforge.net/p/chibios/bugs/558
#155 is now closed
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

EFI Analitucs have recommended I implement 'crc32CheckCommand' command in the binary protocol and it has improved Tuner Studio table editing A LOT - that's https://sourceforge.net/p/rusefi/tickets/148/

There is still some issue there, but it's way more usable now.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Firmware developent status

Post by puff »

Does this mean you give up the idea of table editing via dev console?
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

puff wrote:Does this mean you give up the idea of table editing via dev console?
I am in the ECU game, not in tuning software game. If Tuner Studio had text messages there would no dev console ever.

But the source code for dev console is open, while Tuner Studio is not. So if anyone wants to email a patch and make dev console better he should not hesitate :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
tomiata
contributor
contributor
Posts: 234
Joined: Sat Aug 02, 2014 2:30 am
Location: Texas

Re: Firmware developent status

Post by tomiata »

russian wrote:
russian wrote:Doing nothing but banging my head against two walls for the next ~10 days now :(
https://sourceforge.net/p/rusefi/tickets/155/
This was a bug in Chibi serial driver: https://sourceforge.net/p/chibios/bugs/558
#155 is now closed
Good to see that bug fixed. It looked like a tough one.
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Still bumpy with Tuner Studio integration, but auto-tune is getting closer.

https://sourceforge.net/p/rusefi/tickets/153/
https://sourceforge.net/p/rusefi/tickets/160/
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

[video][/video]
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Gone_AWOL
Posts: 7
Joined: Mon Mar 23, 2015 12:15 pm

Re: Firmware developent status

Post by Gone_AWOL »

What a fantastic amount of work. Congratulations so far.
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

https://svn.code.sf.net/p/rusefi/code/trunk/misc/logs/2003_dodge_neon/DataLogs/2015_Mar_28/

Now with first basic acceleration compensation logic.

Current logic is looking at d(MAP) per engine revolution, actually max(12 last values of d(MAP)). Then said max is multiplied by accelMult coefficient and this makes extra fuel, that's if this value is above accelThreshold.

accelMult = 0 (no enrichment)
Image

accelMult = 1 (with enrichment)
Image

Yellow line is the enrichment fuel, in %. Some unexpected enrichments are visible, would need to lift the threshold - currently it was 1 pascal of MAP.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

I've just renamed set_idle_pwm command to set_idle_position - that's because we now support stepper idle valves.

See also http://rusefi.com/wiki/index.php?title=Manual:Software:dev_console_commands#Idle_Control
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

Usability improvement: https://sourceforge.net/p/rusefi/tickets/168/

Let me know if you have other usablity ideas :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
kb1gtt
contributor
contributor
Posts: 3758
Joined: Tue Sep 10, 2013 1:42 am
Location: ME of USA

Re: Firmware developent status

Post by kb1gtt »

If it could fly across the room, make me some toast, then return the toast to me, that would be great.

Other features that would be nice, if it stored the list of custom commands in a text file or something like that such that it retains the prior commands upon re-booting the console AKA set_gain commands. I see it seems to do that once you type the commend, it would be kind of handy if it kept that upon close and re-opening the console. Or if you could drop and re-open the serial port. AKA, I seem to snag the serial port from time to time when I cycle power the STM. To fix it, I need to close the console, reset the STM chip / re-plug the USB, then open the dev console. Would be nice if I could disconnect serial, then reconnect instead of closing the program.
Welcome to the friendlier side of internet crazy :)
User avatar
AndreyB
Site Admin
Posts: 14292
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Firmware developent status

Post by AndreyB »

kb1gtt wrote:If it could fly across the room, make me some toast, then return the toast to me, that would be great.
Not going to happen, out of scope of ECU.
kb1gtt wrote:Other features that would be nice, if it stored the list of custom commands in a text file or something like that such that it retains the prior commands upon re-booting the console AKA set_gain commands. I see it seems to do that once you type the commend, it would be kind of handy if it kept that upon close and re-opening the console.
that was always an intention and that's an easy one, will make this happen: https://sourceforge.net/p/rusefi/tickets/173/
kb1gtt wrote: Or if you could drop and re-open the serial port. AKA, I seem to snag the serial port from time to time when I cycle power the STM. To fix it, I need to close the console, reset the STM chip / re-plug the USB, then open the dev console. Would be nice if I could disconnect serial, then reconnect instead of closing the program.
part of this is https://sourceforge.net/p/rusefi/tickets/46/
I believe this could not be resolved on our end completely, I am not sure but looks like STM reset or USB re-plugging would be required for now :(
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Post Reply