Thought I would do a quick post about this great piece of software called MSDroid.
From their website:
"Android + MegaSquirt
msDroid is an application for Android smartphones and tablets being developed for use with the MegaSquirt® range of electronic fuel injection controllers. It aims to provide logging, fully customisable gauge dashboards, tuning, and graphical log viewing. This shall remain a completely free application. This application is presently in alpha development."
It has the ability to connect to your Megasquirt via Bluetooth or USB OTG. Your phone/tablet must have USB OTG support and you simply connect your existing USB-to-Serial RS232 adapter into your phone. USB OTG cables can be found on eBay for a couple of dollars.
Quick proof of concept below. I will be wiring in oil pressure and oil temp sensors soon. They will go directly into the Megasquirt's ADC inputs and I will be able to display them in MSDroid as well as data log. Cool thing about the MSDroid software is that it runs off the standard Tunerstudio INI files 😀
I did a quick guide on the Bluetooth module, link below.
Last week Josh asked me to help him update the firmware on his DIYPNP Megasquirt ECU, he also needed a base map loaded. So he posted it from Melbourne to Brisbane and I got it early this week.
Josh purchased the ECU second hand off the forums, was told it was working (and I don't doubt that it was) but the surprises came when I opened up the case for a closer look... This is what I found:
- at least half of the solder joints throughout the board were beyond terrible
- about a dozen pins/legs had no solder at all
- the ends of wires were snapping as I was de-soldering
- a handful of lengthened wires which weren't heat-shrinked
- tape had fallen off one of the lengthened wires and fully exposed the connection against the metal case
- loose solder and component pins on the underside, could have easily causes short circuits
- component pins bent towards each other, more possibility of short circuits
Even if the ECU was working fine, I wouldn't be surprised it failed very quickly in a car environment (heat and vibrations).
So I fully stripped all the wiring off the board, re-soldered every joint, cleaned/removed all the flux, re-wired the connector board, updated firmware and loaded a base map.
Below are some before and after photos.
The wiring was a huge mess, lengthened wires and a lot of fatigued joints which eventually resulted in snapped connections. In the center of the photo you can see the joint that was exposed because tape fell off.
These next photos were taken after I re-worked the ECU.
My preference is to have the jumper wires on the component side because it places less strain on the wires, helps reduce any fatigue. It also allows easy view of the connections without removing the entire circuit board.
This is something I've been wanting to do for a long time, implementing Bluetooth connectivity for my Megasquirt ECU.
No more cables for tuning and data logging, I can even use my Android smartphone/tablet for data logging and digital gauge/dashes. The Android App is called Shadow Dash MS, free of charge from the EFI Analytics.
You can buy "off the self" devices that are plug and play, around $50-$100, but I've decided to take the DIY route which cost me $12!
There is a bit of work to do like adjust settings as well as some soldering.
1. The module needs to be jumpered temporarily so settings can be applied.
2. Use some paper to insulate pins 6, 7, 8 and 9 on the DB9 Male connector. And than solder a wire from pin 9 to V+ pad, this is next to the break-out pins.
3. An external +5V supply has to applied to the break-out pins.
So that completes most of the modifications needed, now on to software. I used Microsoft Hyper Terminal, which is available on Windows XP machines. You can download it below:
1. Connect the module to your serial port, or your USB-Serial adapter.
2. Open up Hyper Terminal and create a new connection. Select your serial connection's COM port., mine was COM4. The settings below should be applied.
3. To confirm that the connection is correct, quickly type in AT. It won't display what you've typed but it should display the response OK.
4. Open up Notepad and type the following AT+NAME(insert the name you want here), in my case I typed AT+NAMEomgpham.com . CUT all the text, go back to your Hyper Terminal window and click on "Paste to Host". You should than get a response saying OKsetname.
5. Next up we'll set the PIN Code. So back to Notepad and type in AT+PIN(insert your 4 digit pin here), eg. AT+PIN1234. CUT all the text, go back to your Hyper Terminal window and click on "Paste to Host". You should than get a response saying OKsetPIN.
6. Finally, we'll set the baud rate. By default it's 9600 but this needs to be set to 115200. So in Notepad you'll type AT+BAUD8, CUT all the text than go back to your Hyper Terminal window and click on "Paste to Host". You should than get a response saying OK115200.
The reason we have to cut and paste commands from Notepad is because Hyper Terminal needs commands to be typed completely in under a second. Stupid? Yes, but ah well.
So everything software wise is now done, this next part is optional and it involves removing the female DB9 connector which is used for applying settings. It's the connector that plugs into your computer's serial port.
Had a chance to try out TunerStudio's "Output Test Mode", basically allows you test fire your injectors and coils. Something I really wanted to do because I wired my coils for sequential fire.
Firing order is 1-3-4-2 so they are wired as such:
- Cylinder No. 1 - Spark A
- Cylinder No. 2 - Spark D
- Cylinder No. 3 - Spark B
- Cylinder No. 4 - Spark C
I initially wired them in the wrong order but luckily I caught on this error early.
I also had a chance to change the transmission front seal and gasket.
So my first attempt for the ECU mount was a failure, it sucked and was messy looking. This next mount attempt is so simple, not sure why I didn't think of it first. Checkout the photos below.
I've been dreading this part of the build, was never sure how I would do it and make it neat. But everything is coming together now and so I had to do something.
Because my custom fuse/relay panel sits where the ECU normally goes, I've had to install the ECU in the glove box. It's not a bad spot to put it, just my solution isn't "clean" for my liking.
I also decided to use the stock tombstone, goes much better with the rest of my interior. So the KG Works tombstone will be up for sale soon.
Update time! Head isn't finished yet so I've been doing a few odd jobs here and there.
One thing I did was start on the brake prop valve relocation. It's not necessary but does give me extra space for the velocity stacks, might be able to increase it's length later down the track too. So I picked up some angle aluminium plate for $5 and started cutting that up.
Here is the capacitor used for the COPs install, it's needed because the battery is in the boot and can cause voltage drops when the coils fire. The capacitor helps by storing a reserve of power and eliminates any voltage drop. Well that's what I think it does =P
Ordered these velocity stack booties from Outerwears, quality seems good but I'm not 100% sure they will provide enough filtering. So might experiment with some foam as well.
This is a going to be a big-ish update, lots of photos, so please click through to see the rest of the post.
I spent the last couple of days building my custom fuse/relay panel. I've been looking forward to this part of the build 😀
Small update... some wiring parts arrived and picked up a white board to help me scribble down wiring stuff. It's been pretty handy 😀
According to the MegaSquirt manual, it's a pretty good idea to shield the TPS and trigger wires. So have been on the search for a flexible 2-core shielded cable, ended up deciding on a microphone cable from JayCar (part no. WB1530).
Terminated the shielding into it's own BLACK wire, this will grounded at the ECU end and left floating on the sensor end. The BLUE wire will be used for sensor return and the WHITE for sensor ground. The +5V/+12V wire will be run externally to the shield.
I've been slowly building my MegaSquirt DIYPNP ECU, just wanted to take my time so I don't screw anything up. I have configured to be run on a standard engine with MAF removed, just so I can learn how to tune the basemap. This means standard narrow-band O2 sensor, stock TPS, etc...
All instructions can be found in the links below:
Build photos after the break =)