This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 1 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Digitise an older engine - ESP32
#11
FYI

It seems that Influxdb 2 for 32bits is not longer supported. We are working in OpenPlotter 3 for 32 and 64 bit and I am afraid the 32bit version no longer will contain Influxdb.

https://www.influxdata.com/blog/influxdb...days-emea/

Grafana is still supporting 32bit
Reply
#12
I'm working on the same project right now!

Using a Sailor Hat board which has an ESP32 built in. I've also got the engine hat add on for the SH-ESP32 and almost have everything working. Currently working on trying to get oil pressure sorted out.

Do you have any code on github to share? I'd love to see how you did it.

If anyone doesn't know this is the ESP32 board I mentioned. It's main benefit is that it can be 12v powered and has a CAN bus input if you want to use it with N2K.

https://hatlabs.fi/product/sailor-hat-wi...16fd43adaa
Reply
#13
Hi, I’ve just added fuel consumption (predicted based on RPM) so if that’s works I’ll share all the code either on GitHub or on here. Plan to test that this next week.

I have just used the examples and stuck it all together but happy to share.
Reply
#14
(2022-04-03, 04:14 PM)Boatingbaileys Wrote: Hi, I’ve just added fuel consumption (predicted based on RPM) so if that’s works I’ll share all the code either on GitHub or on here. Plan to test that this next week.

I have just used the examples and stuck it all together but happy to share.

That'd be interesting!

On another topic, I tried today the same solution for the RPM counter, just that it didn't work on my side :/
Tried the exact same critcuit from boatybits/boatymonpy and after testing it at home successfully, tried to connect it to the actual alternator, but 2 things happened:

1) The existing (old style analog) RPM counter stopped working. After disconnecting my circuit worked again.
2) The voltage between connector 1 and 2 from the schematic was 1.9V DC  Huh

   

Any idea what could I have done wrong?

Now that I see the schematic again.. I might I might have reverted the terminals. Ground should go to 1 and W from the alternator should go to 2, is that right? Cause I did it the other way around.

Also, since there is only 1 power source, the ground can come from anywhere? Or is there something specific of the alternator?

Thanks a lot!
Reply
#15
(2022-04-03, 06:08 PM)MigGat Wrote:
(2022-04-03, 04:14 PM)Boatingbaileys Wrote: Hi, I’ve just added fuel consumption (predicted based on RPM) so if that’s works I’ll share all the code either on GitHub or on here. Plan to test that this next week.

I have just used the examples and stuck it all together but happy to share.

That'd be interesting!

On another topic, I tried today the same solution for the RPM counter, just that it didn't work on my side :/
Tried the exact same critcuit from boatybits/boatymonpy and after testing it at home successfully, tried to connect it to the actual alternator, but 2 things happened:

1) The existing (old style analog) RPM counter stopped working. After disconnecting my circuit worked again.
2) The voltage between connector 1 and 2 from the schematic was 1.9V DC  Huh



Any idea what could I have done wrong?

Now that I see the schematic again.. I might I might have reverted the terminals. Ground should go to 1 and W from the alternator should go to 2, is that right? Cause I did it the other way around.

Also, since there is only 1 power source, the ground can come from anywhere? Or is there something specific of the alternator?

Thanks a lot!

Hi,

The ground should go to 1 and the W terminal should go to 2. From what you said, the RPM gauge stopping when connected would make sense as you grounded the terminal?

You should be able to take the ground from anywhere. Follow that from the back of your alternator and see where it goes. On my MD2030, it goes to the block, so its all ground. You could take power from the back of the alternator, that's something I'm just trying to work out on mine so I can get 'ignition on' and make my timer work correctly.

Stick your multimeter on AC, as the W terminal sends out AC voltage rather than DC and let us know what voltage that shows. I'm sure mine was around 9v AC.

I've posted my code here - https://github.com/Boatingwiththebaileys/ESP32-code Just note I've not tested the fuel consumption part yet, so if anyone does copy that just hash it out if it doesn't work. I'm still learning too Smile
Reply
#16
(2022-04-03, 04:14 PM)Boatingbaileys Wrote: Hi, I’ve just added fuel consumption (predicted based on RPM) so if that’s works I’ll share all the code either on GitHub or on here. Plan to test that this next week.

I have just used the examples and stuck it all together but happy to share.

Interested to see your work on this...

My solution was to graph a formula based on the engine fuel usage I found online for my engine (modified based on the boat user manual info I found in the back of a cabinet). I used Node-Red to do the calculations and fine tuned it with the calibration app inside SignalK. Works well enough. 

Here's where it gets good: SignalK also takes tank level data and (using NR) calculates total fuel volume remaining based on my total fuel capacity. Derived data plug in calculates fuel economy. From here, with fuel economy, fuel rate, and fuel volume, NR can calculate estimated range for time and distance at present speed/rpm. It's really pretty great! Good to know with a full load of fuel I can leave SoCal and go straight to PV (or beyond) without needing to stop!

I'm not a programmer at all, so the fact I was able to use a ESP-32 board and SensESP to build my on holding tank sensor is nothing short of a miracle. I used a "Moda" capacitive tape-on sensor for an RV (https://tankedge.com/accessories.html), wired it to a voltage divider and VIOLA, SensESP is sending holding tank data over wifi to SK. I now use the head with reckless abandon as SK notifies me when it is about 85% full and I need to pump out.

I found digital fuel pressure gauges that read 0-5 volts for -15 to 30 psi. I plan on hooking a couple of them up to my fuel filters to monitor pressure vacuum from the helm, based on Racor's flow data. Plan is to have SK notify me when it's time to change or if there's a problem. 

The here options are endless.
Reply
#17
(2022-04-03, 04:14 PM)Boatingbaileys Wrote: Hi, I’ve just added fuel consumption (predicted based on RPM) so if that’s works I’ll share all the code either on GitHub or on here. Plan to test that this next week.

I have just used the examples and stuck it all together but happy to share.

this might be a good addition to the SignalK derived data plugin.  There is a current calculation for fuel economy using fuel rate and Speed over ground.  RPM would be better, I think. - https://github.com/SignalK/signalk-derived-data 

BTW - I would have guessed at South Wirral/Chester way.  I used to work in Runcorn and live in Elton (CH2)
Reply
#18
Managed to get the fuel consumption to work correctly. It must already have a multiplier somewhere in the code so I've updated github, value changed in the lines below from 60 to 6 and now the fuel consumption is as expected.

sensor->connect_to(new Frequency(6))
// times by 6 to go from Hz to RPM

->connect_to(new FuelInterpreter("/Engine Fuel/curve"))
->connect_to(new SKOutputFloat("propulsion.engine.fuelconsumption", "/Engine Fuel/sk_path"));

   

All wired in now too, so its starts with the engine ignition.
Reply
#19
Here is the installation video for this stage of the project

OpenPlotter - ESP32 Install - Digitising an older engine - SensESP
https://youtu.be/II8URyYTFqc

I’m going to look at bilge monitoring next but time for a bit of sailings
Reply
#20
@boatingbaileys

I just tried your main.cpp but you may want to include in the readme that you have to add a couple of dependencies to the 'lib deps' section of platformio.ini - the bottom two lines:

Code:
lib_deps =
 ; Peg the SensESP version to 2.0.0 and compatible versions
 SignalK/SensESP @ ^2.0.0
 ; Add any additional dependencies here
 adafruit/Adafruit BMP280 Library@^2.6.3
 SensESP/OneWire@^2.0.0

I have your code up and running, now I am going to rewatch the episodes to try to decipher what's happening and how to connect it all up - thanks
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)