Cruisers Forum
 


Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rating: Thread Rating: 4 votes, 5.00 average. Display Modes
Old 08-01-2016, 03:14   #211
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

Quote:
Originally Posted by conachair View Post
Might have found thje problem, the nasa unit sends the windspeed and wind angle out as integers, the spec states it should be to 1 decimal place.

Sentences like these work on opencpn....

$WIMWV,200.0,R,11.0,N,A*11

So hopefully openplotter will like them as well.

Ta
I am afraid your device has a checksum problem (the last 2 digits in your example: 11). That is the problem.

OpenPlotter is getting the sentences right but when tries to extract values the checksum does not match and treats them as incorrect values.

Despite this error, OpenPlotter sends the wrong sentences to OpenCPN but you only will be able to get data if uncheck "Control checksum" in localhost:10110 input connection. Once you have data into OpenCPN, when you try to show it on Dashboard plugin, it fails again because checksum validation.

Some info about NMEA checksum

So, your device do not fit the decimal spec and is not calculating checksum well. Maybe both issues are connected, Do you have some device settings?

Same issue with temperature sentence $YXXDR,C,22,C*49
__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Old 08-01-2016, 04:04   #212
cruiser

Join Date: Nov 2007
Location: Probably in an anchorage or a boatyard..
Boat: Ebbtide 33' steel cutter
Posts: 5,030
Re: OpenPlotter project

Quote:
Originally Posted by Sailoog View Post
I am afraid your device has a checksum problem (the last 2 digits in your example: 11). That is the problem.

OpenPlotter is getting the sentences right but when tries to extract values the checksum does not match and treats them as incorrect values.

Despite this error, OpenPlotter sends the wrong sentences to OpenCPN but you only will be able to get data if uncheck "Control checksum" in localhost:10110 input connection. Once you have data into OpenCPN, when you try to show it on Dashboard plugin, it fails again because checksum validation.

Some info about NMEA checksum

So, your device do not fit the decimal spec and is not calculating checksum well. Maybe both issues are connected, Do you have some device settings?

Same issue with temperature sentence $YXXDR,C,22,C*49
Yep, that's it, I tried an arduino sketch which calculated the checksums and it works fine.
Some output which works..

$WIMWV,0.0,R,00.0,N,A*13
$WIMWV,90.0,R,05.0,N,A*2f
$WIMWV,180.0,R,10.0,N,A*1b
$WIMWV,270.0,R,15.0,N,A*12


Thanks for taking the time to have a look.


Code:
/*
 
 This example code is in the public domain.
 */
String NMEA0Deg="WIMWV,0.0,R,00.0,N,A";
String NMEA90Deg="WIMWV,90.0,R,05.0,N,A";
String NMEA180Deg="WIMWV,180.0,R,10.0,N,A";
String NMEA270Deg="WIMWV,270.0,R,15.0,N,A";
int CheckSum;


// the setup routine runs once when you press reset:
void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(4800);
 
}

// the loop routine runs over and over again forever:
void loop() {
  
 CheckSum=checkSum(NMEA0Deg);
 String NMEA0DegOut="$" + NMEA0Deg + "*" + String(CheckSum, HEX);
 Serial.println(NMEA0DegOut);
 
   delay(1000);
   
CheckSum=checkSum(NMEA90Deg);
 String NMEA90DegOut="$" + NMEA90Deg + "*" + String(CheckSum, HEX);
 Serial.println(NMEA90DegOut);
 
 
  delay(1000);
  
CheckSum=checkSum(NMEA180Deg);
String NMEA180DegOut="$" + NMEA180Deg + "*" + String(CheckSum, HEX);
Serial.println(NMEA180DegOut);

 
  delay(1000);
  
CheckSum=checkSum(NMEA270Deg);
 String NMEA270DegOut="$" + NMEA270Deg + "*" + String(CheckSum, HEX);
 Serial.println(NMEA270DegOut);
 
  delay(1000);
 
}


//-----------------
char checkSum(String theseChars) {
  char check = 0;
  // iterate over the string, XOR each byte with the total sum:
  for (int c = 0; c < theseChars.length(); c++) {
    check = char(check ^ theseChars.charAt(c));
  } 
  // return the result
  return check;
}
conachair is offline   Reply With Quote
Old 08-01-2016, 04:55   #213
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

Quote:
Originally Posted by conachair View Post

