-
Notifications
You must be signed in to change notification settings - Fork 88
Description
For our project, we got a couple of Hesai FT120 solid state LIDAR. As this sensor is not yet supported, we integrated it into Nebula, following the documentations guidelines.
After rebasing our local branch over recent commit 222ac51, resulting changes should be in the "large contributions" camp (total diff file is more than 1600 lines).
Main changes are:
- definition of new packet for the FT120 sensor (header, block and tail);
- management of the sensor calibration file (it is a binary file format, that contains azimuth and elevation angles for each pixel of the sensor; a new subclass of HesaiCalibrationConfigurationBase was added);
- a dedicated child class of AngleCorrector to manage the computations and storage of lookup tables for sin/cos;
- a new child class of HesaiScanDecoder to manage the decoding (this was developed last November, so maybe it maintains the structure of the decoder before the last refactors);
- minor additions to manage the new sensor.
There are a couple of dirty hacks (the second template parameter of the dedicated AngleCorrector is used to provide the total sensor column count; different standard parameter for rotating sensors must be declared but are not used, e.g. rotation_speed), and we don't have tests (we see the sensor output in Rviz, and for us is good enough; and we don't have idea how to build the tests).
Should I open a PR?
Thank you for the great work!