[Hamlib-developer] rotctld south_zero double adjusted?
Library to control radio transceivers and receivers
Brought to you by:
n0nb
|
From: Paul <n9g...@gm...> - 2026-07-10 10:00:34
|
Hello, I am having an issue trying to get my rotor-ez controller with south-centered-meter to work correctly using rotctld to allow a -m 2 connection. Trace indicates Hamlib 4.6.2 2025-02-09T21:03:50Z. If I connect directly with rotctl only, the position reports correctly. Going through rotctld, the position is off by 180°. Rotator is physically positioned at 180° during below traces. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> So, using: *rotctl -m 401 -r /dev/ttyS2 --set-conf=south_zero=1 -vvvvv * ..the position reports correctly and end of trace looks like this: Rotator command: p rotctl_parse: input_line: p rot_get_position called rotorez_rot_get_position called rotorez_send_priv_cmd called write_block(): TX 4 bytes 0000 41 49 31 3b AI1; read_block_generic called, direct=1 read_block_generic(): RX 4 bytes, direct=1 0000 3b 33 36 30 ;360 rotorez_rot_get_position: "360" after conversion = 360.0 rotorez_rot_get_position: azimuth = 0.0 deg; elevation = 0.0 deg rot_get_position: got az=0.00, el=0.00 rot_get_position: south adj to az=180.00 *Azimuth: 180.00* Elevation: 0.00 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> If I start rotctld like this: *rotctld -m 401 --set-conf=south_zero=1 -r /dev/ttyS2 -t 4533 -s 4800 -vvvvv* ...and then start rotctl -m 2 -vvvvv, I get this: (rotctl trace) Rotator command: p rotctl_parse: input_line: p rot_get_position called netrotctl_get_position called network_flush called write_block(): TX 2 bytes 0000 70 0a p. read_string_generic called, rxmax=64 direct=1, expected_len=1 read_string_generic(): RX 7 characters, direct=1 0000 31 38 30 2e 30 30 0a 180.00. read_string_generic called, rxmax=64 direct=1, expected_len=1 read_string_generic(): RX 5 characters, direct=1 0000 30 2e 30 30 0a 0.00. rot_get_position: got az=180.00, el=0.00 rot_get_position: south adj to az=0.00 *Azimuth: 0.00* Elevation: 0.00 >>>>>>>> (rotdtld trace) rotctl(d): p '' '' '' '' rot_get_position called rotorez_rot_get_position called rotorez_send_priv_cmd called write_block(): TX 4 bytes 0000 41 49 31 3b AI1; read_block_generic called, direct=1 read_block_generic(): RX 4 bytes, direct=1 0000 3b 33 36 30 ;360 rotorez_rot_get_position: "360" after conversion = 360.0 rotorez_rot_get_position: azimuth = 0.0 deg; elevation = 0.0 deg rot_get_position: got az=0.00, el=0.00 *rot_get_position: south adj to az=180.00* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> For more detail, I have a discussion posted: https://github.com/Hamlib/Hamlib/discussions/2090 Thank you for any help. -- 73 - Paul - N9GXA |