Thanks for taking the time to have a look.
Thanks to you for torturing that way OpenPlotter
That is the only way we can get something robust
__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Old 08-01-2016, 10:27   #214
Registered User

Join Date: Apr 2012
Location: Turkey, Greece
Boat: Moody 44
Posts: 111
Re: OpenPlotter project

Sailoog
Can I put in a couple of feature requests..
1) Include EDIT function for existing NMEA connections as in OpenCPN. (Useful when fine tuning the NMEA filters)
2) Include option for Users to ADD NMEA Display Types in NMEA stream monitoring (Show Output) window eg MTW

Thanks
Steve
affinite is offline   Reply With Quote
Old 08-01-2016, 14:49   #215
Registered User

Join Date: Aug 2012
Location: Slidell, LA
Boat: Laguna 33
Posts: 86
Re: OpenPlotter project

Rats, I also have that Nasamarine wind instrument. It has spent more time broken than working. I don't have it back at the masthead yet since the last repair. I'll try to bench test it, maybe it's a different firmware version.

Sadly there aren't many affordable wind instrument options. I suppose what I'd do if I had it to do over again is the Peet Bros transducer with a little arduino making the NMEA.
Saqqara is offline   Reply With Quote
Old 09-01-2016, 09:13   #216
Registered User

Join Date: Dec 2015
Posts: 1
Re: OpenPlotter project

I'm trying out the various features of this brilliant project. One thing that puzzled me was the "sailgauge" display. I assumed that the figure in the middle of the display was the boat speed but it didn't seem to match the log speed. Then I realised it was in meters/second! Does anyone know how to change this to Knots?
danny2 is offline   Reply With Quote
Old 09-01-2016, 12:28   #217
cruiser

Join Date: Nov 2007
Location: Probably in an anchorage or a boatyard..
Boat: Ebbtide 33' steel cutter
Posts: 5,030
Re: OpenPlotter project

Quote:
Originally Posted by Sailoog View Post
Thanks to you for torturing that way OpenPlotter
That is the only way we can get something robust
I'll keep trying

Got the wind vane working now

Feature request:
Would it be possible to have current time as a trigger? This would mean that at , say, 9.50 the SSB radio could be switched on from an output pin and fldigi started to receive a navtex or weatherfax broadcast.


code for the creation of proper checksum in an arduino mega should anyone be interested...


Code:
// replace a wrong nmea checksum with a good one. 


 String nmeaGood;
 String nmeaBad;
 
// the setup routine runs once when you press reset:
void setup() {
  // initialize serial communication at 4800 bits per second:
  //serial1 is available on the mega board
  Serial.begin(4800);
  Serial1.begin(4800);
}

// the loop routine runs over and over again forever:
void loop() {
if(Serial1.available())
  {
    char c= Serial1.read();
    

    if( c=='\n')     // if char is new line then it's the end of a sentence so do something
    {
      nmeaBad=nmeaBad + '\n'; // put back the missing linefeed before parsing
      parseNmea(nmeaBad);
      nmeaBad="";    // empty the string
    }
    else             // else fill up the straing with nmea sentence
    nmeaBad+=c;
  }  
          
//End of loop
}




//-----------------
void parseNmea(String nmeaBad)
{
  //Serial.print(nmeaBad);
  nmeaGood=nmeaBad.substring(1, nmeaBad.indexOf("*"));     //cut of the leading "$" and the bad checksum

int  CheckSum=(checkSum(nmeaGood));                //create a good checksum
  nmeaGood="$"+nmeaGood+ "*" +  String(CheckSum, HEX);     // make the good nmea string

  Serial.println(nmeaGood);               
}


//---
char checkSum(String theseChars) {
  char check = 0;
  // iterate over the string, XOR each byte with the total sum:
  for (int c = 0; c < theseChars.length(); c++) {
    check = char(check ^ theseChars.charAt(c));
  } 
  // return the result
  return check;
}
conachair is offline   Reply With Quote
Old 10-01-2016, 08:42   #218
Registered User

Join Date: Aug 2012
Location: Slidell, LA
Boat: Laguna 33
Posts: 86
Re: OpenPlotter project

Conachair, I have the Clipper NMEA Wind Sensor, but don't seem to have this problem. I get windspeeds to one decimal place, and checksums seem good (in a spot check of a few). It's not at the masthead so this is a demonstration of lung capacity:

