Hi all ... This is my first post so go easy on me ha.. I am trying to make a virtual dash for a boat engine ( petrol 4 cyl ) with coil ignition. i would like to use one of the car type obd2 apps and a elm327 or similar bluetooth unit on my Galaxy. As my engine is 40+ years old it obviously dosnt have an ecu just basic resistive sensors and the rev counter is picked up from the coil. I only need water temp / oil pressure / revs/and fuel and of these the temp/pressure and fuel do not have to be super accurate just good enough to see a rise or fall . My question is can an arduino uno be used to generate obd2 type code to be transmitted over the bluetooth module. Many thanks ... Joe
Yes, the Arduino should be able to generate OBD data, software-wise at least.
Producing OBD data electrically is another matter. It seems that most Ardiono OBD projects use a helper chip to convert OBD data to UART/serial, but that won't work for you since you're going the other way (generating OBD data for your elm327 to read). You'll need to have intimate knowledge of OBD's electrical characteristics and possibly build some hardware (level shifting etc).
Personally I would take a different approach: attach a bluetooth serial device to my Arduino and write a Java app on your Android device to parse the incoming serial data and display it.
Actually I would ditch both the Bluetooth and the Android device and just attach a 16x4 or 20x4 character LCD or a KS0108 GLCD (Graphics LCD display) to the Arduino and permanently mount the display in my boat's cockpit.
Thank you for the speedy reply … and as id thought it wont be plain sailing ha. The reason i have for using the galaxy and a custom dash app is that i already have a app built for my switch functions ( 8 switches ) made up of png,s of old style toggle switches and an over the ground speed app using gps both in classic chrome style bezels etc ( 40+ year old boat ) and i was hoping to keep that old style sort of thing eg the background for the switch screen is a teak effect wood and my galaxy is trimmed in adhesive wood pvc. … I know i need locking up… . A lot of the obd2 type dash apps also have this classic style gauge available and it is well beyond my knowledge at present to write an app like this also as the whole thing is bluetooth i dont have weather / condensation problems as thats what knackered all the old switches/gauges… i might look down the road of fitting an old ford ecu with obd2 on board and taking it from there … once again thanks … joe
Gotcha. In that case, pulling an OBD ECU out of a vehicle may very well be faster/easier than reverse-engineering the OBD protocol. I don't know anything about the OBD protocol, maybe it's dead simple but I kind of suspect it's rather complicated since all the other Arduino OBD projects I looked at use a helper chip so they don't have to deal with the electrical signals.
Of course if you pull the OBD ECU from a vehicle, you'll also probably need the sensors from that vehicle as well, as your vehicle ECU probably won't know how to read your boat's sensors.
Another alternative may be reverse engineering the elm327's Bluetooth protocol: so your Android app thinks it's talking to an elm327, but is really talking to the Bluetooth module on your Arduino pretending to be an elm237.
So you've got some options: 1. Reverse engineer OBD 2. Reverse engineer elm327 3. Rig vehicle ECU and sensors into your boat
Thanks for your suggestions .. i think in the absence of some plug and play arduino solution i will look at the ecu route, an early model ford focus/escort might suit and just run sim code to it to ignore unused sensor inputs.. Thanks again.. Joe
opperator: Thanks for your suggestions .. i think in the absence of some plug and play arduino solution i will look at the ecu route, an early model ford focus/escort might suit and just run sim code to it to ignore unused sensor inputs.. Thanks again.. Joe
You WILL be chasing your tail for a long while trying to get an ECU mated into this system.
It would be far easier to use an Arduino feeding a Raspberry Pi and driving a graphics screen with all the various graphics served up by the Pi
Thanks Craig … iv looked at the steel gauges and yea they are great however i cant find a way to use them not knowing anything about java etc… do you know of any gauge that i can download and control over serial bluetooth , i spent a day searching and all i could find was a web based gauge controlled with arduino … Thanks … Joe
opperator: Thanks Craig .. iv looked at the steel gauges and yea they are great however i cant find a way to use them not knowing anything about java etc.. do you know of any gauge that i can download and control over serial bluetooth , i spent a day searching and all i could find was a web based gauge controlled with arduino ... Thanks .. Joe
There is nothing special about serial bluetooth - it is a transport mechanism and a protocol stack only.
If you pull down the examples they have some good demos and it takes very little time to understand what they are doing and how to do it
Thanks Craig il keep looking ... Joe