Gpredict and Rotctld problem. AZ & EL reads error message in Rotator controll section

I’m trying to use rotctld to communicate with gpredic. The command is: rotctld -m 603 -r /dev/ttyAMA0 -t 4533 -T 127.0.0.1 -s 9600 & or : rotctld -m 603 -r /dev/ttyAMA0 -t 4533 -s 9600 & in the terminal Now, when using gpedrict I get the message in antenna rotor controller: “Read: Error” Marked in red in the image below as “Fehler”

Any advice? You can see the image below (language is German idk why)

I switched to ttyS0 and still not working:

I got these in return

Connection opened from localhost:54604
rotctl(d): p ‘’ ‘’ ‘’ ‘’
rot_get_position called
gs232b_rot_get_position called
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400455 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400445 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400477 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400440 seconds after 0 chars
rotctl_parse: NETROTCTL_RET -5
rotctl(d): P ‘40,11’ ‘0,00’ ‘’ ‘’
rot_set_position called az=40.11 el=0.00
rot_set_position: south_zero=0
gs232b_rot_set_position called: az=40.11 el=0.00
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 9 bytes
0000 57 30 34 30 20 30 30 30 0d W040 000.
write_block called
write_block(): TX 1 bytes
0000 0d .
rotctl_parse: NETROTCTL_RET 0
rotctl(d): p ‘’ ‘’ ‘’ ‘’
rot_get_position called
gs232b_rot_get_position called
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400444 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400437 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400223 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400440 seconds after 0 chars
rotctl_parse: NETROTCTL_RET -5
rotctl(d): p ‘’ ‘’ ‘’ ‘’
rot_get_position called
gs232b_rot_get_position called
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400143 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400443 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400437 seconds after 0 chars
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 3 bytes
0000 43 32 0d C2.
read_string called, rxmax=32
read_string(): Timed out 0.400437 seconds after 0 chars
rotctl_parse: NETROTCTL_RET -5
rotctl(d): S ‘’ ‘’ ‘’ ‘’
rot_stop called
gs232b_rot_stop called
rig_flush: called for serial device
serial_flush called
tcflush
write_block called
write_block(): TX 2 bytes
0000 53 0d S.
write_block called
write_block(): TX 1 bytes
0000 0d .
rotctl_parse: NETROTCTL_RET 0
Connection closed from localhost:54604

How is the rotator connected ?
Do you see any of these devices with ls -l /dev/ttyUSB* /dev/ttyA* /dev/ttyS* ?
Have you tried minicom on the port to see what it reponds with the expected commands ?

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