malcom2073's EMStudio development thread. (Comments welcome)

Mike's cross-platform FreeEMS tuning application, written in C++ using QT. With Mike's natural coding talent and Fred's intimate requirement knowledge it went from concept to full tuning capability in just 8 weeks!
Post Reply
malcom2073
LQFP112 - Up with the play
Posts: 211
Joined: Tue May 01, 2012 4:17 pm
Location: Shrewsbury PA
Contact:

malcom2073's EMStudio development thread. (Comments welcome)

Post by malcom2073 »

Might as well have a collection of information about EMStudio.

Repo: https://github.com/malcom2073/emstudio
Website: http://emstune.com/
Unstable Windows and Linux(deb) (both 32bit) Binaries: http://mikesshop.net/EMStudio/

So, the status of EMStudio as it stands now,
Interrogation to get full list of locationids and verify ECU vailidity via meta data
Datalogging and collection of ECU information
Tunable 2D and 3D tables in RAM, and writing to flash to save
Scaling and naming of tables via meta data
Exporting 2D and 3D tables as JSON
Read Only Ram variables in meta data (Only partially working)
Text error messages in meta data

Known Issues:
In Windows (Only verified in Win7 32bit AND 64bit, verified by DeuceEFI), if interrogation is really slow, you can go into the advanced settings on the virtual COM port, and turn the USB Transfer sizes for RX and TX both down to 64. On my PC, they were set to 4096 by default. This should speed it up.

I'll edit this first post to reflect the current state of EMStudio, and to add future plans.

Some screenshots:

Interrogation Status Display
Image

ECU information view, showing location ID information
Image

3D Table View, complete with scaling and proper double precision
Image

2D Table View, again with the proper scaling and double precision displayed
Image

Hex view for unknown or data not in the meta file
Image

Table datalog view and gauge View, has Gauges, Bar and Text displays
Image

Flags
Image
Last edited by malcom2073 on Mon Sep 24, 2012 2:35 am, edited 9 times in total.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by Fred »

You should likely list the forms of display for the data stream, such as gauges, sliding bars, textual numbers, bit flags, etc.

I think you should talk up the "collection of ECU information" as you're the only person to have ever displayed it in human readable terms. This has been valuable to me already and lead to a few firmware fixes.

You should mention that the 2D curve has a lin-graph like curve and that both 2D and 3D have heat coloured cells.

Individual savability of each ID, only available with your app, too. Though you do need to add a save all with "are you sure" and "reload all" with "are you absolutely fucking sure" :-)

How about a screeny too. If you date each one that you upload then you can just demote them to links when you replace them and create a visual history ;-)

That's it from me for now, though it still feels sparse for what the app is IMO.

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: malcom2073's EMStudio development thread. (Comments welc

Post by Fred »

One more thing, so far, besides some bugs/not-done-yets, etc, it's Fred-endorsed!

Two more thing: First/only app to support editing any table size, a latent firmware feature unavailable until your app. No resize yet, though.
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!
malcom2073
LQFP112 - Up with the play
Posts: 211
Joined: Tue May 01, 2012 4:17 pm
Location: Shrewsbury PA
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by malcom2073 »

I've now gotten it ported completely over to using mingw in Linux for the build. My CIS is still pushing out MSVC builds, but fairly soon I'll be converting over to pure cross-compiling, which will also allow me to set up automatic .deb file generation on every new master push.

Also, added 2D table export, and a couple of 2d/3d table checks to ensure data is being properly received from the EMS.
User avatar
Dan
LQFP144 - On Top Of The Game
Posts: 1204
Joined: Tue Mar 02, 2010 2:33 pm
Location: Australia

Re: malcom2073's EMStudio development thread. (Comments welc

Post by Dan »

malcom2073 - You my friend are a FUCKING LEGEND!!!! :-)
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by Fred »

malcom2073 wrote:fairly soon I'll be converting over to pure cross-compiling, which will also allow me to set up automatic .deb file generation on every new master push.
Great! :-)
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!
malcom2073
LQFP112 - Up with the play
Posts: 211
Joined: Tue May 01, 2012 4:17 pm
Location: Shrewsbury PA
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by malcom2073 »

And done: http://mikesshop.net/EMStudio/

Dependancies are messed up, I need to sometime get a fresh install of ubuntu, and hash out dependancies for dpkg... but automatic building seems to work.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by Fred »

Epic, will try later on eee.
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!
ehb
LQFP112 - Up with the play
Posts: 128
Joined: Tue Dec 23, 2008 12:20 am

Re: malcom2073's EMStudio development thread. (Comments welc

Post by ehb »

Great work! :)

Here's my report about the .deb in Ubuntu 12.04, not sure what's not stock.
Emstudio couldn't be installed because of dependency problems, of course :) See below:

Code: Select all

 emstudio:i386 depends on libqt4-core (>= 4.8.0).
 emstudio:i386 depends on libqt4-declarative (>= 4.8.0); but:
  Package libqt4-declarative:i386 is not installed.
 emstudio:i386 depends on libqt4-gui (>= 4.8.0); but:
 emstudio:i386 depends on libqwt5-qt4 (>= 5.2.1); but:
 emstudio:i386 depends on libqt4-opengl (>= 4.8.0); but:
  Package libqt4-opengl:i386 is not installed.
 emstudio:i386 depends on libqjson0 (>= 0.7.1); but:
As dpkg -i won't install the dependencies, a apt-get install -f would be in order. This would install the following new packages:

Code: Select all

libaudio2:i386 libmng1:i386 libmysqlclient18:i386 libqjson0:i386 libqt4-core:i386 libqt4-declarative:i386 libqt4-designer:i386 libqt4-gui:i386 libqt4-network:i386 libqt4-opengl:i386 libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-svg:i386 libqt4-test:i386 libqt4-xmlpatterns:i386 libqtgui4:i386 libqwt5-qt4:i386 
I didn't pursue any further because I'm sure some dependencies will change :) Or should I go ahead?

Also: Please consider putting the .deb in a PPA somewhere, so the app can be updated easily from the start on. Also, then the dependencies could automatically be installed.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: malcom2073's EMStudio development thread. (Comments welc

Post by Fred »

PPAs are not compatible with .deb's primary target: Debian. So that's not an acceptable course of action.

It should go in a proper repository eventually. Quite likely we'll just have one repo for all related stuff and new version submissions can be pushed through me such that I can verify them. Loader, OLV, EMStudio, binutils/gcc/etc. We already have such a repo for this, it just needs new stuff adding to it, eventually, once stable.

In the mean time, for alpha stuff, a second repo will be in order, or just dpkg -i once you have your deps, that should be sufficient.

Re installing, go ahead and try it. If you don't have hardware you can build the fake freeems and use some data from one of us.

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!
Post Reply