It’s a pretty frustrating time at the moment with so much work going into the app and nothing to really show for it. Just like the proverbial duck though it’s all happening underneath. Three more days at work and then I’m off work until the new year so should get the last of the communications/logging configurations nailed and then I can move onto the more interesting prospect of adding a user interface over the top of it all.
I’m really pleased with the way the auto switching is working now as the code automagically guesses the version and type of hardware it’s connected to and reconfigures itself accordingly. At some point I need to get the rest of the .ini files together that have shipped with all the different software revisions and check them all… not really looking forward to that !
It’s heavy going at the moment as I’m slowly but surely implementing the MS2-Extra support in the spare time I have. At least the competition season is more or less at an end until March so I don’t have to spend as many weekends working on my motor or weekends away competing.
A few more evenings work and I should have the MS2 support finished, that’ll leave the log file playback to complete and I can send it out to the testers for some initial feedback.
I’m well on the way now to implementing MS2-Extra support. Still a lot of coding to do but it’s starting to take shape and, hopefully, will be running sometime in the next week or so.
I’ve had a couple of queries regarding MS3 support. I’ve not got the necessary hardware to test it but it SHOULD work OK. The iPhone, however, cannot be hooked directly to the Megasquirt 3’s built in USB port, it will still need to use a Serial to WiFi adaptor as described on the hardware page.
Having now received the documentation for the MegaJolt serial protocols I can’t see any reason why MegaJolt support can’t be included in the app. To all intents and purposes the MegaJolt follows a similar protocol to that that the various MegaSquirt flavours follow so with the new data layer structure it shouldn’t be more than an evenings work to implement the logging and view functionality.
I may be biting off more than I can chew by adding yet another product to support in the app but it scares me a lot less than the pain I’m about to go through adding MS2 and the two different flavours of MS2-Extra to the app !
The app is back together again following the major changes I ended up making to the data layer.
Had some real problems downgrading to standard MS1 code on my test ECU but eventually got it working after a fashion. The CPU appears to be “locked up” as it’s not responding to inputs or firing any outputs but it is responding to serial commands and returning data as if it were running, very odd but good enough to test the basic functionality against.
The app now runs with MS1 and MS1-Extra and switches between the two automatically so, providing the standard conversion tables (thermfactor, kpafactor, throttlefactor etc…) are being used then you don’t need to load any configuration files.
In response to requests I’ve had a quick look at MegaJolt support but I’ve been unable to find any information regarding the serial protocol it uses so haven’t made any decision either way at the moment.
I’ll add MS2-Extra support next as I can use the ECU out of my competition vehicle to test that with, MS2 B&G support/testing will probably have to wait until later in the week when I’m hoping the MS2 daughter cards I’ve ordered will arrive.
The first versions of the app worked well with MS1-Extra because that happened to be the ECU configuration I had on the bench when I started development. Over time though the design of the data engine has caused some issues when trying to support other firmware versions.
I’ve made a start now on breaking the comms and interpretation part of the app apart to make coping with different transport layers and different firmware versions much simpler in the long term. In the short term the app is in a pretty sorry state but I think a few more evenings work and I’ll have it back together again and running.
As part of this process I’ve looked at leveraging the transport layer into a class of it’s own too. That should go a long way towards resolving the problems of running with a log file as a data source, making the gauges and various data views work with a saved log file. That also allows a “demonstration” mode which can use a log file embedded in the app bundle.
Finally took a break from iPhone development to throw this site up so testers and end users can keep track of how the app is coming along and any future developments.
The MobiSquirt app started in September 2010 when I found myself with some time on my hands and getting more and more fed up with the way the onboard PC in my competition vehicle always seems to go on the blink when I want to check what my engine is doing.
It’s been an uphill struggle at times but so far I’m pleased with the progress and I think it’s only a few weeks before I can start shipping it out to beta testers.