From: Saku <oh...@sr...> - 2017-11-06 16:22:18
|
Hi ! I'm (slowly) building up an interface for TS50S with WiFi microcontroller ESP12e. Versions 1 and 2 are in test phase. V1 is just "pass through" serial2tcp that can be used with linux socat command to redirect serial device over tcp. V2 is emulating rigctld so that clients can directly connect to esp12e "thinking" that it is rigctld daemon. Both are working, but I still need more fixes to code as I have also embedded iambic keyer and Kenwoods KY KS command extension on same esp12e. That needs some interrupt handling to work while rig is polled. During this project I have found out some problems with TS50s definition. 1. TS50s supports only 4800baud 8-none-2stop. It should be default in definition to avoid need of setting those with parameters. I was able to change that (sorry no patch) and recompile but maybe it should be so also in official version. 2. TS50S rigctld "get_mode" issues "MD" command that TS50S how ever can not understand. 0000 49 46 3b IF; read_string(): RX 38 characters 0000 49 46 30 30 30 30 33 35 37 33 35 35 32 20 20 20 IF00003573552 0010 20 20 2d 30 34 30 30 30 20 20 30 32 30 33 30 30 -04000 020300 0020 30 31 30 38 20 3b 0108 ; rigctl(d): m 'currVFO' '' '' '' kenwood_get_mode called kenwood_safe_transaction called kenwood_transaction called kenwood_transaction: cmdstr = MD write_block(): TX 3 bytes 0000 4d 44 3b MD; read_string(): RX 2 characters 0000 3f 3b ?; kenwood_transaction: Unknown command or rig busy 'MD' kenwood_transaction: Retrying shortly read_string(): Timed out 3.1472 seconds after 0 chars The mode should be read out from "IF" response byte 9, that uses same numbering as MD, to get it working. There is no other way than issuing "IF" command to get current vfo mode. This is the one that I can not change as I have no idea how it is done inside the code. I would like to see "MD" changed to "IF" for getting mode out from TS50S. If someone who knows the code would have some spare time to fix it sometimes. Thank you ! -- Saku OH1KH |