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:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Read only SeaTalk1. The easy way.
#1
This is my first post on the forum.

I have search (not extensively) and I have not found my idea reflected in any post if this forum nor in the entire web as far as I have seen.

I am making a SeaTalk1 monitor ,as previous task for a remote control for my ST1000 autopilot.

Taking account of the glorious work of Thomas Knauf and others and discovering that the 9th bit was just a way of complicating things, but without any utility for monitoring purposes, (hence I can discard It without any consequences in my case),  I found that I could read easily SeaTalk without charging any 9th bit library into my sketch.
Simply converting the "command" bit into a stop bit. So reading in 8N2 mode.
The bits are transmited in LSB orders in the byte structure, in this way the "command" bit is just before the stop bit.
So reading in 8N2 mode the "command" bit is "read" as stop bit instead of a data bit.
I know that a stop bit has to be high, but It seems that the routine doesnt care about the state, once It has accounted for 8 bits, so no matter if this second stop bit is high or low.


I have tested this idea in 328P  (NANO and MINI PRO) and in PRO MICRO 32u4.
Run perfect.

I tried in Seeeduino XIAO but failed.
My poor knowledge of microcontrollers is not enough to discover the reason.

I encourage you all to test in your own micros and report.

I think this is an easy way to read only SeaTalk1.

I can give more details if anybody interested.
Reply
#2
Welcome to the forum, thanks for sharing.

Signalk can also read seatalk1 now as well.
https://github.com/SignalK/signalk-serve...k(GPIO).md
Reply
#3
I have an older raymarine system that uses seatalk. I would like to get the wind info into opencpn to create polars for my boat. I would like to do this on a raspberry pi running openplotter which I have now. If I build this design with the optocoupler, will this do what I want. I'm a graphic designer and not great at reading schematics. If someone could explain to me how to wire this I would be happy to do illustrations to post here for anyone else wanting to try this. Any help would be appreciated.
Reply
#4
Photo 
Hi all,

So I'm attempting to recreate this, but I'm a total newbie. So if anyone is able to take a look at this and make sure I'm not about to kill some GPIO pins I would appreciate it. All that I have left to do is to connect the seatalk data (and ground I assume?) to the other side of the octocoupler. Let me know if I'm being thick with anything, and I know this looks like a total mess, that's only because it is.

[img]<a data-flickr-embed=[/img][Image: 50826197747_954e349b2d_k.jpg]" />
[img]<a data-flickr-embed=[/img][Image: 50825351713_5c5ef43bb4_k.jpg]" />

So excuse the awful photos, I have not worked out flier it seems. The resistor is a 4k7 that should be acting as a pull up resistor, I hope circuit is as drawn above.

Thanks in advance everyone
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)