I’m taking other way to test Gpredict, Now, I’m using this code from Github to emulate the Yaesu gs232 rotor controller to be able to control the Yaesu G5500 later ( I had to modify the module path in the test.yaml file). The Github code has a test code to emulate the Yaesu G5500 respond. Following the instrucctions of the code I had to run socat to create a virtual cable
sudo socat -d -d pty,link=/dev/ttyS10,raw,echo=0 pty,link=/dev/ttyS11,raw,echo=0 &
But the PI gave me other virtual serial ports: pts/1 & pts/2
pi@raspberrypi:~ $ 2023/09/13 09:20:45 socat[1288] N PTY is /dev/pts/1
2023/09/13 09:20:45 socat[1288] N PTY is /dev/pts/2
2023/09/13 09:20:45 socat[1288] N starting data transfer loop with FDs [5,5] and [7,7]
Then I run rotctld like:
sudo rotctld -C post_write_delay=700 -C timeout=900 -vvvvvvv -m 603 -s 57600 -r /dev/pts/2 &
pi@raspberrypi:~ $ rotctld, Hamlib 4.6~git from indeterminate source revision. 32-bit
Report bugs to hamlib-developer@lists.sourceforge.net
rot_init called
initrots4_gs232a called
rot_register (601)
rot_register (609)
rot_register (610)
rot_register (602)
rot_register (603)
rot_register (611)
rot_register (612)
rot_register (604)
rot_register (605)
rot_register (606)
rot_register (607)
rot_register (608)
gs232b_rot_init called
set_conf: called
rot_token_lookup called lookup post_write_delay
rot_set_conf called
rot_set_conf: post_write_delay=‘700’
frontrot_set_conf called
rot_token_lookup called lookup timeout
rot_set_conf called
rot_set_conf: timeout=‘900’
frontrot_set_conf called
rot_open called
serial_open: /dev/pts/2
serial_setup: tcgetattr
serial_setup: cfmakeraw
serial_setup: cfsetispeed=57600,0x1001
serial_setup: cfsetospeed=57600,0x1001
serial_setup: data_bits=8
serial_setup: parity=0
serial_setup: Handshake=None
serial_setup: tcsetattr TCSANOW
read_string_generic called, rxmax=4095 direct=1, expected_len=1
ser_set_dtr: DTR=0
ser_set_dtr: Cannot change DTR - Inappropriate ioctl for device
ser_set_rts: RTS=0
ser_set_rts: Cannot change RTS - Inappropriate ioctl for device
Opened rot model 603, ‘GS-232B’
Backend version: 20220109.0, Status: Stable
In the test.yaml file I changed the port to pts/2
like this:
serial:
device: ‘/dev/pts/2’’
baud: 57600
Then I run the python code like:
pi@raspberrypi:~ $ sudo /usr/bin/env python “/home/pi/Dokumente/emul-gs232-main/emul-gs232.py” -c “/home/pi/Dokumente/emul-gs232-main/config/test.yaml” &
I run Gpredict with TCP 4533 port
I get the same “Read: Error” for the degrees like in the picture in my orginal post
I get this in the terminal:
GPIO.setup(val, GPIO.OUT)
Connection opened from 127.0.0.1:49188
rotctl(d): p ‘’ ‘’ ‘’ ‘’
rot_get_position called
gs232b_rot_get_position called
read_string_generic called, rxmax=4095 direct=1, expected_len=1
write_block(): TX 3 bytes, method=2
0000 43 32 0d C2.
read_string_generic called, rxmax=32 direct=1, expected_len=1
read_string_generic(): Timed out 0.900 seconds after 0 chars, direct=1
read_string_generic called, rxmax=4095 direct=1, expected_len=1
write_block(): TX 3 bytes, method=2
0000 43 32 0d C2.
read_string_generic called, rxmax=32 direct=1, expected_len=1
read_string_generic(): Timed out 0.900 seconds after 0 chars, direct=1
read_string_generic called, rxmax=4095 direct=1, expected_len=1
write_block(): TX 3 bytes, method=2
0000 43 32 0d C2.
… it continues to printing