diff --git a/src/drivers/distance_sensor/cm8jl65/CM8JL65.cpp b/src/drivers/distance_sensor/cm8jl65/CM8JL65.cpp index 7e5894ed82..8887408ff3 100644 --- a/src/drivers/distance_sensor/cm8jl65/CM8JL65.cpp +++ b/src/drivers/distance_sensor/cm8jl65/CM8JL65.cpp @@ -100,7 +100,7 @@ CM8JL65::CM8JL65(const char *port, uint8_t rotation) : device::Device::DeviceId device_id; device_id.devid_s.bus_type = device::Device::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_port[sizeof(_port) - 2]); + uint8_t bus_num = atoi(&_port[strlen(_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { device_id.devid_s.bus = bus_num; diff --git a/src/drivers/distance_sensor/leddar_one/LeddarOne.cpp b/src/drivers/distance_sensor/leddar_one/LeddarOne.cpp index a46d4abeac..e57e6771e4 100644 --- a/src/drivers/distance_sensor/leddar_one/LeddarOne.cpp +++ b/src/drivers/distance_sensor/leddar_one/LeddarOne.cpp @@ -48,7 +48,7 @@ LeddarOne::LeddarOne(const char *serial_port, uint8_t device_orientation): device::Device::DeviceId device_id; device_id.devid_s.bus_type = device::Device::DeviceBusType::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_serial_port[sizeof(_serial_port) - 2]); + uint8_t bus_num = atoi(&_serial_port[strlen(_serial_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { device_id.devid_s.bus = bus_num; diff --git a/src/drivers/distance_sensor/lightware_laser_serial/lightware_laser_serial.cpp b/src/drivers/distance_sensor/lightware_laser_serial/lightware_laser_serial.cpp index e31bdd9964..34716cbc2e 100644 --- a/src/drivers/distance_sensor/lightware_laser_serial/lightware_laser_serial.cpp +++ b/src/drivers/distance_sensor/lightware_laser_serial/lightware_laser_serial.cpp @@ -54,7 +54,7 @@ LightwareLaserSerial::LightwareLaserSerial(const char *port, uint8_t rotation) : device::Device::DeviceId device_id; device_id.devid_s.bus_type = device::Device::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_port[sizeof(_port) - 2]); + uint8_t bus_num = atoi(&_port[strlen(_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { device_id.devid_s.bus = bus_num; diff --git a/src/drivers/distance_sensor/pga460/pga460.cpp b/src/drivers/distance_sensor/pga460/pga460.cpp index e479fc7d50..1765cde777 100644 --- a/src/drivers/distance_sensor/pga460/pga460.cpp +++ b/src/drivers/distance_sensor/pga460/pga460.cpp @@ -51,7 +51,7 @@ PGA460::PGA460(const char *port) _device_id.devid_s.devtype = DRV_DIST_DEVTYPE_PGA460; _device_id.devid_s.bus_type = device::Device::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_port[sizeof(_port) - 2]); + uint8_t bus_num = atoi(&_port[strlen(_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { _device_id.devid_s.bus = bus_num; diff --git a/src/drivers/distance_sensor/tfmini/TFMINI.cpp b/src/drivers/distance_sensor/tfmini/TFMINI.cpp index f4b3156245..d20a20b4c2 100644 --- a/src/drivers/distance_sensor/tfmini/TFMINI.cpp +++ b/src/drivers/distance_sensor/tfmini/TFMINI.cpp @@ -50,7 +50,7 @@ TFMINI::TFMINI(const char *port, uint8_t rotation) : device_id.devid_s.devtype = DRV_DIST_DEVTYPE_TFMINI; device_id.devid_s.bus_type = device::Device::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_port[sizeof(_port) - 2]); + uint8_t bus_num = atoi(&_port[strlen(_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { device_id.devid_s.bus = bus_num; diff --git a/src/drivers/distance_sensor/ulanding_radar/AerotennaULanding.cpp b/src/drivers/distance_sensor/ulanding_radar/AerotennaULanding.cpp index d959f71eb1..6558aef348 100644 --- a/src/drivers/distance_sensor/ulanding_radar/AerotennaULanding.cpp +++ b/src/drivers/distance_sensor/ulanding_radar/AerotennaULanding.cpp @@ -48,7 +48,7 @@ AerotennaULanding::AerotennaULanding(const char *port, uint8_t rotation) : device::Device::DeviceId device_id; device_id.devid_s.bus_type = device::Device::DeviceBusType_SERIAL; - uint8_t bus_num = atoi(&_port[sizeof(_port) - 2]); + uint8_t bus_num = atoi(&_port[strlen(_port) - 1]); // Assuming '/dev/ttySx' if (bus_num < 10) { device_id.devid_s.bus = bus_num;