Engine room app wanted

ianj99

Well-Known Member
Joined
11 Nov 2009
Messages
2,097
Location
UK
Visit site
Does anyone know of an Android app that will display oil pressure, water temp, volts and rpm, getting the data via nmea 0183?

I can make the interface and use the nmea to wifi interface discussed in this thread: http://www.ybw.com/forums/showthread.php?417332

However I am clueless when it comes to writing apps.

The wifi adaptor is bidirectional so the app could also feature engine start and stop 'buttons' as well as alarms. A twin engine version could also be produced.

I forgot to mention rudder angle display as well.
 
Last edited:
display oil pressure, water temp, volts and rpm, getting the data via nmea 0183?

Apart from water temperature, I'm not aware of any 0183 sentences that contain such data.

What were you planning to use to convert the various analogue signals to NMEA? If it's something custom-made, is NMEA really the best format? Something like an Arduino with a wifi shield on it would make more sense to me, talking directly to the app over tcp (or possibly udp).

Pete
 
Last edited:
Apart from water temperature, I'm not aware of any 0183 sentences that contain such data.

According to Eric Raymond's doc there's an RPM sentence:
http://www.catb.org/gpsd/NMEA.html#_rpm_revolutions
There's also the ER talker id defined for "engine room systems":
http://www.catb.org/gpsd/NMEA.html#_talker_ids

...but I think this kind of thing tends to be done more over N2K? Here's some of the relevant maretron products:
http://www.maretron.com/products/engineMonitoring.php
 
According to Eric Raymond's doc there's an RPM sentence:
http://www.catb.org/gpsd/NMEA.html#_rpm_revolutions
There's also the ER talker id defined for "engine room systems":
http://www.catb.org/gpsd/NMEA.html#_talker_ids

...but I think this kind of thing tends to be done more over N2K? Here's some of the relevant maretron products:
http://www.maretron.com/products/engineMonitoring.php


Yes the ER identifier is used and there is the RPM and RSA sentences, XDR could be used for the others.

Howevrer, there is actually no obligation to use nmea sentences anyway, or even the same baud rates.
In fact any app producer would have to pay Nmea a fee for using the word "nmea" anywhere in the app details so its probably necessary to not refer to it.

As the interface would not be an off the shelf item either and the app would both display and control engine functions, there is no reason why a proprietary system could not be devised between app producer and interface designer.
 
If you are using the nmea/wifi interface would you need to multiplex the engine data with the nav data?

An arduino mega *might* be able to do that, it has several hardware com ports.

