Skip to content

Releases: ceptontech/ros

v1.2.1

03 Jul 00:59
f297f81
Compare
Choose a tag to compare

This is a minor patch, fixing the Galactic build for v1.2.0.

v1.2.0

20 Jun 22:09
f297f81
Compare
Choose a tag to compare

Features

ROS2 and ROS1

This release contains a rework on the fault messages.

Now, fault messages are published per-topic for the sensors, in the format

panic_handle_[sensor-handle]

The new message format is under cepton_messages::msg::CeptonPanic (ROS2) and cepton2_ros::SensorPanic (ROS1)

uint64 timestamp
uint64 handle

uint8[] voltage_out_range
uint8 temperature_out_range_komodo
uint8 temperature_out_range_iox
uint8 temperature_out_range_iguana
uint8 temperature_out_range_gecko
uint8 iguana_iox_comm_crc_error
uint8 iox_gecko_comm_crc_error
uint8 gecko_komodo_comm_crc_error
uint8 iguana_boot_failure
uint8 phy_sync_failure
uint8 eth_link_down
uint8 ptp_expiration
uint8 thermal_shut_down
uint8 lasers_partial_block
uint8 lasers_full_block
uint8 mmt_interlock
uint8 iguana_failure
uint8 fpga_runtime_fail
uint8 mmt_timeout
uint8 gecko_boot_failure
uint8[] rsv     # reserved

Each message now is now a summary of all named faults. Each of the uint8 values can be either 0, 2, or 3.

  • 0 => fault has never been seen
  • 2 => fault was seen and is resolved
  • 3 => fault is active

When a new fault becomes active, the fault message will be published immediately. After that, the fault status will be updated roughly every 0.5s, based on the INFZ frequency.

v1.1.3

09 May 21:59
f297f81
Compare
Choose a tag to compare

Features

ROS2 + ROS1

Remove some unnecessary arctan operations

  • Use tangent for filtering points in azimuth, elevation.

Allow for selecting X-forward or Y-forward coordinate system

  • The coordinate system is now controlled by a ROS argument using_cepton_coordinate_system. This may be set to true to use the Cepton coordinate system (X right, Y forward, Z up), or may be set to false to use the X-forward right-handed coordinate system (X forward, Y left, Z up)

Per-sensor info topics

  • Each sensor will now publish its info messages on the topics info_handle_[SENSOR_HANDLE]

Support setting expected sensor IPs in the config file

  • Can specify a list of expected_sensor_ips, which will be registered immediately rather than lazily. Normally, sensors are discovered lazily, meaning that they could only be marked for timeout, after some data is received. This list allows for checking if sensors were not connected properly.

ROS2 Only

ROS2 configuration via yaml file

ROS1 Only

Make topic names more consistent with the ROS2 convention

  • (cepp, cepp_serial_, info_handle_, etc), though keeping the cepton2/ prefix
  • Remove the blocking if no sensors connected

v1.1.2

14 Mar 22:32
f297f81
Compare
Choose a tag to compare

Changes

  • Set range = 0 for no-return points; cartesian coordinates are unchanged

v1.1.1

14 Mar 17:26
f297f81
Compare
Choose a tag to compare

Changes

  • Publish azimuth and elevation in radians rather than degrees
  • Rename distance field in pcl2 to range

Bugfixes

  • For half-frequency mode, compute the publish parity per-sensor, rather than once globally

v1.1.0

12 Mar 22:25
f297f81
Compare
Choose a tag to compare

New features

Spherical coordinates

Adds serial coordinates to the PointCloud2 topics

Spherical coordinates are (azimuth, elevation), and are measured as follows:

  • azimuth: in radians, is measured relative to the depth axis, with positive azimuth more to the right
  • elevation: in radians, is measured relative to the depth axis, with positive elevation pointing up

Sensor status publish topics

Sensor-internal faults are reported via the cepton_panic topic, and this is a similar message format created by the driver, to detect sensors going offline, dropping point counts, etc.

Reported over cepton_sensor_status topic:

// SensorStatus.msg
uint64 handle;
uint32 serial_number;
uint32 status;

Currently only one flag (for sensor data timeout), but others may be added later.

Aggregation Mode

Allow setting of the aggregation mode via ros args. Pass aggregation_mode to the ros args. This is the value provided to the SDK when setting up the callbacks, so the usage is the same. i.e. 0 = natural frame, X = timed frame (microsec) where X > 1000

  • Default is 0 natural frame
  • Should not be used in conjunction with half-frequency mode

Bugfixes

Half-frequency mode

  • Parity was not determined correctly for the half-frequency mode, so half the time, frames with the same directional scanline would be aggregated. i.e. / / would be aggregated, whereas we only want / \ to be aggregated

Other

  • Updates to the subscriber sample code

1.0.2

23 Feb 18:05
f297f81
Compare
Choose a tag to compare

Changes:

  • Convert info message timestamps to int64, fixing an overflow for PTP-synced sensors

v1.0.1

06 Feb 02:13
f297f81
Compare
Choose a tag to compare

Corresponds to SDK release 2.1.8

v1.0.0

26 Jan 23:48
80d4df5
Compare
Choose a tag to compare

Release 1.0.0