45 static const std::set<std::uint16_t> rs400_sku_pid = {
62 static const std::map<std::uint16_t, std::string> rs400_sku_names = {
64 {
RS400_MM_PID,
"Intel RealSense 400 with Tracking Module"},
66 {
RS410_MM_PID,
"Intel RealSense 410 with Tracking Module"},
69 {
RS420_MM_PID,
"Intel RealSense 420 with Tracking Module"},
71 {
RS430_MM_PID,
"Intel RealSense 430 with Tracking Module"},
72 {
RS430_MM_PID,
"Intel RealSense 430 with Tracking Module and RGB Module"},
83 { 0xC9606CCB, 0x594C, 0x4D25,{ 0xaf, 0x47, 0xcc, 0xc4, 0x96, 0x43, 0x59, 0x95 } } };
86 { 0xf6c3c3d1, 0x5cde, 0x4477,{ 0xad, 0xf0, 0x41, 0x33, 0xf5, 0x8d, 0xa6, 0xf4 } } };
166 auto table =
reinterpret_cast<const T*
>(raw_data.data());
167 auto header =
reinterpret_cast<const table_header*
>(raw_data.data());
177 LOG_DEBUG(
"Loaded Valid Table: version [mjr.mnr]: 0x" <<
178 hex << setfill(
'0') << setw(4) << header->version << dec
179 <<
", type " << header->table_type <<
", size " << header->table_size
180 <<
", CRC: " << hex << header->crc32);
184 #pragma pack(push, 1) 317 memset(&result, 0,
sizeof(result));
318 for (
int i = 0; i < 3; i++)
376 static std::map< ds5_rect_resolutions, int2> resolutions_list = {
404 const platform::uvc_device_info& info, platform::usb_device_info& result);
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:129
Definition: ds5-private.h:92
Definition: ds5-private.h:244
rs2_extrinsics right_imager_extrinsic
Definition: ds5-private.h:357
const std::string DEPTH_STEREO
Definition: ds5-private.h:114
const int etDepthTableControl
Definition: ds5-private.h:105
float bias[3]
Definition: ds5-private.h:203
rs2_extrinsics left_imager_extrinsic
Definition: ds5-private.h:356
constexpr size_t tm1_calibration_table_size
Definition: ds5-private.h:272
rs2_motion_device_intrinsic create_motion_intrinsics(imu_intrinsics data)
Definition: ds5-private.h:314
Definition: ds5-private.h:255
float rmax
Definition: ds5-private.h:222
float3x3 intrinsic_matrix_rect
Definition: ds5-private.h:307
uint8_t serial_num[8]
Definition: ds5-private.h:258
Definition: ds5-private.h:97
float3x3 rotation
Definition: ds5-private.h:191
int64_t serial_mm
Definition: ds5-private.h:189
imu_calibration_table imu_calib_table
Definition: ds5-private.h:268
int32_t depth_clamp_min
Definition: ds5-private.h:287
uint8_t ta[10]
Definition: ds5-private.h:236
float distortion[5]
Definition: ds5-private.h:298
Definition: ds5-private.h:333
table_header header
Definition: ds5-private.h:188
Definition: ds5-private.h:110
uint16_t height
Definition: ds5-private.h:305
Definition: ds5-private.h:93
uint8_t reserved[28]
Definition: ds5-private.h:214
const uint8_t DS5_LASER_POWER
Definition: ds5-private.h:38
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:262
constexpr size_t tm1_eeprom_size
Definition: ds5-private.h:282
const uint8_t DS5_EXT_TRIGGER
Definition: ds5-private.h:40
int32_t disparity_multiplier
Definition: ds5-private.h:289
const uint16_t RS415_PID
Definition: ds5-private.h:21
ds5_notifications_types
Definition: ds5-private.h:407
constexpr size_t imu_calibration_table_size
Definition: ds5-private.h:229
Definition: ds5-private.h:343
Definition: ds5-private.h:340
Definition: ds5-private.h:293
rs2_extrinsics depth_extrinsic
Definition: ds5-private.h:358
float calibration_model_flag
Definition: ds5-private.h:247
advanced_query_mode
Definition: ds5-private.h:107
Definition: ds5-private.h:410
const uint16_t RS460_PID
Definition: ds5-private.h:30
Definition: ds5-private.h:344
Definition: ds5-private.h:219
float scale[3]
Definition: ds5-private.h:204
extrinsics_table imu_to_imu
Definition: ds5-private.h:223
const uint16_t RS435_RGB_PID
Definition: ds5-private.h:31
uint16_t width
Definition: ds5-private.h:304
tm1_calib_model calib_model
Definition: ds5-private.h:267
const uint8_t DS5_HWMONITOR
Definition: ds5-private.h:35
float3x3 rotation
Definition: ds5-private.h:197
float data[3][4]
Definition: rs_types.h:74
Definition: ds5-private.h:133
Definition: ds5-private.h:99
const uint8_t DS5_ERROR_REPORTING
Definition: ds5-private.h:39
tm1_module_info module_info
Definition: ds5-private.h:278
rs2_intrinsics left_imager_intrinsic
Definition: ds5-private.h:353
Definition: ds5-private.h:137
Definition: ds5-private.h:134
float distortion[5]
Definition: ds5-private.h:212
Definition: ds5-private.h:412
float baseline
Definition: ds5-private.h:154
Definition: ds5-private.h:136
imu_intrinsics gyro_intrinsics
Definition: ds5-private.h:225
Definition: ds5-private.h:142
Definition: ds5-private.h:409
float intrinsics_model
Definition: ds5-private.h:210
Definition: ds5-private.h:345
float4 rect_params[max_ds5_rect_resolutions]
Definition: ds5-private.h:157
float3x3 intrinsic_left
Definition: ds5-private.h:150
float3x3 world2right_rot
Definition: ds5-private.h:153
float3 translation_rect
Definition: ds5-private.h:309
uint8_t reserved[34]
Definition: ds5-private.h:239
ds5_rect_resolutions width_height_to_ds5_rect_resolutions(uint32_t width, uint32_t height)
Definition: ds5-private.h:128
Definition: ds5-private.h:102
Definition: ds5-private.h:100
ds5_calibration()
Definition: ds5-private.h:361
Definition: ds5-private.h:201
Definition: ds5-private.h:341
uint8_t serial_num[8]
Definition: ds5-private.h:234
const uint16_t RS410_MM_PID
Definition: ds5-private.h:27
Definition: ds5-private.h:109
float3x3 intrinsic_right
Definition: ds5-private.h:151
Definition: ds5-private.h:131
table_header header
Definition: ds5-private.h:295
std::map< calibration_table_id, bool > data_present
Definition: ds5-private.h:359
Definition: ds5-private.h:143
const uint16_t RS410_PID
Definition: ds5-private.h:20
#define LOG_DEBUG(...)
Definition: types.h:107
table_header header
Definition: ds5-private.h:246
float3 rotation
Definition: ds5-private.h:300
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:301
Definition: ds5-private.h:275
uint8_t reserved1[88]
Definition: ds5-private.h:156
fisheye_calibration_table fe_calibration
Definition: ds5-private.h:248
constexpr size_t fisheye_calibration_table_size
Definition: ds5-private.h:217
int32_t depth_clamp_max
Definition: ds5-private.h:288
float3 translation
Definition: ds5-private.h:198
Definition: ds5-private.h:195
const double TIMESTAMP_USEC_TO_MSEC
Definition: ds5-private.h:13
Definition: ds5-private.h:94
Definition: ds5-private.h:101
Definition: ds5-private.h:130
pose get_fisheye_extrinsics_data(const std::vector< uint8_t > &raw_data)
const uint8_t FISHEYE_EXPOSURE
Definition: ds5-private.h:80
const uint16_t RS420_PID
Definition: ds5-private.h:25
const uint16_t RS_USB2_PID
Definition: ds5-private.h:24
float3x3 intrinsic
Definition: ds5-private.h:297
Definition: ds5-private.h:139
constexpr size_t tm1_calib_model_size
Definition: ds5-private.h:253
Definition: ds5-private.h:334
table_header header
Definition: ds5-private.h:233
float3x3 rotation_matrix_rect
Definition: ds5-private.h:308
Definition: ds5-private.h:127
const platform::extension_unit depth_xu
Definition: ds5-private.h:82
table_header header
Definition: ds5-private.h:257
const uint8_t DS5_ENABLE_AUTO_EXPOSURE
Definition: ds5-private.h:43
const uint8_t DS5_EXPOSURE
Definition: ds5-private.h:37
table_header header
Definition: ds5-private.h:149
const T * check_calib(const std::vector< uint8_t > &raw_data)
Definition: ds5-private.h:162
Definition: ds5-private.h:346
Definition: ds5-private.h:90
Definition: ds5-private.h:231
rs2_intrinsics depth_intrinsic[max_ds5_rect_resolutions]
Definition: ds5-private.h:355
constexpr size_t tm1_module_info_size
Definition: ds5-private.h:242
Definition: ds5-private.h:95
Definition: ds5-private.h:342
float temperature
Definition: ds5-private.h:249
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:79
float3x3 world2left_rot
Definition: ds5-private.h:152
const uint16_t RS430_PID
Definition: ds5-private.h:22
const uint8_t DS5_ENABLE_AUTO_WHITE_BALANCE
Definition: ds5-private.h:42
float3 translation
Definition: ds5-private.h:192
Definition: ds5-private.h:207
const uint16_t RS420_MM_PID
Definition: ds5-private.h:26
uint8_t reserved[8]
Definition: ds5-private.h:259
table_header header
Definition: ds5-private.h:221
Definition: ds5-private.h:147
imu_intrinsics accel_intrinsics
Definition: ds5-private.h:224
float reserved[24]
Definition: ds5-private.h:310
Definition: ds5-private.h:264
Definition: ds5-private.h:411
uint32_t board_num
Definition: ds5-private.h:237
const platform::extension_unit fisheye_xu
Definition: ds5-private.h:85
Definition: ds5-private.h:347
uint16_t version
Definition: ds5-private.h:352
int64_t serial_depth
Definition: ds5-private.h:190
Definition: ds5-private.h:332
const uint8_t DS5_DEPTH_EMITTER_ENABLED
Definition: ds5-private.h:36
Definition: ds5-private.h:335
table_header header
Definition: ds5-private.h:209
uint32_t depth_units
Definition: ds5-private.h:286
uint8_t reserved[64]
Definition: ds5-private.h:226
int32_t disparity_shift
Definition: ds5-private.h:290
Video stream intrinsics.
Definition: rs_types.h:55
uint32_t brown_model
Definition: ds5-private.h:155
rs2_intrinsics right_imager_intrinsic
Definition: ds5-private.h:354
const uint16_t RS430_MM_RGB_PID
Definition: ds5-private.h:29
Definition: ds5-private.h:186
Definition: ds5-private.h:96
Motion device intrinsics: scale, bias, and variances.
Definition: rs_types.h:68
ds5_rect_resolutions
Definition: ds5-private.h:125
calibration_table_id
Definition: ds5-private.h:338
Definition: ds5-private.h:350
Definition: ds5-private.h:141
uint8_t reserved2[64]
Definition: ds5-private.h:158
tm1_calibration_table calibration_table
Definition: ds5-private.h:279
Definition: ds5-private.h:111
float3x3 intrinsic
Definition: ds5-private.h:211
Definition: ds5-private.h:138
Definition: ds5-private.h:91
float projection[12]
Definition: ds5-private.h:303
uint8_t reserved[20]
Definition: ds5-private.h:250
gvd_fields
Definition: ds5-private.h:330
Definition: ds5-private.h:98
pose get_color_stream_extrinsic(const std::vector< uint8_t > &raw_data)
table_header header
Definition: ds5-private.h:277
tm1_serial_num_table serial_num_table
Definition: ds5-private.h:269
Definition: ds5-private.h:144
extrinsics_table fisheye_to_imu
Definition: ds5-private.h:213
uint8_t optic_module_mm[4]
Definition: ds5-private.h:235
Definition: ds5-private.h:135
const uint16_t RS400_PID
Definition: ds5-private.h:19
const uint16_t RS400_MM_PID
Definition: ds5-private.h:28
Definition: ds5-private.h:132
const uint8_t DS5_ASIC_AND_PROJECTOR_TEMPERATURES
Definition: ds5-private.h:41
uint32_t board_rev
Definition: ds5-private.h:238
const uint16_t RS430_MM_PID
Definition: ds5-private.h:23
uint32_t calc_crc32(const uint8_t *buf, size_t bufsize)
const uint16_t RS405_PID
Definition: ds5-private.h:32
Definition: ds5-private.h:284
fw_cmd
Definition: ds5-private.h:88
table_header header
Definition: ds5-private.h:266