DDS COMB PROTOCOLS FOR THE HOST =============================== ********** HOST IP DESCRIPTION ********** - IP is DHCP and UDP on port 37829 - After cold boot, first host to connect is the only one the unit will accept commands from, until reboot - Host sends commands as listed below, unit asynchronously responds if required - Every second or so, host sends a heartbeat and the unit echoes it, harmless if not sent - All command parameters are numeric ASCII, integers, no commas or signs, space delimited - invalid commands are ignored (e.g. wrong command length, outside range, etc) ********** HOST COMMANDS ********** =================================== CMD Size Description ----------------------------------- H 1 Heartbeat, echoed by unit so both know still connected V 1 Request Rabbit version code R 1 Reset channels' absolute phases now* F 7-13 Set the fixed Frequency, in Hz, 0.03-175MHz byte #1: "F" #2: "A", "B", "C" or "D", the channel #3: [space] 1-9: frequency in Hz #last: [space] Example: "FC 123456789 " is set ch-C to 123.456789MHz A 5-7 Set the Amplitude, 0-100% byte #1: "A" #2: "A", "B", "C" or "D", the channel #3: [space] 1-3: normalized amplitude in percent #last: [space] Example: "AB 50 " is set ch-A to half amplitude P 5-7 Set the Phase lead, 0-359° relative to itself byte #1: "P" #2: "A", "B", "C" or "D", the channel #3: [space] 1-3: phase in degrees #last: [space] Example: "PA 10 " is set ch-A ahead by 10° S 25-39 Sweep The Frequency byte #1: "R" #2: "A", "B", "C" or "D", the channel #3: [space] 1-9: High freq, in Hz, 10-175MHz, must be higher than low f 1: [space] 1-9: Low freq, in Hz, 10-175MHz, must be lower than high f 1: [space] 1-9: Step size, in Hz, 1Hz-175MHz 1: [space] 1-5: Step time, in nS, 4-65000nS, rounded to 4nS increments #last: [space] Example: "SD 123400000 101000000 15000 2000 " means sweep ch-D between 123.4MHz and 101MHz, stepping 15KHz every 2uS. U 5-7 Ramp the output amplitude up and down, 0-255uS (0=no ramp) byte #1: "U" #2: "A", "B", "C" or "D", the channel #3: [space] 1-3: ramp time in uS #last: [space] Example: "AU 123 " is ramp ch-A amplitude up and down in 126uS, using the CH-A TTL input. *NOTE ON "R": Each channel's phase is relative to itself, the R command will reset phase differences between channels, however this only works for identical frequencies and is exclusive of the set phase offset. ********** UNIT RESPONSES ********** ==================================== RES Size Description ----------------------------------- H 1 Heartbeat I 37 IP address of a unit without a host byte #1: "I" #2: Type identifier (e.g. "C" for DDS Comb) #3-22: Unit name #23-37: Unit's IP address V >2 Version (in ASCII) byte #1: "V" #2-21: Rabbit version string ********** UNIT RESPONSE EXAMPLES ********** "H" = heartbeat, unit is alive and well and living in Toronto "V1.2.3" means Rabbit version is 1.2.3 "ICDDS Comb #1 192.168.1.101 " means 'DDS Comb #1' on 192.168.1.101 is looking for a host