Or bluetooth might be worth looking at, I replaced a fridge thermostat with an arduino and some temperature sensors, it works over bluetooth. Very basic, I send a "L" from a serial terminal (https://play.google.com/store/apps/details?id=jp.side2.apps.btterm&hl=en) and the ardunio sends back some text about the temp readings of the 3 sensors and percentage time compressor has run in past couple of hours. It's possible to set on/off temps over bluetooth as well.

Very basic but it works and pretty sure there are more sophisticated bluetooth comm apps out there.

The arduino would be simple to set up for temperature and volts, these are great .. http://www.ebay.co.uk/bhp/ds18b20-waterproof and are networked so you can daisy chain lots together with just 2 wires going into the arduino. Revs probably easy as well with a hall effect sensor or something. Pressure? Dunno, how would you do that?
Then format the data however you want it and fire it out the com port into a bluetooth adaptor. http://www.ebay.co.uk/sch/i.html?_from=R40&_sacat=0&_nkw=arduino+bluetooth+hc-06&rt=nc&LH_PrefLoc=1
 
If you are using the nmea/wifi interface would you need to multiplex the engine data with the nav data?

An arduino mega *might* be able to do that, it has several hardware com ports.

Or bluetooth might be worth looking at, I replaced a fridge thermostat with an arduino and some temperature sensors, it works over bluetooth. Very basic, I send a "L" from a serial terminal (https://play.google.com/store/apps/details?id=jp.side2.apps.btterm&hl=en) and the ardunio sends back some text about the temp readings of the 3 sensors and percentage time compressor has run in past couple of hours. It's possible to set on/off temps over bluetooth as well.

Very basic but it works and pretty sure there are more sophisticated bluetooth comm apps out there.

The arduino would be simple to set up for temperature and volts, these are great .. http://www.ebay.co.uk/bhp/ds18b20-waterproof and are networked so you can daisy chain lots together with just 2 wires going into the arduino. Revs probably easy as well with a hall effect sensor or something. Pressure? Dunno, how would you do that?
Then format the data however you want it and fire it out the com port into a bluetooth adaptor. http://www.ebay.co.uk/sch/i.html?_from=R40&_sacat=0&_nkw=arduino+bluetooth+hc-06&rt=nc&LH_PrefLoc=1

Angus has a handy low cost multiplexer: http://yappelectronics.co.uk/NTM.htm

I can do the engine interfacing side, its the app to display it that is beyond me!

My other option is to use a 2 line lcd display to display the data.

Ian
 
Last edited:
Angus has a handy low cost multiplexer: http://yappelectronics.co.uk/NTM.htm

I can do the engine interfacing side, its the app to display it that is beyond me!

My other option is to use a 2 line lcd display to display the data.

Ian

Again, arduinos can be a cheap and easy way to implement displays.

Spurred on a bit, I'm having a look at Amarino software, but not got far yet...

My fridge :)

Picture_zpsnneca0cq.jpeg
 
Arduino thermostat, what a faff! Housing, waterproofing, mounting, casing and all that. A nice winter project to keep you busy but a professional industrial grade Dixel thermostat costs less and is replaceable pretty much world wide!

As for the 'Engine Room App' if you really have 0182/3 data available it's pretty simple to get that to a phone or tablet and to display it, log it and provide settings and alarms.
 
Arduino thermostat, what a faff! Housing, waterproofing, mounting, casing and all that. A nice winter project to keep you busy but a professional industrial grade Dixel thermostat costs less and is replaceable pretty much world wide!

As for the 'Engine Room App' if you really have 0182/3 data available it's pretty simple to get that to a phone or tablet and to display it, log it and provide settings and alarms.

Well don't be so modest, tell me what app will display rpm, oil pressure, water temp and rudder angle!

See my thread 417332-Cheap-diy-nmea-to-wifi-adaptor.. for testing of a nmea to wifi interface on a laptop and tablet. Its not a problem when there are apps that display nav data but none that I've found that display engine data.

So a 'workaround' is to change the nmea talker and sentence ids to 'fool' the display.

Looking a Seawi's data display screen, Depth could become oil pressure, temp becomes coolant temp, VMG => rpm, Force => rudder angle and that still leaves the other actual data available on screen as well (cog, sog, hdg, stw, true & apparent wind, lat long.)

As I said earlier, its the lack of an engine room app rather than the hardware or nmea transmision that's the issue for me.

Ian
 
Arduino thermostat, what a faff! Housing, waterproofing, mounting, casing and all that. A nice winter project to keep you busy but a professional industrial grade Dixel thermostat costs less and is replaceable pretty much world wide!

Maybe an afternoon or 2 sorting out an enclosure but costs less than a quick google came up with. Plus vastly more programmable, keep it off for 10 minutes when receiving a weatherfax , keep an eye on duty cycle, compressor temp etc etc. though a lot of people would no doubt prefer the easy route and pay the extra money.
 
Last edited:
What Ide?
Looks like a fun pastime :)

Eclipse ADT mostly running on fairly grunty PC, Mac occasionally when developing controls. Google is pushing Android Studio which is based on Jetbrains InteliJ platform but the community is not biting at the moment especially as the platform is still in Beta ( 0.9.9 ) and there is masses of artefact history invested in Eclipse. I use a Lenovo Tablet, a Hudle and a handful of Android phones for testing, the PC based emulator is just too slow.
 
The Noland RS11 will provide the engine data as N2K sentences, and I think can be read through hyperterminal on a PC. These are similar if not the same as standard Canbus sentences.

Not cheap but reliable. One unit provides 4 channels, plus 2 RPM channels. Piggy backs onto existing analogue gauge data which you tune to the desired scales. Fairly easy to set up woith a windows laptop - I managed it.

Details here www.nolandeng.com

If there is a way of getting this to transmit via blue tooth to an iPad please come back and tell us just how.
 
Eclipse ADT mostly running on fairly grunty PC, Mac occasionally when developing controls. Google is pushing Android Studio which is based on Jetbrains InteliJ platform but the community is not biting at the moment especially as the platform is still in Beta ( 0.9.9 ) and there is masses of artefact history invested in Eclipse. I use a Lenovo Tablet, a Hudle and a handful of Android phones for testing, the PC based emulator is just too slow.
Ta, will have a look. Seems android studio has been released so might check it out
http://venturebeat.com/2014/12/08/g...udio-1-0-the-first-stable-version-of-its-ide/
 
Top