AngusMcDoon
Well-known member
This thread about exhaust alarms...
Exhaust alarms NASA EX1 or Silicone Marine
got me thinking that it's something I could add to my latest and greatest YAPP project. I'm going to try Silicon Marine who make these devices...
Home: Silicon Marine
to ask whether they will sell me a pair of just their transducers. If I can get readings onto my NMEA2000 bus then I don't need one of their boxes as both my i70s displays and Axiom MFD's will display the temperature and show a warning if things get too hot. I'm hoping that they are simple thermistors in the heat sensors and I can use a couple of spare pins on this YAPP project...
Anchor watcher YAPP - remote boat monitoring from a mobile phone
as analogue inputs which will convert the voltage reading to a temperature and send it out on the NMEA2000 bus.
It will need another spin of the PCB to add the connectors and a couple of voltage dividers. I'm wondering about the set temperature. Silicon Marine's instructions suggest that they default to 90 degrees C, but can be modified up or down to a user value. Is 90 degrees a reasonable value? Is it likely to need to be changed? The BlueBridge device linked above has no user interface and settings are sent as text messages to the device. I could add another for exhaust alarm temperature.
Interestingly NMEA2000 doesn't really seem to cope with what you'd think would be the most useful marine engine alarms. It has a whole zoo of different ones, but fails to have one for exhaust temperature. The closest ones are coolant temperature, which is pants because the engine control panel does that in an old fashioned analogue way, and low water flow alarm, which is likely to be the root cause, but isn't an over-temperature alarm. I sometimes wonder whether anyone from the NMEA has ever been on or owned a boat!
These are the available alarms...
Exhaust alarms NASA EX1 or Silicone Marine
got me thinking that it's something I could add to my latest and greatest YAPP project. I'm going to try Silicon Marine who make these devices...
Home: Silicon Marine
to ask whether they will sell me a pair of just their transducers. If I can get readings onto my NMEA2000 bus then I don't need one of their boxes as both my i70s displays and Axiom MFD's will display the temperature and show a warning if things get too hot. I'm hoping that they are simple thermistors in the heat sensors and I can use a couple of spare pins on this YAPP project...
Anchor watcher YAPP - remote boat monitoring from a mobile phone
as analogue inputs which will convert the voltage reading to a temperature and send it out on the NMEA2000 bus.
It will need another spin of the PCB to add the connectors and a couple of voltage dividers. I'm wondering about the set temperature. Silicon Marine's instructions suggest that they default to 90 degrees C, but can be modified up or down to a user value. Is 90 degrees a reasonable value? Is it likely to need to be changed? The BlueBridge device linked above has no user interface and settings are sent as text messages to the device. I could add another for exhaust alarm temperature.
Interestingly NMEA2000 doesn't really seem to cope with what you'd think would be the most useful marine engine alarms. It has a whole zoo of different ones, but fails to have one for exhaust temperature. The closest ones are coolant temperature, which is pants because the engine control panel does that in an old fashioned analogue way, and low water flow alarm, which is likely to be the root cause, but isn't an over-temperature alarm. I sometimes wonder whether anyone from the NMEA has ever been on or owned a boat!
These are the available alarms...
Code:
union tN2kDD206 {
uint16_t Status;
struct {
uint16_t CheckEngine:1;
uint16_t OverTemperature:1;
uint16_t LowOilPressure:1;
uint16_t LowOilLevel:1;
uint16_t LowFuelPressure:1;
uint16_t LowSystemVoltage:1;
uint16_t LowCoolantLevel:1;
uint16_t WaterFlow:1;
uint16_t WaterInFuel:1;
uint16_t ChargeIndicator:1;
uint16_t PreheatIndicator:1;
uint16_t HighBoostPressure:1;
uint16_t RevLimitExceeded:1;
uint16_t EGRSystem:1;
uint16_t ThrottlePositionSensor:1;
uint16_t EngineEmergencyStopMode:1;
} Bits;
tN2kDD206(uint16_t _Status=0): Status(_Status) {};
};
union tN2kDD223 {
uint16_t Status;
struct {
uint16_t WarningLevel1:1;
uint16_t WarningLevel2:1;
uint16_t LowOiPowerReduction:1;
uint16_t MaintenanceNeeded:1;
uint16_t EngineCommError:1;
uint16_t SubOrSecondaryThrottle:1;
uint16_t NeutralStartProtect:1;
uint16_t EngineShuttingDown:1;
uint16_t Manufacturer1:1;
uint16_t Manufacturer2:1;
uint16_t Manufacturer3:1;
uint16_t Manufacturer4:1;
uint16_t Manufacturer5:1;
uint16_t Manufacturer6:1;
uint16_t Manufacturer7:1;
uint16_t Manufacturer8:1;
} Bits;
tN2kDD223(uint16_t _Status=0): Status(_Status) {};
uint16_t operator= (uint16_t val) { Status=val & 0x00ff; return Status;}
};