Skip to content

Releases: CopterExpress/clover

v0.25 (beta)

08 Aug 01:50
Compare
Choose a tag to compare
v0.25 (beta) Pre-release
Pre-release

Changes

  • Fix a bug that ArUco detector didn't launch when aruco_map argument is false.
  • Add dictionary parameter to aruco.launch.
  • selfcheck.py: address situation when individual cells voltage is unknown.
  • Blocks: allow using numbers in program names.
  • Web topic viewer:
    • Support displaying multiline strings.
    • Add width and indent parameters.
  • Add packages: vision_msgs, angles.
  • Symlink assets instead of copying in documentation to save space.
  • Various changes (full list).

v0.26 (alpha)

19 Sep 12:56
Compare
Choose a tag to compare
v0.26 (alpha) Pre-release
Pre-release

Experimental release, some features may not work!

Download: https://disk.yandex.ru/d/jVxasKJz0JaxqQ.

Changes

  • Raspberry Pi 5 support.
  • Transition to the latest Raspberry Pi OS (Bookworm).
    • Use custom built ROS Noetic for Bookworm.
    • Use libcamera instead of v4l2 for working with the camera.
    • Use NetworkManager instead of wpa-supplicant for Wi-Fi setup.
    • Create pi:raspberry user (it's no more created by default).
    • Required boot partition changes.
  • Python 2 support dropped.

See all changes.

v0.24

11 Oct 07:29
Compare
Choose a tag to compare

Changes

  • Significant update to autonomous flights API:
    • Allow using NaNs for most of services parameters.
    • Added terrain frame.
    • Added set_altitude service.
    • Removed yaw_rate parameter from most services, added set_yaw and set_yaw_rate services.
    • Corrected order for pitch and roll everywhere to match XYZ convention.
    • Added simple_offboard/state topic.
  • Updates to selfcheck.py:
    • Fixed all false positive warnings if running in the simulation.
    • More complex checks to remove false positive warnings related to markers detection.
    • Experimental parameter for parallel checks (_parallel:=1).
    • Parameter for printing out the time spent on each check (_time:=1).
    • Added time sync offset report.
    • Print out Clover VM version.
    • Cleaned up and redesigned output.
    • Various fixes and updates.
    • Support PX4 v1.14 parameters.
  • ArUco markers subsystem:
    • Implemented dynamic reconfiguration for aruco_map node.
    • Made aruco_detect/length parameter dynamic.
    • Added aruco_detect/transform_timeout parameter.
    • Renamed aruco_map/markers topic to aruco_map/map.
    • Renamed known_tilt parameter to known_vertical.
    • Implemented aruco_detect/set_length_override service.
    • Consider markers sizes from map in aruco_detect node.
  • Disable optical flow when markers map is recognized.
  • Added scripts for automatic testing of autonomous flights.
  • Added new examples for working with the camera, including a red circle model and its recognition and following.
  • Implemented long_callback Python decorator to address the issue #218.
  • Implemented optical_flow/enabled dynamic parameter.
  • Updated LED strip native library to support RPi 4 rev. 1.5.
  • Show number of messages received in web topic viewer.
  • Run main_camera/image_raw_throttled topic by default.
  • Added rectify argument to main_camera.launch
  • Improved launch time by not updating www directory on each start, but on demand only.
  • Added a block for reading RC values to blocks programming.
  • Added image_geometry package to image.
  • Added udev rules for all supported autopilots by PX4.
  • Various changes (full list).

Contributors: @okalachev, @SeliverstovaE, @oponfil, @stinger000, @muramura.

v0.23

10 Feb 19:36
Compare
Choose a tag to compare

Changes

  • Web tool for topics monitoring.
  • Experimental support for official PX4 firmware.
    • Publish optical flow when local position is not available.
    • Force estimator init.
  • Global navigation in blocks programming.
  • Web viewer for Clover logs.
  • genmap.py: added -o argument for output file name.
  • selfcheck.py improvements.
  • Updated native library for LED strip.
  • Various changes.

Contributors: @okalachev, @1Den4ik1, @SeliverstovaE, @oponfil, @stinger000, @timkondratiev, @muramura, @bartoszptak.

v0.22

07 Jun 15:45
07b92fb
Compare
Choose a tag to compare

Changes:

  • Move to ROS Noetic.
  • Move to Python 3.
  • Update Raspberry Pi OS to 2021-05-07.
  • aruco.launch: add placement, length and map arguments.
  • Web: add link for viewing the error log.
  • Use packages.coex.tech as primary packages source.
  • LED: add error/ignore parameter to not flash on some errors.
  • Wait for FC and camera devices before launching mavros and camera driver.
  • genmap.py: add -o argument for output file name.
  • blocks: print exception info on error.
  • clover.launch: disable rc node by default.
  • optical_flow: publish debug image even when calc_flow_gyro failed.
  • aruco_detect: add enabled dynamic reconfigure parameter.
  • Use forked cv_camera 0.5.1 to recover from camera failures.
  • Various changes.

For additional information see the migration guide.

v0.21.2

02 Apr 17:28
Compare
Choose a tag to compare

Changes:

  • Update Raspberry Pi OS to 2021-01-12.
  • Update ws281x LED strip driver so it should work on RPi 4 Rev. 1.4.
  • image: set pi3-disable-bt overlay correctly.
  • All the new articles from Copter Hack 2021.
  • aruco_detect: enabled dynamic reconfigure parameter added (see usage snippet).
  • Add tree utility.
  • Minor changes.

v0.21.1

29 Nov 15:12
Compare
Choose a tag to compare

Changes:

  • simple_offboard: fix checking kill switch state
  • Blocks programming: add led_count, set_duty_cycle blocks, fix gpio blocks indentation,
  • Minor changes.

See also v0.21 changes.

v0.21

01 Nov 01:56
Compare
Choose a tag to compare

Changes:

  • Blocks programming with Google Blockly introduced.
  • Official Clover simulation config added.
  • roswww_static added: static version of roswww (served with Monkey).
  • simple_offboard: detect killswitch when auto_arm is set
  • simple_offboard: bug fixes.
  • genmap.py: Add x0 and y0 shift for markers coordinates
  • led.launch and main_camera.launch minor changes.
  • Other improvements and fixes.

v0.20

01 Jun 00:32
9987960
Compare
Choose a tag to compare

For additional information see migration guide from v0.19 to v0.20.

  • Clever is renamed to Clover (package name, service name, etc).
  • Camera orientation settings simplified (see Camera setup article).
  • Optical flow and vl53l1x rangefinder driver are enabled by default.
  • Raspbian updated to 2020-02-13.
  • Default camera calibration parameters tuned.
  • Image: example programs added.
  • Image: pyzbar library added.
  • ROS service for executing shell commands added.
  • Main web page now shows software version.
  • simple_offboard: setpoint frame added.
  • aruco_pose: dynamic reconfiguration added.
  • Optical flow ROI is set in radians.
  • Improvements and bug fixes.

v0.19

30 Dec 15:23
Compare
Choose a tag to compare

Highlights

  • Raspberry Pi 4 support
    The image is now based on Raspbian Buster, and with that the newest addition to the Raspberry Pi lineup is now supported. Older boards are supported as well.
  • ROS Melodic
    ROS distribution was upgraded along with the underlying system.
  • OpenCV 3.4.8
    OpenCV also got an upgrade. OpenCV is now installed as a system library (as opposed to being a ROS package) and is bumped to version 3.4.8. Our ROS packages take full advantage of this.
  • vl53l1x driver improvements
    The rangefinder driver is more flexible, exposing more data from the sensor.
  • Quality-of-life additions and fixes
    Additional checks in selfcheck.py, shorter boot times, syslog size limits and more.

We are excited to bring you the next version of our Clever drone image! This release's main focus is Raspberry Pi 4 support. We've decided to keep the number of added features to the minimum, instead focusing on the platform support and stability.

Supporting Raspberry Pi 4 would mean transitioning to Raspbian Buster. That, in turn, would also mean we'd have to make some hard decisions: do we try and stay with ROS Kinetic or do we move forward and transition to ROS Melodic? If we go with Melodic, do we stick to the system OpenCV (effectively downgrading it) or do we package our own? Ultimately, we've decided to go with Melodic and an upgraded OpenCV: Kinetic is nearing its EOL date, and having a system-wide OpenCV installation that we build ourselves allowed us to add features that are typically missing in Debian distributions like GStreamer support.

User experience is improved as well. We have added more checks in the selfcheck.py script and shortened our boot times by reorganizing package loading order.

As always, you can see our full commit changelog between v0.18 and v0.19: v0.18...v0.19.