43 static const std::set<std::uint16_t> rs400_sku_pid = {
60 static const std::map<std::uint16_t, std::string> rs400_sku_names = {
62 {
RS400_MM_PID,
"Intel RealSense D400 with Tracking Module"},
64 {
RS410_MM_PID,
"Intel RealSense D410 with Tracking Module"},
67 {
RS420_MM_PID,
"Intel RealSense D420 with Tracking Module"},
69 {
RS430_MM_PID,
"Intel RealSense D430 with Tracking Module"},
70 {
RS430_MM_PID,
"Intel RealSense D430 with Tracking Module and RGB Module"},
81 { 0xC9606CCB, 0x594C, 0x4D25,{ 0xaf, 0x47, 0xcc, 0xc4, 0x96, 0x43, 0x59, 0x95 } } };
84 { 0xf6c3c3d1, 0x5cde, 0x4477,{ 0xad, 0xf0, 0x41, 0x33, 0xf5, 0x8d, 0xa6, 0xf4 } } };
154 uint8_t reserved1[88];
156 uint8_t reserved2[64];
164 auto table =
reinterpret_cast<const T*
>(raw_data.data());
165 auto header =
reinterpret_cast<const table_header*
>(raw_data.data());
175 LOG_DEBUG(
"Loaded Valid Table: version [mjr.mnr]: 0x" <<
176 hex << setfill(
'0') << setw(4) << header->version << dec
177 <<
", type " << header->table_type <<
", size " << header->table_size
178 <<
", CRC: " << hex << header->crc32);
182 #pragma pack(push, 1) 212 uint8_t reserved[28];
224 uint8_t reserved[64];
232 uint8_t serial_num[8];
233 uint8_t optic_module_mm[4];
237 uint8_t reserved[34];
248 uint8_t reserved[20];
256 uint8_t serial_num[8];
301 float projection[12];
315 memset(&result, 0,
sizeof(result));
316 for (
int i = 0; i < 3; i++)
359 ds5_calibration() : version(0), left_imager_intrinsic({}), right_imager_intrinsic({}),
360 left_imager_extrinsic({}), right_imager_extrinsic({}), depth_extrinsic({})
363 depth_intrinsic[i] = {};
374 static std::map< ds5_rect_resolutions, int2> resolutions_list = {
Definition: ds5-private.h:420
rs2_intrinsics get_intrinsic_by_resolution_coefficients_table(const std::vector< uint8_t > &raw_data, uint32_t width, uint32_t height)
Definition: ds5-private.h:127
Definition: ds5-private.h:90
Definition: ds5-private.h:242
rs2_extrinsics right_imager_extrinsic
Definition: ds5-private.h:355
const std::string DEPTH_STEREO
Definition: ds5-private.h:112
const int etDepthTableControl
Definition: ds5-private.h:103
float bias[3]
Definition: ds5-private.h:201
Definition: ds5-private.h:418
rs2_extrinsics left_imager_extrinsic
Definition: ds5-private.h:354
constexpr size_t tm1_calibration_table_size
Definition: ds5-private.h:270
rs2_motion_device_intrinsic create_motion_intrinsics(imu_intrinsics data)
Definition: ds5-private.h:312
Definition: ds5-private.h:427
Definition: ds5-private.h:411
Definition: ds5-private.h:253
float rmax
Definition: ds5-private.h:220
float3x3 intrinsic_matrix_rect
Definition: ds5-private.h:305
Definition: ds5-private.h:414
Definition: ds5-private.h:95
float3x3 rotation
Definition: ds5-private.h:189
int64_t serial_mm
Definition: ds5-private.h:187
imu_calibration_table imu_calib_table
Definition: ds5-private.h:266
int32_t depth_clamp_min
Definition: ds5-private.h:285
Definition: ds5-private.h:331
table_header header
Definition: ds5-private.h:186
Definition: ds5-private.h:424
Definition: ds5-private.h:108
uint16_t height
Definition: ds5-private.h:303
Definition: ds5-private.h:91
const uint8_t DS5_LASER_POWER
Definition: ds5-private.h:36
rs2_intrinsics get_intrinsic_fisheye_table(const std::vector< uint8_t > &raw_data, uint32_t width, uint32_t height)
constexpr size_t tm1_serial_num_table_size
Definition: ds5-private.h:260
constexpr size_t tm1_eeprom_size
Definition: ds5-private.h:280
const uint8_t DS5_EXT_TRIGGER
Definition: ds5-private.h:38
int32_t disparity_multiplier
Definition: ds5-private.h:287
const uint16_t RS415_PID
Definition: ds5-private.h:19
ds5_notifications_types
Definition: ds5-private.h:405
constexpr size_t imu_calibration_table_size
Definition: ds5-private.h:227
Definition: ds5-private.h:341
Definition: ds5-private.h:338
Definition: ds5-private.h:291
rs2_extrinsics depth_extrinsic
Definition: ds5-private.h:356
float calibration_model_flag
Definition: ds5-private.h:245
advanced_query_mode
Definition: ds5-private.h:105
Definition: ds5-private.h:408
const uint16_t RS460_PID
Definition: ds5-private.h:28
Definition: ds5-private.h:412
Definition: ds5-private.h:342
Definition: ds5-private.h:217
float scale[3]
Definition: ds5-private.h:202
extrinsics_table imu_to_imu
Definition: ds5-private.h:221
const uint16_t RS435_RGB_PID
Definition: ds5-private.h:29
uint16_t width
Definition: ds5-private.h:302
tm1_calib_model calib_model
Definition: ds5-private.h:265
const uint8_t DS5_HWMONITOR
Definition: ds5-private.h:33
Definition: ds5-private.h:415
float3x3 rotation
Definition: ds5-private.h:195
float data[3][4]
Definition: rs_types.h:75
Definition: ds5-private.h:131
Definition: ds5-private.h:97
const uint8_t DS5_ERROR_REPORTING
Definition: ds5-private.h:37
tm1_module_info module_info
Definition: ds5-private.h:276
rs2_intrinsics left_imager_intrinsic
Definition: ds5-private.h:351
Definition: ds5-private.h:135
Definition: ds5-private.h:132
Definition: ds5-private.h:410
float baseline
Definition: ds5-private.h:152
Definition: ds5-private.h:134
imu_intrinsics gyro_intrinsics
Definition: ds5-private.h:223
Definition: ds5-private.h:140
Definition: ds5-private.h:407
float intrinsics_model
Definition: ds5-private.h:208
Definition: ds5-private.h:343
float3x3 intrinsic_left
Definition: ds5-private.h:148
Definition: ds5-private.h:417
float3x3 world2right_rot
Definition: ds5-private.h:151
float3 translation_rect
Definition: ds5-private.h:307
Definition: ds5-private.h:423
ds5_rect_resolutions width_height_to_ds5_rect_resolutions(uint32_t width, uint32_t height)
Definition: ds5-private.h:126
Definition: ds5-private.h:100
Definition: ds5-private.h:98
Definition: ds5-private.h:425
ds5_calibration()
Definition: ds5-private.h:359
Definition: ds5-private.h:199
Definition: ds5-private.h:339
const uint16_t RS410_MM_PID
Definition: ds5-private.h:25
Definition: ds5-private.h:107
float3x3 intrinsic_right
Definition: ds5-private.h:149
Definition: ds5-private.h:129
table_header header
Definition: ds5-private.h:293
std::map< calibration_table_id, bool > data_present
Definition: ds5-private.h:357
Definition: ds5-private.h:413
Definition: ds5-private.h:141
const uint16_t RS410_PID
Definition: ds5-private.h:18
#define LOG_DEBUG(...)
Definition: types.h:108
table_header header
Definition: ds5-private.h:244
float3 rotation
Definition: ds5-private.h:298
bool try_fetch_usb_device(std::vector< platform::usb_device_info > &devices, const platform::uvc_device_info &info, platform::usb_device_info &result)
float3 translation
Definition: ds5-private.h:299
Definition: ds5-private.h:273
fisheye_calibration_table fe_calibration
Definition: ds5-private.h:246
constexpr size_t fisheye_calibration_table_size
Definition: ds5-private.h:215
int32_t depth_clamp_max
Definition: ds5-private.h:286
float3 translation
Definition: ds5-private.h:196
Definition: ds5-private.h:421
Definition: ds5-private.h:193
Definition: ds5-private.h:92
Definition: ds5-private.h:99
Definition: ds5-private.h:128
pose get_fisheye_extrinsics_data(const std::vector< uint8_t > &raw_data)
const uint8_t FISHEYE_EXPOSURE
Definition: ds5-private.h:78
const uint16_t RS420_PID
Definition: ds5-private.h:23
const std::map< uint8_t, std::string > ds5_fw_error_report
Definition: ds5-private.h:436
const uint16_t RS_USB2_PID
Definition: ds5-private.h:22
float3x3 intrinsic
Definition: ds5-private.h:295
Definition: ds5-private.h:137
constexpr size_t tm1_calib_model_size
Definition: ds5-private.h:251
Definition: ds5-private.h:332
table_header header
Definition: ds5-private.h:231
float3x3 rotation_matrix_rect
Definition: ds5-private.h:306
Definition: ds5-private.h:431
Definition: ds5-private.h:125
const platform::extension_unit depth_xu
Definition: ds5-private.h:80
table_header header
Definition: ds5-private.h:255
const uint8_t DS5_ENABLE_AUTO_EXPOSURE
Definition: ds5-private.h:41
Definition: ds5-private.h:419
const uint8_t DS5_EXPOSURE
Definition: ds5-private.h:35
table_header header
Definition: ds5-private.h:147
const T * check_calib(const std::vector< uint8_t > &raw_data)
Definition: ds5-private.h:160
Definition: ds5-private.h:344
Definition: ds5-private.h:88
Definition: ds5-private.h:229
constexpr size_t tm1_module_info_size
Definition: ds5-private.h:240
Definition: ds5-private.h:93
Definition: ds5-private.h:340
float temperature
Definition: ds5-private.h:247
rs2_intrinsics get_intrinsic_by_resolution(const std::vector< uint8_t > &raw_data, calibration_table_id table_id, uint32_t width, uint32_t height)
Cross-stream extrinsics: encode the topology describing how the different devices are connected...
Definition: rs_sensor.h:82
float3x3 world2left_rot
Definition: ds5-private.h:150
const uint16_t RS430_PID
Definition: ds5-private.h:20
const uint8_t DS5_ENABLE_AUTO_WHITE_BALANCE
Definition: ds5-private.h:40
float3 translation
Definition: ds5-private.h:190
Definition: ds5-private.h:205
const uint16_t RS420_MM_PID
Definition: ds5-private.h:24
Definition: ds5-private.h:429
table_header header
Definition: ds5-private.h:219
Definition: ds5-private.h:145
Definition: ds5-private.h:416
imu_intrinsics accel_intrinsics
Definition: ds5-private.h:222
Definition: ds5-private.h:262
Definition: ds5-private.h:409
uint32_t board_num
Definition: ds5-private.h:235
const platform::extension_unit fisheye_xu
Definition: ds5-private.h:83
Definition: ds5-private.h:345
uint16_t version
Definition: ds5-private.h:350
int64_t serial_depth
Definition: ds5-private.h:188
Definition: ds5-private.h:330
const uint8_t DS5_DEPTH_EMITTER_ENABLED
Definition: ds5-private.h:34
Definition: ds5-private.h:333
table_header header
Definition: ds5-private.h:207
uint32_t depth_units
Definition: ds5-private.h:284
int32_t disparity_shift
Definition: ds5-private.h:288
Video stream intrinsics.
Definition: rs_types.h:56
uint32_t brown_model
Definition: ds5-private.h:153
rs2_intrinsics right_imager_intrinsic
Definition: ds5-private.h:352
Definition: ds5-private.h:432
const uint16_t RS430_MM_RGB_PID
Definition: ds5-private.h:27
Definition: ds5-private.h:184
Definition: ds5-private.h:94
Motion device intrinsics: scale, bias, and variances.
Definition: rs_types.h:69
ds5_rect_resolutions
Definition: ds5-private.h:123
calibration_table_id
Definition: ds5-private.h:336
Definition: ds5-private.h:348
Definition: ds5-private.h:139
Definition: ds5-private.h:430
Definition: ds5-private.h:422
tm1_calibration_table calibration_table
Definition: ds5-private.h:277
Definition: ds5-private.h:109
float3x3 intrinsic
Definition: ds5-private.h:209
Definition: ds5-private.h:136
Definition: ds5-private.h:89
gvd_fields
Definition: ds5-private.h:328
Definition: ds5-private.h:96
pose get_color_stream_extrinsic(const std::vector< uint8_t > &raw_data)
table_header header
Definition: ds5-private.h:275
tm1_serial_num_table serial_num_table
Definition: ds5-private.h:267
Definition: ds5-private.h:142
extrinsics_table fisheye_to_imu
Definition: ds5-private.h:211
Definition: ds5-private.h:133
const uint16_t RS400_PID
Definition: ds5-private.h:17
const uint16_t RS400_MM_PID
Definition: ds5-private.h:26
Definition: ds5-private.h:130
const uint8_t DS5_ASIC_AND_PROJECTOR_TEMPERATURES
Definition: ds5-private.h:39
uint32_t board_rev
Definition: ds5-private.h:236
Definition: ds5-private.h:428
const uint16_t RS430_MM_PID
Definition: ds5-private.h:21
uint32_t calc_crc32(const uint8_t *buf, size_t bufsize)
const uint16_t RS405_PID
Definition: ds5-private.h:30
Definition: ds5-private.h:282
Definition: ds5-private.h:426
fw_cmd
Definition: ds5-private.h:86
table_header header
Definition: ds5-private.h:264