generated from tier4/ros2-project-template
-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: merge nebula/develop #176
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* fix(hesai_hw_interface): add error handling * check PTC command error codes, throw exception if necessary * perform size checks before parsing responses * emit errors on too-large payload size * fix(hesai_hw_monitor_ros_wrapper): fixed wrong range given for S/N copy * fix(hesai): print uint8, uint16 as numbers * chore: update cspell ignore * chore(velodyne_calibration_decoder): fix spelling * chore(velodyne_calibration_decoder): fix spelling once and for all * fix(hesai_hw_interface): add missing check for PTC error, make error type more readable * fix(expected): make error behavior clearer, add doc comments --------- Co-authored-by: Abraham Monrroy Cano <abrahammonrroy@yahoo.com>
* fix(hesai_decoder): print config instead of config address * refactor(nebula_ros): combine Hesai wrapper nodes into one This is step one of the single node refactoring of Nebula. In this step, only the three Hesai wrapper nodes were combined into one, and no optimizations have been done that are made possible by this refactoring. The next step is to do those optimizations (e.g. get rid of unnecessary pointcloud copying). * refactor: remove pandarScan pub/sub, decode one packet at a time * reword later * temporary progress * fix(hesai_ros_wrapper): remove changes wrongly merged during rebase * fix(hesai_ros_wrapper): increase packet buffering to stop internal packet loss * feat(nebula_common): add instrumentation tools * feat(hesai_ros_wrapper): instrument code on critical path * disable instrumentation * feat(hesai): move received buffer into ros message instead of copy * feat(hesai_ros_wrapper: add thread-safe queue between udp receiver and decoder, decode in separate thread * feat(nebula_common): more instrumentation tools * fix: update link to transport_drivers fork * update GitHub PR view * refactor(mt_queue): make variables more readable * perf(hesai_ros_wrapper): update queue capacity to alleviate packet drops on ECU * chore(hesai_ros_wrapper): remove unused pub/sub * refactor(hesai_ros_wrapper): clean up control flow, member variables * fix(hesai_hw_interface): add error handling * check PTC command error codes, throw exception if necessary * perform size checks before parsing responses * emit errors on too-large payload size * fix(hesai_hw_monitor_ros_wrapper): fixed wrong range given for S/N copy * fix(hesai): print uint8, uint16 as numbers * feat(hesai_ros_wrapper): publish/subscribe to legacy pandar_packets on demand * change launch file back to single-threaded container * attempt to make queue contention less bad * chore(hesai_ros_wrapper): reduce logging output * feat(hesai_ros_wrapper): print warning when connected to HW and receiving /pandar_packets * feat(nebula_launch.py): throw error when trying to launch Hesai sensor and refer to hesai_launch_all_hw.xml * refactor(nebula_ros): split single wrapper file into 3 sub-wrappers * chore: update cspell ignore * chore(velodyne_calibration_decoder): fix spelling * chore(nebula_common): remove debug code * chore(velodyne_calibration_decoder): fix spelling * fix(hesai_decoder): initialize last_phase to prevent empty pointcloud published on startup * fix(nebula_tests): make Hesai tests compile again * fix(nebula_examples): make Hesai examples compile again * chore(velodyne_calibration_decoder): fix spelling once and for all * fix(nebula_examples): fix test failure (remove ament_lint_common) * fix(hesai_hw_interface): add missing check for PTC error, make error type more readable * refactor(hesai): re-introduce parameter update mechanism * feat(hesai_ros): add watchdog timer for pointcloud output * fix(hesai): change to possibly more accurate high_resolution_clock * fix(hesai): fix crash on QT128 * refactor(hesai_hw_interface): refactor repeated error handling code * fix(hesai_launch_all_hw.xml): set valid RPM when AT128 is selected * refactor(hesai_decoder): remove redundant arguments for correction/calibration * refactor(nebula_ros): move mt_queue to common * chore(nebula_examples): change output rosbag format to NebulaPackets, clean up code * chore(hesai/decoder_wrapper): clarify watchdog behavior in decoder * chore(hesai/hw_monitor_wrapper): fix typo in diagnostics name * chore(hesai_ros_decoder_test): fix unclear naming in console output * chore: run pre-commit and implement suggested fixes (not including copyright yet) * fix(expected.hpp): revert explicit constructors * chore: remove erroneously added node_modules folder * chore(gitconfig): exclude node_modules from git * fix(hesai/decoder_wrapper): store downloaded sensor calibration without colliding filenames * chore(nebula_examples,nebula_tests): remove more dangling comments and improve formatting
…de (#147) * refactor(robosense)!: combine wrappers into single node * refactor(robosense): use parameter_descriptors helper functions
…#148) * refactor(velodyne)!: unify wrapper nodes. Currently WIP but compiling * fix(velodyne_decoders): after the last commit, point clouds weren't reset correctly. fixed in this commit * fix(velodyne_tests): make tests compile with the new decoder API * fix(velodyne_examples): make examples compile with new decoder API * feat(velodyne_hw_interface): synchronous, null- and thread-safe HTTP requests * fix(velodyne_launch_all_hw.xml): refactor to single-node * fix(velodyne): make hw interface wrapper work with new hw interface API * fix(velodyne): implement correct locking behavior in hw monitor wrapper * chore(velodyne_scan_decoder.hpp): explicitly initialize some fields for clarity * fix(nebula_tests): re-cut scans in existing reference data correctly (360deg). has been ~372deg before (#150) * fix: fix mistakes made during rebase * chore(velodyne_ros_wrapper): fix PandarScan mention * chore(velodyne): apply pre-commit (except copyright) * chore(velodyne_scan_decoder): moved magic numbers to constants
…to a single node (#151) * feat: refactored the ars548 into the new single node scheme Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: cleaned code and removed unused code/includes Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: fixed copyright and deleted stray PandarScan Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: replaced the class names from Ars548 to ARS548 Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: forgot one struct to rename and deleted one unused struct Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> --------- Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp>
* fix: remove git submodules to prevent docs build error Signed-off-by: David Wong <david.wong@tier4.jp> * fix: ros 2 spelling --------- Signed-off-by: David Wong <david.wong@tier4.jp>
* docs: move README contents to documentation Signed-off-by: David Wong <david.wong@tier4.jp> * fix(docs): spelling Signed-off-by: David Wong <david.wong@tier4.jp> * fix(docs): more spelling Signed-off-by: David Wong <david.wong@tier4.jp> * fix(docs): replace ❌ etc. by emoji * docs: add link to tutorial branch --------- Signed-off-by: David Wong <david.wong@tier4.jp> Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com>
* fix: the callback was being called even though the updates were frequent. the cause was ros time not being steady (ptp?) Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore(watchdog_timer): add explanatory comment --------- Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com>
* ci(nebula): json-schema workflow Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * feat(velodyne): add json schema Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * feat(robosense): add json schema Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * chore(nebula_ros): remove deprecated config Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * feat(continental): add radar json schema Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * refactor(json-schema): change schema abstraction Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * feat(json-schema): add schema templates Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * fix(json-schema): remove deprecated script Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * ci(nebula): use latest param-schema action Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * feat(json-schema): extend schema template Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * fix(json-schema): calibration default value Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * add hesai parameter schema Signed-off-by: vividf <yihsiang.fang@tier4.jp> * move calibration file below the sensor_model Signed-off-by: vividf <yihsiang.fang@tier4.jp> * remove python file Signed-off-by: vividf <yihsiang.fang@tier4.jp> * set default value for pandar yaml Signed-off-by: vividf <yihsiang.fang@tier4.jp> * remove default parameters in nebula_ros Signed-off-by: vividf <yihsiang.fang@tier4.jp> * remove default parameter in decoder_wrapper Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): typo Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(hesai): remove unused var Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> * fix(AT128): correct cloud min/max angles * fix(ARS548): correct data port default value * add boundary for AT128 Signed-off-by: vividf <yihsiang.fang@tier4.jp> * docs(json-schema): retry_hw description Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * docs(json-schema): launch_hw description Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): diag_span minimum Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): ptp_profile enum Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): ptp_transport_type enum Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): ptp_profile default value Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * fix(json-schema): ptp_transport_type default value Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> --------- Signed-off-by: amadeuszsz <amadeusz.szymko.2@tier4.jp> Signed-off-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com>
* feat: cmake optimization in progress Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * fix: fixed robosense symbols Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * fix: fixed robosense hw monitor's cmake Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: applied changed needed after the rebase, deleted debug code, and cleaned unused parts Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: forgot to delete a comment Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * fix: missed a package in the depends list Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> --------- Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp>
* feat: refactored the ars548 into the new single node scheme Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * feat: mid implmementation of the single node scheme Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: cleaned code and removed unused code/includes Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: finished the refactoring. old bags will become unusable after this. need to test with actual hardware Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: deleted all nebula ros files Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chote: rebased and fixed rebse-related errors Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: forgot make changes Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: fixed coyright Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: replaced Srr520 for SRR520 in class names and deleted unused files Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * fix: fixed srr520 changes after the latest rebased and confirmed basic driver functionalities with a live sensor Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * feat: brought back the srr520 tests (passing) Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: removed chunks of code that got in during the rebase. updated the config file Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: kept back a package that got upgraded automatically by pre commit Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: added some comments regarding filters Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: fixed segmentation when launch_hw was true and there was no can device. Changed the name of the config file for schema purposes Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated cspell Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: changes for clang compatibility Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: added an explanation to the concept of time domain id Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * Update nebula_ros/config/radar/continental/SRR520.param.yaml Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * Update nebula_common/include/nebula_common/nebula_common.hpp Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * chore: added temptative schema Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: SRR520 schema still referenced the ARS548 radar Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: typo in the base schema Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: forgot the bus time in the schema Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: deleted unused methods Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: changed variable name from vambig -> v_ambiguous Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * Update nebula_common/include/nebula_common/continental/continental_srr520.hpp Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * Update nebula_hw_interfaces/include/nebula_hw_interfaces/nebula_hw_interfaces_continental/continental_srr520_hw_interface.hpp Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * chore: changed magic numbers for constexprs Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: removed pandar mention in continental packages and changed callback name to be consistent among continental sensors Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: capitalized acronyms Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: changed fup for follow up Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * Update nebula_common/include/nebula_common/continental/crc.hpp Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * chore: removed unnecessary moves Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated parameter loading scheme Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated srr test includes to match google code style Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: added uniform initialization in srr tests Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: missing underscore in class variables for srr tests Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated includes in ARS tests to keep consistency Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated missing ars548 tests Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * Update nebula_ros/schema/sub/topic.json Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> * chore: updated to the new parameter loading scheme Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated include rules for follow nebula/autoware rules Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: updated missing include rules violations Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: missing include violations in the continental decoders Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: missing include violations in the continental hw interfaces Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> * chore: added missing include Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> --------- Signed-off-by: Kenzo Lobos-Tsunekawa <kenzo.lobos@tier4.jp> Co-authored-by: Max Schmeller <6088931+mojomex@users.noreply.github.com> Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com>
…162) * chore: fix pre-commit versions and clang-format hook failure * chore(docs): fix documentation pre-commit errors * chore: fix pre-commit and compiler warnings in all code files modified between main..develop * chore(yamllint): ignore yaml document start in clang-format config as it is required * chore: add copyright and license headers * chore(pre-commit): allow multiple documents in YAML files to make .clang-format file check pass * chore: make pre-commit pass for parameter schema code * chore: add copyright and license to all source files * chore: implement pre-commit suggestions in all CPP/HPP files * chore: whitespace changes in non-cpp files to satisfy pre-commit * chore: flake8 changes to satisfy pre-commit * fix: allow implicit conversion to status types again * chore: clean up imports * chore: add override/inline where necessary * chore(nebula_ros): remove obsolete wrapper base types * chore: move nolint comments to be robust to formatting linebreaks * chore(velodyne): fix indentation in velodyne calibration files to satisfy yamllint and ignore them in prettier to prevent conflicting styles * chore(hesai): fix decoder test config yaml quotations * chore: whitespace changes * chore: remove empty, un-parseable local.cspell.json * chore(prettier): ignore yaml and json files as they are handled by yamllint/clang-tidy respectively * chore: make pre-commit pass on new files after #146 * chore: update cspell to pass spell-check * chore: rename contributing.md docs page to make failing link check pass
) * fix(schema): handle zeros and floats for default config generation Signed-off-by: Amadeusz Szymko <amadeusz.szymko.2@tier4.jp> * ci(pre-commit): autofix --------- Signed-off-by: Amadeusz Szymko <amadeusz.szymko.2@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* docs(readme): add boost version requirements * ci(pre-commit): autofix * docs(installation): add boost version requirement * ci(pre-commit): autofix --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* docs: update point types and sensor models, smaller fixes * docs: correct field types * Apply suggestions from code review Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * ci(pre-commit): autofix * Update docs/point_types.md Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * ci(pre-commit): autofix * chore(nebula_tests): add license to parameter_descriptors --------- Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* style: pretty-printing sensor configs * chore: make config field names more readable when pretty-printing
…ed) (#183) * chore(hesai): make namespaces c++17-style one-liners * chore(hesai): mark single-arg constructor explicit * chore(hesai): favor using over typedef * chore(hesai): initialize uninitialized vars * chore(hesai): clean up imports * chore(hesai): inline function defined in header * chore(hesai): fix case style for some functions and variables * chore(hesai: favor range-based loop over index-based one * chore(hesai): add missing stdexcept include
* chore(nebula_common): add utility to get std::string from <<streamable types * fix(hesai_common): support correct return types for all sensors * chore(nebula_ros): update supported return modes in parameter schemas for hesai sensors
…ly (#186) * feat(hesai_hw_interface): automatically set and confirm UDP socket's internal buffer size * fix: open socket before setting its options
…nsor_model` launch argument (#189)
…arguments to the correct vendor's launch file (#191)
* chore(continental): add missing imports, fix symbols * chore(hesai): add missing imports * feat(hesai): add multicast support * chore(hesai): add multicast_ip parameter to schemas and param files * chore: fix missing dependencies that cause CI fail * chore(nebula_tests): fix diagnostic_updater dependency for all vendors * chore: correct default params for OT128 * chore(ars548): revert erroneously committed case style changes
…ake replaying rosbags easier (#190) * feat(nebula_ros): support `launch_hw` parameter in console again to make replaying rosbags easier * chore(launch): replace tags with no children with self-closing tags Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp> --------- Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp>
* refactor(hesai): move calibration handling from decoder wrapper to ROS wrapper * chore(hesai): make clang and pre-commit happy * chore(hesai_cmd_response): add missing imports * feat(hesai_decoder): filter points outside of configured FoV * chore(hesai_ros_wrapper): fix clang-tidy errors * feat(hesai_common): calculate FoV padding in calibration config * chore(hesai): fix clang-tidy errors * feat(hesai): automatic hardware FoV oversizing * feat(hesai): publish on cloud_max_angle * fix(hesai_hw_interface): calculate correct FOV angle units * fix(hesai): cut scans correctly in edge cases * test(hesai): add scan cutting tests * fix(hesai_ros_decoder_test): set missing cloud_min_angle, cloud_max_angle in params * fix(at128): disable unsupported lidar range feature for AT128 * test(hesai): rewrite reference data to reflect edge effects of new scan cutting The new scan cutting mechanism filters points based on the corrected angle. This changes the points contained/filtered out at the edges of the scan cut. * fix(at128): do not issue unsupported monitor command * temp: instrumentation for pointcloud time delay * ci(pre-commit): autofix * works now, rebase later * WIP packet loss * refactor(hesai): replace `scan_phase` by `sync_angle` and `cut_angle` * toriaezu working on 360deg lidars * less hacky working version for 360deg lidars * wip AT128 * AT128 maybz? * ci(pre-commit): autofix * AT128 mostly working, edge cases unsure (need real sensor to test) * ci(pre-commit): autofix * AT128 working * Parameter edge cases working * correct cut angle for at128 * chore(hesai): regenerate and fix unit tests * chore: add 'centi' to dictionary * chore(nebula_tests/hesai): make sure each checked cloud contains at least one point * chore(nebula_tests/hesai): add fov params to tests, clean up params * chore(nebula_tests/hesai): add fov cutting unit tests * chore(hesai): make namespaces c++17-style one-liners * chore(hesai): mark single-arg constructor explicit * chore(hesai): favor using over typedef * chore(hesai): initialize uninitialized vars * chore(hesai): clean up imports * chore(hesai): inline function defined in header * chore(hesai): fix case style for some functions and variables * chore(hesai: favor range-based loop over index-based one * chore(hesai): add missing stdexcept include * fix(hesai): fix logic that decides whether to publish packets * chore(continental): fix compiler errors * chore: add missing diagnostic_updater dependency to nebula_tests * fix(hesai_ros_wrapper): reject sync_angle = 360 as this will crash the sensors * fix(hesai_ros_wrapper): disallow cutting at start of scan (except for 360deg FoV) to avoid publishing pointclouds later than necessary. * fix(at128): disallow sync angles outside the [30, 150] deg range * chore(hesai_hw_interface): remove superfluous "starting with FoV" log messages * fix(hesai): return error properly when cut angle is set out-of-range * chore(at128): change `auto` to `int32_t` in angle correction for clarity * chore(at128): change M_PI to M_PIf for clarity Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * chore(at128): add note of firmware version where channel output bug occurs * chore(at128): add explanatory comment on why fov bounds are hard-coded * chore(hesai): fix 260deg typo in parameter description * fix(hesai): handle cut at 0/360deg correctly for non-360 and 360deg FoVs * chore(at128): correct return type and rename `all_channels` function, add doc comments * chore(hesai_decoder): replace auto with specific types for number types * chore(hesai): remove unused instrumentation code * chore: update error message printed when setting HW FoV fails * chore(hesai_decoder): add clarifications for decode/output pointcloud handling * chore(hesai): apply suggestions for re-wording documentation comments Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com> * ci(pre-commit): autofix * chore(hesai_ros_wrapper): add missing nebula_packet include * chore(hesai_hw_interface): clarify angle units in `checkAndSetLidarRange` * chore: add ddeg for deci-degrees to cspell dict --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: David Wong <33114676+drwnz@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Type
Description
This is a meta-PR to merge the develop branch into main. This PR can be linked to as a prerequisite for other PRs.
This PR currently entails:
SO_RCVBUF
automatically #186sensor_model
launch argument #189launch_hw
parameter in console again to make replaying rosbags easier #190Pre-Review Checklist for the PR Author
PR Author should check the checkboxes below when creating the PR.
Checklist for the PR Reviewer
Reviewers should check the checkboxes below before approval.
Post-Review Checklist for the PR Author
PR Author should check the checkboxes below before merging.
CI Checks