Test Model : raspberry PI 3 (RPI3)
USB TO RS485 ( FT232 )
Temperature/hygrometer (24V)
CODE:
import minimalmodbus as minimalmodbus
import serial,time
import serial.tools.list_ports as sp
for i in range(len(sp.comports())):
desc = sp.comports()[i].description
if desc.find('USB2.0') != -1:
port = sp.comports()[i].device
break
if __name__ == '__main__':
# /dev/ttyUSB0
instrument = minimalmodbus.Instrument('/dev/ttyUSB0', 2)
instrument.serial.baudrate = 9600 # Baud
instrument.serial.bytesize = 8
instrument.serial.parity = serial.PARITY_NONE
instrument.serial.stopbits = 1
instrument.address = 2
instrument.mode = minimalmodbus.MODE_RTU
instrument.serial.timeout = 1 # seconds
instrument.clear_buffers_before_each_transaction = True
# instrument.debug = True
instrument.precalculate_read_size = True
# instrument.serial.
# instrument.serial.close()
while True:
try:
print(instrument.read_register(0,functioncode=4))
# temp1 = instrument.read_bit(30033,)
# temp2 = instrument.read_register(1,functioncode= int('0x04',16))
# print(temp2)
# time.sleep(10)
# temp1 = instrument.read_register(0,functioncode= int('0x04',16))
except minimalmodbus.InvalidResponseError:
print('checksum error')
continue
# except IOError as e:
# print("Failed to read from instrument",e)
FIND ERR0R T0 dmesg:
[312355.728463] ftdi_sio ttyUSB0: usb_serial_generic_write_bulk_callback - urb stopped: -32
[312356.734082] ftdi_sio ttyUSB0: usb_serial_generic_write_bulk_callback - urb stopped: -32
[312357.739717] ftdi_sio ttyUSB0: usb_serial_generic_write_bulk_callback - urb stopped: -32
[312358.745338] ftdi_sio ttyUSB0: usb_serial_generic_write_bulk_callback - urb stopped: -32
[312359.750962] ftdi_sio ttyUSB0: usb_serial_generic_write_bulk_callback - urb stopped: -32
At first, normal communication was carried out, but suddenly WRITE_CALLBACK
What is the problem, and what can I do?
sudo nano /boot/cmdline.txt after modifying dwc_otg.speed=1 and trying restart with the same result.