$WIMWV,151,R,3.9,N,A*32
$YXXDR,C,21,C*60
$WIMWV,151,R,10.0,N,A*09
$YXXDR,C,21,C*60
$WIMWV,151,R,11.8,N,A*00
$YXXDR,C,21,C*60
$WIMWV,151,R,15.9,N,A*05
$YXXDR,C,21,C*60
$WIMWV,151,R,13.5,N,A*0F
$YXXDR,C,21,C*60
$WIMWV,151,R,13.9,N,A*03
$YXXDR,C,21,C*60
$WIMWV,151,R,13.9,N,A*03
$YXXDR,C,21,C*60
$WIMWV,151,R,11.0,N,A*08
$YXXDR,C,21,C*60
$WIMWV,152,R,11.5,N,A*0E
$YXXDR,C,21,C*60
$WIMWV,151,R,15.0,N,A*0C
$YXXDR,C,21,C*60
$WIMWV,152,R,11.9,N,A*02
$YXXDR,C,21,C*60
$WIMWV,151,R,15.7,N,A*0B
$YXXDR,C,21,C*60
$WIMWV,152,R,13.5,N,A*0C
$YXXDR,C,21,C*60
$WIMWV,152,R,11.6,N,A*0D
$YXXDR,C,21,C*60
$WIMWV,152,R,18.4,N,A*06
$YXXDR,C,21,C*60
$WIMWV,153,R,14.7,N,A*08
$YXXDR,C,21,C*60
$WIMWV,154,R,18.3,N,A*07
$YXXDR,C,21,C*60
$WIMWV,154,R,17.5,N,A*0E
$YXXDR,C,21,C*60
$WIMWV,154,R,12.6,N,A*08
$YXXDR,C,21,C*60
$WIMWV,154,R,15.3,N,A*0A
$YXXDR,C,21,C*60

Mine is about two years old, but I replaced the circuit board about a month ago after the unit flooded with water, so I likely have the most current firmware if there are variances. You might contact nasamarine support?
Saqqara is offline   Reply With Quote
Old 10-01-2016, 23:47   #219
cruiser

Join Date: Nov 2007
Location: Probably in an anchorage or a boatyard..
Boat: Ebbtide 33' steel cutter
Posts: 5,030
Re: OpenPlotter project

Quote:
Originally Posted by Saqqara View Post
Conachair, I have the Clipper NMEA Wind Sensor, but don't seem to have this problem. I get windspeeds to one decimal place, and checksums seem good (in a spot check of a few). It's not at the masthead so this is a demonstration of lung capacity:
Thanks, interesting, maybe they've sorted it out now. I have a fluxgate compass which does the same bad checksums.

Good lungs
conachair is offline   Reply With Quote
Old 11-01-2016, 05:08   #220
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

Quote:
Originally Posted by affinite View Post
Sailoog
Can I put in a couple of feature requests..
1) Include EDIT function for existing NMEA connections as in OpenCPN. (Useful when fine tuning the NMEA filters)
2) Include option for Users to ADD NMEA Display Types in NMEA stream monitoring (Show Output) window eg MTW
1) This is a very demanded request so yes, it will be applied in v0.7.0 (edit trigger/actions too)

2) that is not so easy. OpenPlotter is able to listen to external NMEA, internal NMEA (sensors), switches and in the future external and internal signalk. So, this window is not only a NMEA inspector (yes, I know, I named it NMEA inspector and that must be changed ) is a complete system monitor. Openplotter manages "magnitudes" like position, heading, temperature... and takes the values from all the above available sources. If we want to add a magnitude like water temperature (MTW) as you requested, we should integrate it into this system.
That was the difficult answer, the easy one is: No, but we have plans to implement MTW sentence into the system when we implement the "different DS18B20 temp sensors in parallel" feature for water temp, engine coolant temp, exhaust temp, fridge temp...

Quote:
Originally Posted by danny2 View Post
One thing that puzzled me was the "sailgauge" display. I assumed that the figure in the middle of the display was the boat speed but it didn't seem to match the log speed. Then I realised it was in meters/second! Does anyone know how to change this to Knots?
I do not know. This is part of SignalK project and I think it would be better to ask to SignalK team: https://github.com/SignalK/sailgauge/issues

But.... Maybe today I will post news about the sexy gauges system suggested

Quote:
Originally Posted by conachair View Post
Feature request:
Would it be possible to have current time as a trigger? This would mean that at , say, 9.50 the SSB radio could be switched on from an output pin and fldigi started to receive a navtex or weatherfax broadcast.
Absolutely yes. Having date and time as a triggers increases possibilities to infinite noted for version 0.7.0
Consider using the action "command" to open/close fldigi if you have it installed in openplotter.

