Skip to content

Commit e435f67

Browse files
author
Ilia O.
committed
Add Delta-2D, LDS08RR
1 parent 22d0d45 commit e435f67

10 files changed

Lines changed: 104 additions & 2 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This library supports:
1010
- SLAMTEC RPLIDAR A1
1111
- Neato XV11/Botvac
1212
- Xiaomi Roborock Mi 1st gen LDS02RR
13-
- 3irobotix Delta-2A, Delta-2B, Delta-2G, Delta-2A 115000 baud
13+
- 3irobotix Delta-2A, Delta-2B, Delta-2D, Delta-2G, LDS08RR, Delta-2A 115000 baud
1414
- LDROBOT LD14P, LD19
1515
- CAMSENSE X1
1616

examples/all_lidars_lds02rr_esp32/all_lidars_lds02rr_esp32.ino

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ const uint8_t LIDAR_GPIO_PWM = 15;// ESP32 GPIO connected to Lidar PWM pin
3939
//#define _3IROBOTIX_DELTA_2A_115200
4040
//#define _3IROBOTIX_DELTA_2A
4141
//#define _3IROBOTIX_DELTA_2B
42+
//#define _3IROBOTIX_DELTA_2D
43+
//#define _3IROBOTIX_LDS08RR
4244
//#define LDROBOT_LD14P
4345
//#define YDLIDAR_X4
4446
//#define YDLIDAR_X4_PRO
@@ -89,6 +91,10 @@ void setupLidar() {
8991
lidar = new LDS_DELTA_2A_230400();
9092
#elif defined(_3IROBOTIX_DELTA_2B)
9193
lidar = new LDS_DELTA_2B();
94+
#elif defined(_3IROBOTIX_DELTA_2D)
95+
lidar = new LDS_DELTA_2D();
96+
#elif defined(_3IROBOTIX_LDS08RR)
97+
lidar = new LDS_LDS08RR();
9298
#elif defined(LDROBOT_LD14P)
9399
lidar = new LDS_LDROBOT_LD14P();
94100
#elif defined(YDLIDAR_X4)

examples/all_lidars_lds02rr_esp32s3/all_lidars_lds02rr_esp32s3.ino

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ const uint8_t LIDAR_GPIO_PWM = 15;// ESP32S3 GPIO connected to Lidar PWM pin
3939
//#define _3IROBOTIX_DELTA_2A_115200
4040
//#define _3IROBOTIX_DELTA_2A
4141
//#define _3IROBOTIX_DELTA_2B
42+
//#define _3IROBOTIX_DELTA_2D
43+
//#define _3IROBOTIX_LDS08RR
4244
//#define LDROBOT_LD14P
4345
//#define YDLIDAR_X4
4446
//#define YDLIDAR_X4_PRO
@@ -90,6 +92,10 @@ void setupLidar() {
9092
lidar = new LDS_DELTA_2A_230400();
9193
#elif defined(_3IROBOTIX_DELTA_2B)
9294
lidar = new LDS_DELTA_2B();
95+
#elif defined(_3IROBOTIX_DELTA_2D)
96+
lidar = new LDS_DELTA_2D();
97+
#elif defined(_3IROBOTIX_LDS08RR)
98+
lidar = new LDS_LDS08RR();
9399
#elif defined(LDROBOT_LD14P)
94100
lidar = new LDS_LDROBOT_LD14P();
95101
#elif defined(YDLIDAR_X4)

keywords.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ LDS_DELTA_2A_230400 KEYWORD1
2020
LDS_DELTA_2A_115200 KEYWORD1
2121
LDS_DELTA_2B KEYWORD1
2222
LDS_DELTA_2G KEYWORD1
23+
LDS_DELTA_2D KEYWORD1
24+
LDS_LDS08RR KEYWORD1
2325
LDS_LDROBOT_LD14P KEYWORD1
2426
LDS_CAMSENSE_X1 KEYWORD1
2527

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version=0.6.3
33
author=Ilia O. <iliao@kaia.ai>
44
maintainer=Ilia O. <iliao@kaia.ai>
55
sentence=Laser distance scan sensors (LDS/LIDAR) wrapper/controller for kaia.ai robotics platform
6-
paragraph=Supports YDLIDAR X4, X4 PRO, X3, X3 PRO, X2/X2L, SCL; Xiaomi Roborock 1st gen LDS02RR; Neato XV11; SLAMTEC RPLIDAR A1; 3irobotix Delta-2A, -2B, -2G, -2A 115000; LDROBOT LD14P; CAMSENSE X1
6+
paragraph=Supports YDLIDAR X4, X4 PRO, X3, X3 PRO, X2/X2L, SCL; Xiaomi Roborock 1st gen LDS02RR; Neato XV11; SLAMTEC RPLIDAR A1; 3irobotix Delta-2A, -2B, -2D, -2G, LDS08RR, -2A 115000; LDROBOT LD14P; CAMSENSE X1
77
category=Sensors
88
url=https://github.com/kaiaai/LDS
99
architectures=*

src/LDS_DELTA_2D.cpp

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// Copyright 2023-2025 KAIA.AI
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#include "LDS_DELTA_2D.h"
16+
17+
const char* LDS_DELTA_2D::getModelName() {
18+
return "3irobotics Delta-2D";
19+
}
20+
21+
uint16_t LDS_DELTA_2D::get_max_data_sample_count() {
22+
return 24;
23+
}

src/LDS_DELTA_2D.h

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// Copyright 2023-2025 KAIA.AI
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
#include "LDS_DELTA_2A_115200.h"
17+
18+
class LDS_DELTA_2D : public LDS_DELTA_2A_115200 {
19+
public:
20+
const char* getModelName() override;
21+
protected:
22+
uint16_t get_max_data_sample_count() override;
23+
};

src/LDS_LDS08RR.cpp

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Copyright 2023-2025 KAIA.AI
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#include "LDS_LDS08RR.h"
16+
17+
const char* LDS_LDS08RR::getModelName() {
18+
return "3irobotics LDS08RR";
19+
}

src/LDS_LDS08RR.h

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Copyright 2023-2025 KAIA.AI
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
#include "LDS_DELTA_2D.h"
17+
18+
class LDS_LDS08RR : public LDS_DELTA_2D {
19+
public:
20+
const char* getModelName() override;
21+
};

src/lds_all_models.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
#include "LDS_DELTA_2A_230400.h"
2828
#include "LDS_DELTA_2B.h"
2929
#include "LDS_DELTA_2G.h"
30+
#include "LDS_DELTA_2D.h"
31+
#include "LDS_LDS08RR.h"
3032
#include "LDS_LDROBOT_LD14P.h"
3133
#include "LDS_CAMSENSE_X1.h"
3234
#include "LDS_LDROBOT_LD19.h"

0 commit comments

Comments
 (0)