Quote:
Originally Posted by daveNZ
Is it possible to describe how, in brief??
Or should I just buy a Yacht Devices or NMEA Tools product?
I would love to use this for the Autopilot feature in iSailor to a Raymarine autohelm. (Which would need to be bidirectional)
|
Three questions, I'll provide three answers, only the first being lengthy,
1. My part is a little device with a microcontroller and Wifi on a circuit board, about 1" x 1", including
antenna, known as an ESP8266. It has about a dozen connections to the physical world, including
serial connections that match the
serial output of a typical chartplotter (which is to say, that does
not match the serial connections to a computer.)
To digress a bit, I am, quite frankly, astonished at what a couple of bucks can buy today. I clearly remember the day when WiFi was expensive, and only the very fanciest of notebooks had it. And the microcontroller, well, the CPU and RAM in this thing roughly match that of a 10 year old computer once worth piles of money.
Anyway, I wrote a tiny bit of code to "listen" to NMEA position and
depth data coming in the serial port and blindly send that raw data via WiFi to any device that's listening.
I then configured Navionics to "listen" for that dumb device and tada, there's my numbers.
Now, I understand that Navionics will "listen" for a number of devices from quite a number of manufacturers. However, as near as I can tell, most all of these devices do not send plain, raw NMEA data out. It seems as if they all encapsulate the data in some undocumented, proprietary manner.
Maybe they do this to protect their own financial interests or maybe there's some valid double-checking going on that I'll discover at the worst possible moment (isn't that always when bad things happen?), I really can't say.
What I can say is that all I wanted was a way to send
GPS and
depth data to my tablet, and when I got that, I didn't pursue it further. My tablet is just a convenient tertiary device, my secondary device being a decent chartplotter and my primary device being paper (cardboard)
charts.
I say "cardboard" because while I have all the official paper charts a man could ever want and update them religiously, I tend to print (from OpenCPN) letter sized versions on card stock of a particular route at various zooms, marking them up by hand as appropriate and sticking them in plastic sleeves.
So, for my very narrow use case, there's no need to spend more on a fancier
commercial unit. However, if I wanted more data to appear, I think I'd need to buy something else, as Navionics appears to only accept these two pieces of info from this type of device.
2. Should you buy something else? From your question three, it seems as if you might
need to. However, even if your needs precisely matched mine, you might
want to. Remember, a failure in my $2.00 unit is at best an annoyance; I have other, perhaps better ways to navigate. If your computer/tablet is the
only way for you to find your way home, you might want to spend some extra bucks.
3a. I don't know if this scheme would
work with iSailor; never tried it.
3b. Even if it does
work with iSailor, it's not currently bidirectional. It could (maybe even fairly easily) be made bidirectional, but it's not now.
3c. Even if it was bidirectional, or I made it so, I would
not trust it for autopilot use.
The reason for this is a geeky technical point; I send the data using a protocol known as UDP.
Most networking that people are familiar with uses a protocol known as TCP. TCP ensures that data gets from A to B, uncorrupted and in the right order, with the sender knowing that the receiver got it, retrying (and retrying and retrying ...) until the receiver
does acknowledge receipt.
UDP is dumb. The data leaves (via wire or Wifi, it matters not) and the sender neither knows nor cares if someone on the other side ever got it. As such, UDP is simple and easy to implement. And in this case, it's entirely appropriate. The data appears from the chartplotter about once a second, and if a packet gets
lost here or there, who cares. How far do we travel in a second .. how much does the depth change in a second?
But to lose a bit of autopilot data, with the tablet never knowing that the autopilot didn't get it, or to have the command corrupted ...
Note that I've been in the computer and
electronics industry for 50 years and I'm suspicious of
wires for autopilot use. Wifi to steer my
boat? Tough for me to get my
head around
that.
Hope this helps.
Alan