Quote:
Originally Posted by conachair View Post
Got the wind vane working now

code for the creation of proper checksum in an arduino mega should anyone be interested...
Definitely the world is changing. Now we have not only people building high tech free projects at home but people fixing defective proprietary devices

An user from the OpenPlotter Spanish forum is building a "hot-wire" wind sensor without mobile parts:







Makers of the world, unite!. We are legion.
__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Old 11-01-2016, 08:32   #221
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

An user from the Yacht Club of Uruguay is working on a customizable gauge system according to the script suggested by Vamonos. I will try to implement it on v0.7.0 too.

https://youtu.be/scxcvnoXXbU

__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Old 11-01-2016, 09:17   #222
Registered User

Join Date: Apr 2012
Location: Turkey, Greece
Boat: Moody 44
Posts: 111
Re: OpenPlotter project

Quote:
Originally Posted by Sailoog View Post
An user from the Yacht Club of Uruguay is working on a customizable gauge system according to the script suggested by Vamonos. I will try to implement it on v0.7.0 too.

https://youtu.be/scxcvnoXXbU

The YouTube vid looks promising
affinite is offline   Reply With Quote
Old 12-01-2016, 08:24   #223
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

This video shows the hot-wire wind sensor prototype working in openplotter. Amazing!

https://youtu.be/dl76Sz4mNWU
__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Old 12-01-2016, 09:13   #224
Registered User

Join Date: Jan 2011
Posts: 8
Re: OpenPlotter project

This tip maybe of use to anyone here who is new to the world of single board computers and linux, like me.

I followed the instructions on the Raspberry site about formatting (using SDformatter) and copying (using W32DiskImager) the Openplotter image to a 32G SD card. The Pi booted first time, and I thought, this is easy. However I then tried to download some maps (in fact for zyGrib) and promptly ran out of space on the card!! When I looked on FileManager it was showing zero free space on the card, and also when I tried to reboot it wouldn’t because there was no space available to the system for temporary files. I had to re-format and re-image the card to get the system to boot again.

The solution is having booted Openplotter for the first time, it is necessary to go into raspi-config and use the ‘expand filesystem’ option to allow all the space on the card to be available. This is because the image only seems to create a partition big enough for itself, and not for large amounts of other data.

Hope this is of some help to other newbies.

Thanks to the team for all their hard work on what looks to be a brilliant project.

Mike
Upnorth1 is offline   Reply With Quote
Old 12-01-2016, 09:27   #225
Registered User

Join Date: Jul 2015
Location: Barcelona, Catalonia.
Posts: 297
Re: OpenPlotter project

Quote:
Originally Posted by Upnorth1 View Post
This tip maybe of use to anyone here who is new to the world of single board computers and linux, like me.

I followed the instructions on the Raspberry site about formatting (using SDformatter) and copying (using W32DiskImager) the Openplotter image to a 32G SD card. The Pi booted first time, and I thought, this is easy. However I then tried to download some maps (in fact for zyGrib) and promptly ran out of space on the card!! When I looked on FileManager it was showing zero free space on the card, and also when I tried to reboot it wouldn’t because there was no space available to the system for temporary files. I had to re-format and re-image the card to get the system to boot again.

The solution is having booted Openplotter for the first time, it is necessary to go into raspi-config and use the ‘expand filesystem’ option to allow all the space on the card to be available. This is because the image only seems to create a partition big enough for itself, and not for large amounts of other data.

Hope this is of some help to other newbies.

Thanks to the team for all their hard work on what looks to be a brilliant project.

Mike
Thanks Upnorth1.

That is described in the installation guide. But we have to update it to the last raspbian version way.
__________________
OpenPlotter Project
https://openmarine.net/openplotter
Sailoog is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Want To Buy: Project Boat: Engineless 35'ish blue water cruiser project Max Sail Classifieds Archive 52 24-03-2013 12:27
Greetings + my project Marco Meets & Greets 8 27-02-2009 16:28
Major Project: What is the best way to organize our discussions? Andy R Forum Tech Support & Site Help 6 04-04-2006 14:21
Our ongoing project - Offshore 41 By Invitation Construction, Maintenance & Refit 7 04-12-2005 06:42
Portal sailing website project CaptainTom Meets & Greets 2 20-03-2003 06:50

Advertise Here


All times are GMT -7. The time now is 14:22.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.