On Sun, Dec 18, 2016 at 1:06 PM, Mark Sims <hol...@hotmail.com> wrote:
> Binary or NMEA you need routines like send_msg_start, send item (like > integer, float, double), send_msg_end. For received messages you need > things like get_message, get_item_from_message, etc. The code to do that > is not much more complicated for a binary protocol or an ASCII one like > NMEA. > One factor that leads me to prefer NMEA is that my GPS already produces it, so all I would have to do for the satellite, time, and other GPS data would be to send the NMEA sentences from the GPS to the host port, no parsing and reformatting required. In order to inject GPSDO data into this stream, I would have to implement an NMEA multiplexer and construct the new sentence(s) as you describe above.Of course I would still need an NMEA parser in order to interpret commands from the host, but in the Arduino world there is TinyGPS++, a very handy open source library for this. I see that although the Z3801A's SCPI messages would be pretty easy to implement, there are several inconvenient or limiting aspects to this interface. (please correct me if I am wrong on these) --It does not stream data the way NMEA does, so the host has to keep asking for data. --As has been mentioned earlier, most of the responses have no identifier, so both ends have to be careful not to get out of sync. --The EFC value is given as an integer percent -100 to 100, so there is not enough resolution to really tell what the DAC is doing. -- It does not have the satellite position and C/N data that is reported in the NMEA GSV sentence, so LH can't make its nice satellite plots. One thing I like about the Z3801A's format is the way the TCOD message includes brief status and alarm information, so the data doesn't get clogged with routine data but the host can tell when to request detailed information. -- --Jim Harman _______________________________________________ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.