Skip to content

3.6.0b1

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 24 Sep 14:17
· 216 commits to master since this release

Added

  • Allow Bluetooth to be toggled off and on with the Bluetooth button on the
    Prime Hub and the Inventor Hub (support#1615), and have this state persist
    between reboots.
  • Added heading_correction to hub.imu.settings to allow for automatic
    correction of the hub.imu.heading() value (support#1678).
  • Added update_heading_correction to interactively set the heading
    correction value (support#1678).
  • Added optional one byte program identifier to program start command.
    For now, this is added to start various builtin
    programs, but it prepares for the ability to start different downloaded
    programs too (pybricks-micropython#254).
  • Added one byte program identifier to the hub status report to the host.
  • Added interface and implementation for storing and selecting multiple code
    slots on the Prime Hub and Inventor Hub.
  • Added ability to set distance and angle in DriveBase.reset(). If the
    DriveBase is using the gyro, it will be set to the same angle. (support#1617).
  • Added DriveBase.arc method with more intuitive parameters to drive along
    an arc, to eventually replace DriveBase.curve (support#1157).

Changed

  • Changed protocol to Pybricks Profile v1.4.0.
  • When upgrading the firmware to a new version, the user program will now
    be erased. This avoids issues with incompatible program files (support#1622).
  • The angular_velocity_threshold, and acceleration_threshold settings
    in hub.imu.settings are now persistent between reboots.
  • Reduced hub poweroff time from 3 to 2 second to make it easier to turn off
    the hub (pybricks-micropython#250).
  • Improved font for the digits 0--9 when displaying them
    with hub.display.char(str(x)) (pybricks-micropython#253).
  • On SPIKE Prime Hub and Robot Inventor Hub, moved Bluetooth indications to
    the Bluetooth light. Only warning lights will be shown on the main button
    light. See (support#1716) and (pybricks-micropython#261).
  • Allow gyro calibration only while all motors are coasting (support#1840) to
    prevent recalibration during very steady moves (support#1687)
  • Reduced default angular velocity stationary threshold from an undocumented
    5 deg/s to 3 deg/s to reduce unwanted calibration while moving (support#1105).
  • If imu.reset_heading() is called while a drive base is actively using the
    gyro, an exception will be raised (support#1818).

Fixed

  • Fixed not able to connect to new Technic Move hub with LWP3Device().
  • Removed gc_collect() from tools.run_task() loop to fix unwanted delays.
  • Fixed await wait(0) never yielding, so parallel tasks could lock up (support#1429).

Removed

  • Removed loop_time argument to pybricks.tools.run_task as this wasn't
    having the desired effect, and would cause loop round trips to take 10 ms
    for every await wait(1) (support#1460). This was an undocumented feature.