Hyun-je / pyrplidar

Full-featured python library for Slamtec RPLIDAR series
MIT License
56 stars 24 forks source link

IndexError: string index out of range #1

Open Caumaker opened 5 years ago

Caumaker commented 5 years ago

Hi there, thanks for the pyrplidar. I was searching how begin with RPLIDAR A1M8. And I found your project. It's is very clear and well documented. Congratulations. I have experiencing some issue when I try to connect to my lidar. I got the follow crash in every example:

λ python check_connection.py PyRPlidar Info : device is connected Traceback (most recent call last): File "check_connection.py", line 33, check_connection() File "check_connection.py", line 13, info = lidar.get_info() File "C:\Python27\lib\site-packages\p discriptor = self.receive_discripto File "C:\Python27\lib\site-packages\p discriptor = PyRPlidarResponse(self File "C:\Python27\lib\site-packages\p self.sync_byte1 = raw_bytes[0] IndexError: string index out of range

Could you help me? I tried on Windows and Linux already. No successs. Thanks in advance.

kuehjialee commented 5 years ago

Hi there, thanks for the pyrplidar. I was searching how begin with RPLIDAR A1M8. And I found your project. It's is very clear and well documented. Congratulations. I have experiencing some issue when I try to connect to my lidar. I got the follow crash in every example:

λ python check_connection.py PyRPlidar Info : device is connected Traceback (most recent call last): File "check_connection.py", line 33, check_connection() File "check_connection.py", line 13, info = lidar.get_info() File "C:\Python27\lib\site-packages\p discriptor = self.receive_discripto File "C:\Python27\lib\site-packages\p discriptor = PyRPlidarResponse(self File "C:\Python27\lib\site-packages\p self.sync_byte1 = raw_bytes[0] IndexError: string index out of range

Could you help me? I tried on Windows and Linux already. No successs. Thanks in advance.

Hi. I realized that the Baud Rate of 115200 is used in this library. So, instead of using 256000 as stated in the example codes, please change it to 115200. This will solve your problem.

adolfoherrera1417 commented 5 years ago

Hello, I have been getting this same error and have already changed the Baud Rate to 115200, but that did not seem to help. Any other changes I could make?

kuehjialee commented 5 years ago

How about your serial port? Sometimes, your serial port name will change after shutting down. Double check your "Port" and "Baud Rate".

irbigturtle commented 4 years ago

Hi, I am having the same issue. I double checked the baud rate and port multiple times. I also reinstalled the driver - no change. Any thoughts? Same model A1M8

Ajasra commented 4 years ago

The same problem with the code. With right Baud Rate and com port.

Yang-Changhui commented 3 years ago

请问一下,大家这个问题解决了吗

Yang-Changhui commented 3 years ago

hi,I met the same problem,I want to know if you solve the problem.If you could help me ,I will appreciate it

ZGX010 commented 3 years ago

i find https://github.com/SkoltechRobotics/rplidar

yurikleb commented 3 years ago

Changing the baud to 115200 worked for my RPLIDAR A1M8 on Ubuntu in python3

TCIII commented 3 years ago

This works for the A1M8 (all firmware versions) and the A2M8 (latest firmware version) that run a 115,000 baud:

Setup the RPLidar

PORT_NAME = '/dev/ttyUSB0' lidar = RPLidar(None, PORT_NAME, timeout=3)

kamil52512 commented 2 years ago

On Windows 10, modifying a file the pyrplidar_serial.py from library helps. In line 13 replace: "self._serial = serial.Serial(port, baudrate, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, timeout=timeout, dsrdtr=True)" to " self._serial = serial.Serial(port, baudrate, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, timeout=timeout, dsrdtr=False)"