12 feb 2017

SEATALK SIMULATOR - ARDUINO



Seatalk Simulator - Arduino

Arduino ProMINI :

LCD 16x2 I2C :



Seatalk TTL Adapter/Converter Scheme & PCB :



Video :



Files :   https://drive.google.com/open?id=0B-aQ4eIWtpZcS3ZEODJUdnZnSlk


Download gerber files PCB:

https://drive.google.com/file/d/1dSL-7FrrBWgVSrfMhq1NHK1Pw2TRjHKv/view?usp=sharing

27 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Hola German. Fantástica página. Me va a ayudar mucho a testear los ST50 que llevo instalados.
    Una pregunta. He visto un esquema similar del adaptador seatalk-TTL y no lleva el 7805. Asimismo en tu esquema tampoco lo lleva. Si lo hace la placa y el circuito que muestras en el video. ¿Cual es su función? Las salidas RX TX las utilizaría con un arduino.
    Gracias

    ResponderEliminar
  3. La función del 7805 es alimentar el Arduino y la pantalla LCD, asi que, con la alimentación 12v que viene del seatalk (cable rojo) no necesitas nada más, (es conveniente ponerle un pequeño radiador al 7805).

    Este adaptador TTL además de cambiar el voltaje de la señal, también la invierte, fíjate que la señal Seatalk (cable amarillo) es 12v-0v-12v (no-invertida) y la del arduino es 0v-5v-0v (invertida).

    Un saludo.

    ResponderEliminar
  4. Queda claro. Ahorro un cable extra para alimentar el arduino.
    Gracias!

    ResponderEliminar
  5. Hello, great job
    could this simulator can be used to test st6000 head
    Thanks

    ResponderEliminar
    Respuestas
    1. Yes, but for test ST6000 better try with a Seatalk Monitor:

      http://berreizeta.blogspot.com.es/2017/02/seatalk-35-480x320-tft-monitor.html

      http://berreizeta.blogspot.com.es/2016/11/blog-post.html

      Eliminar
  6. HOla, Gracias pro compartir tu proyecto, me resulta muy interesante y quiero replcarlo.
    me puedes decir que libreria de LCD i2C utilizaste ?
    no logro compilar el proyecto en el IDE de Arduino

    ResponderEliminar
  7. Las librerías usadas están en el fichero de descarga.
    Comprueba las direcciones del LCD que no siempre son las mismas

    ResponderEliminar
  8. Hi, thanks a lot for sharing your projects. I am a newbie of playing with Arduino and is now studying how to use Arduino to send out Seatalk data. In your reply to comment on 2May2017, you stated that “Este adaptador TTL además de cambiar el voltaje de la señal, también la invierte, fíjate que la señal Seatalk (cable amarillo) es 12v-0v-12v (no-invertida) y la del arduino es 0v-5v-0v (invertida).” (translated by Google: “In addition to changing the signal voltage, this TTL adapter also reverses it, note that the Seatalk signal (yellow cable) is 12v-0v-12v (non-inverted) and that of the Arduino is 0v-5v-0v (inverted).”)
    However, from my understanding, Arduino TTL is non-inverted (i.e. 3.3/5v high, 0v low, idle bit high, start bit low) and for Arduino TTL to send data via Seatalk, we only need to scale up the voltage. Can you please shed me some light what I misunderstood? Thank you.

    ResponderEliminar
  9. Seatalk signal : bit 0 = 12v bit 1 = 0v

    Arduino signal : bit 0 = 0v bit 1 = 5v

    Convert volt 12 to 5 and invert signal

    ResponderEliminar

  10. Thank you very much for your reply and confirmation that my understanding regarding the Arduino TTL voltage (i.e. 0v for 0, 5v for 1) is correct. However, your reply also stated that the voltage of Seatalk is bit 0 = 12v bit 1 = 0v! This is contradicting with what I got from thomasknauf.de in which it is stated that “Serial Data, yellow: +12V=Idle/Mark=1, 0V=Space/Data=0”. Can you please give me some hints on what I got wrong? Thank you.

    ResponderEliminar
  11. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  12. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  13. HardwareSerial 9bits NickGammon :

    https://drive.google.com/open?id=0B-aQ4eIWtpZcUklrRVhHcWl0X2M

    ResponderEliminar
    Respuestas
    1. Thanks mate. Does it interfere with the normal behaviour of HardwareSerial when working at 8 bits? Any collateral effect?

      Eliminar
  14. Hi,

    Good job !

    I want to try it.

    Do you have a gebber file to print your circuit.

    I want to make it with https://cart.jlcpcb.com

    layer = 1
    dimension = 70mm x 70mm

    https://cart.jlcpcb.com/quote?orderType=1&stencilWidth=70&stencilLength=70&stencilCounts=5&stencilLayer=1&stencilPly=1.6&steelmeshSellingPriceRecordNum=A8256537-5522-491C-965C-646F5842AEC9&purchaseNumber=

    Best regards
    Olivier

    ResponderEliminar
  15. Added Gerber files link above.

    In JLCPCB : Panel by JLCPCB x = 2, y = 3
    Total = 30 pcbs x 10$

    ResponderEliminar
  16. Thanks.

    I buy protocard on fix nano, resistor, BC557, BC547.

    It's dont work. I need your help to fix it.

    Tension seatalk 12V : OK
    Tension GND : OK
    Tension 5V Arduino : OK
    Display screen : OK
    SendByte : KO
    Which the tension on yellow cable, seatalk ?

    ResponderEliminar
  17. Yellow cable in Seatalk is DATA 0-5V

    ResponderEliminar
  18. Just 2 values on yellow cable :
    OFF = 0V
    ON = 5V

    with flow 4800baups, the signal switch with this two values.

    We cant have for example 3V on seatalk ?

    Thats right ?

    ResponderEliminar
  19. Forget my question, answer is on your code

    digitalWrite(SEATALK_TX_OUT, LOWL); // allow output to float

    in int SendBit ( int cError, int cBit )
    digitalWrite(SEATALK_TX_OUT, cBit); // send bit to output

    Yellow cable give a analogic signal between 0 - 5V at 4800baups speed

    I track the issue on my proto arduino card

    Thanks a lot

    ResponderEliminar
  20. Hi,

    It's still KO.

    void loop () {

    delay(75);
    digitalWrite(SEATALK_TX_OUT, LOWL);
    delay(75);

    digitalWrite(SEATALK_TX_OUT, HIGHH);
    return;
    }

    Which value, i must see at probe "Seatalk data" ?

    I try to simulate your scheama in EasyEDA
    I change :
    BC457 in 2N2222
    BC557 in 2N2907

    It's correct ?


    It's correct ?


    ResponderEliminar
  21. BC547 BC557 pinout 1-C 2-B 3-E
    2n2222 2N2907 pinout 1-E 2-B 3-C

    ResponderEliminar
  22. Hello,
    Do you have some technical informations on SeatalkNG?
    My goal is to create a SeatalkNG to NMEA0183 (usb) to be used on OpenPlotter (Raspberry pi)

    ResponderEliminar