This adds use of sessionStorage for the documentation visibility toggle. This way, when multiple windows are open, the docs can be controlled separately in each window. Local storage is still used as the default value for new windows. Issue: https://github.com/pybricks/support/issues/807
22 KiB
Changelog
Unreleased
Fixed
- Fixed first tour item not shown if settings is not open (support#823).
- Fixed selected activity tab not controlled independently per window (support#807);
- Fixed selected documentation visibility not controlled independently per window (support#807);
2.0.0-beta.12 - 2022-12-02
Added
- Added in-app LEGO firmware restore for USB/DFU hubs.
- Added Pybricks logo when no files open.
Changed
-
Firmware restore for hubs with USB is now done in-app (pybricks-code#1104).
-
Moved Tour button from toolbar to settings.
-
Updated docs, code completion and other dependencies.
-
Updated firmware to v3.2.0b6:
- Added support for
PBIO_PYBRICKS_COMMAND_REBOOT_TO_UPDATE_MODEPybricks Profile BLE command. - Implemented
Motor.load()which now measures load both during active conditions (run) and passive conditions (dc).
Changed
- The Pybricks Code stop button will force the program to exit even if the user
catches the
SystemExitexception (pybricks-micropython#117). - Changed
PrimeHub.display.image()toPrimeHub.display.icon()and renamed its kwarg fromimagetoicon(support#409). - Deprecated
Control.load(),Control.stalled(), andControl.done()methods ([support#822]).
Fixed
- Fixed connecting
Remoteon BOOST move hub (support#793).
Removed
- Removed
hub.system.reset()method. - Disabled
micropythonmodule on Move Hub.
- Added support for
Fixed
- Fixed missing warning sign icon.
- Fixed error message for program too big for download (support#810).
2.0.0-beta.11 - 2022-11-11
Fixed
- Fixed app freezing when checking for updates and update server is unreachable (pybricks-code#1299).
- Added delay to try to mitigate errors when flashing firmware on city hubs (support#792).
2.0.0-beta.10 - 2022-11-11
Added
- Added feature create new empty file (pybricks-code#771).
- Added sponsor button (support#719).
Changed
-
Updated documentation.
-
Updated other dependencies.
-
Update Pybricks firmware to v3.2.0a5:
Added
- Added
DriveBase.stalled()for convenient stall detection. - Added
DriveBase.done()for convenient completion detection. - Added
Motor.done()for convenient completion detection.
Fixed
- Fixed brief hub freeze on
pybricks.common.Logger.save()when not connected to the computer (support#738). - Fixed drive base stall flags being set while not stalled (support#767).
- Fixed
Motor.run_targetraising exception for short moves (support#786).
- Added
Fixed
- Fixed firmware checksum validation when checksum === 0.
- Fixed activity views not scrolling when contents don't fit (support#782).
2.0.0-beta.9 - 2022-10-27
Added
- Added feature to close editor tab on middle click (support#758).
Fixed
- Fixed long time until UI visible on resource-constrained systems.
Removed
- Removed word-based autocompletion (support#757).
2.0.0-beta.8 - 2022-10-25
Fixed
- Fixed crash when user program contains syntax error (support#755).
2.0.0-beta.7 - 2022-10-24
Fixed
- Fixed UI temporary freeze when downloading and running programs (support#750).
2.0.0-beta.6 - 2022-10-21
Added
- Added feature to install custom firmware from file (pybricks-code#1020).
- Added support for multi-file programs (support#189).
Changed
-
Updated dependencies.
-
Updated documentation.
-
Updated APIs for code completions.
-
Update hub firmware to v3.2.0b4:
Added
- Added hub shutdown status light indication.
- Added boot and shutdown light matrix animations.
- Added new indication for over-charging battery (blinking green light).
- Added iterator protocol support to
geometry.Matrixclass. - Added support for multi-file projects (pybricks-micropython#115).
- Added new
System.storage()API (support#85).
Changed
- Battery full indication (green light) comes on earlier (support#647).
- User program is saved to non-volatile memory at shutdown on all hubs.
- Restored the
Motor.speed()method andDriveBaseequivalent to provide speed as a numerical derivative of the motor position. - Starting REPL automatically imports all modules (support#741).
- Updated Bluetooth to Pybricks Profile v1.2.0.
- Bluetooth now uses random private address instead of static public address (support#600).
Fixed
- Fixed motors going out of sync when starting program (support#679).
- Fixed motor torque signal overflowing under load (support#729).
- Fixed city hub turning back on after shutdown (support#692).
- Fixed IMU I2C bus lockup on SPIKE hubs (support#232).
- Fixed REPL history corrupt after soft reset (support#699).
- Fixed "ValueError: incompatible .mpy file" when pressing the button when there is no program yet (support#599).
Fixed
- Fixed run button enabled when no file open (support#691).
- Fixed flash firmware dialog not showing when settings not open (support#694).
- Fixed errors not handled while flashing firmware via USB (pybricks-code#1011).
- Fixed imports with invalid file name silently ignored (support#717).
- Fixed code completion not working when offline (pybricks-code#932).
Removed
- Removed feature to include custom
main.pywhen flashing firmware. - Removed support for file names containing
-.
2.0.0-beta.5 - 2022-07-28
Fixed
- Fixed
main.[hash].jsnot cached (support#689).
2.0.0-beta.4 - 2022-07-28
Added
- Added better error message when no files to backup (support#681).
- Added multi-step firmware flashing dialog.
- Added support for flashing firmware via USB DFU (support#659).
- Added an interactive introductory tour of the app.
- Added restore official LEGO firmware dialog.
Changed
-
Updated dependencies.
-
Updated firmware to Pybricks v3.2.0b3:
Fixed
- Fix integral control not working properly.
Changed
Motor.run_timeno longer raises an exception for negative time values.
Fixed
- Fixed deleting files that are not open in the editor.
2.0.0-beta.3 - 2022-07-06
Changed
-
Updated dependencies.
-
Updated firmware to Pybricks v3.2.0b2:
Added
- Added
Motor.stalled()method.
Fixed
- Fixed motor not stopping at the end of
run_until_stalled(support#662). - Fixed incorrect battery current reading on Technic hub (support#665).
- Fixed non-zero speed reported when motor stalled.
- Fixed I/O devices not syncing at high baud rate.
- Fixed
ENODEVerror while device connection manager is busy (support#674).
Changed
- Reworked internal motor model that is used to estimate speed.
- Speed methods now use estimated speed instead of reported speed.
- Changed drive base default speed to go a little slower.
- Updated MicroPython to v1.19.
- Added
2.0.0-beta.2 - 2022-06-24
Added
- Added basic intellisense to the code editor.
2.0.0-beta.1 - 2022-06-03
Added
- Added multi-file support (support#418, support#465).
Changed
-
Moved settings.
-
Accessibility improvements.
-
Updated dependencies.
-
Updated documentation.
-
Updated firmware to v3.2.0b1:
Added
- Added
Stop.NONEasthenoption for motors. - Added
Stop.COAST_SMARTasthenoption for motors. - Made motor deceleration configurable separately from acceleration.
- Enabled
ujsonmodule. - Added ability to use more than one
DriveBasein the same script. - Added support for battery charging on Prime and essential hubs.
Changed
- Changed how
DriveBasesandMotorclasses can be used together. - Raise asynchronous
OSErrorinstead ofSystemExitif motor is disconnected while a program is running. - Changing settings while a motor is moving no longer raises an exception. Some settings will not take effect until a new motor command is given.
- Disabled
Motor.controlandMotor.logon Move Hub to save space. - Changed LED color calibration on Prime hub to make yellow less green.
- Updated to upstream MicroPython v1.18.
- Changed imu.acceleration() units to mm/s/s (pybricks-micropython#88) for Move Hub, Technic Hub, and Prime Hub.
Fixed
- Fixed color calibration on Powered Up remote control (support#424).
- Fixed 3x3 Light Matrix colors with hue > 255 not working correctly (support#619).
- Added
Fixed
- Fix tooltips not closing when expected (pybricks-code#275).
1.2.0-beta.1 - 2021-12-27
Added
- Status bar indicator for connected hub.
- Basic battery OK/low indicator (support#559).
Changed
- Saving file now uses proper save dialog in Chromium browser (support#84).
- Toolbar buttons now scale with screen size (support#300).
Fixed
- Fixed buttons wrong size while image is downloading (support#369).
1.1.0 - 2021-12-16
Changed
-
Updated dependencies.
-
Updated to Pybricks Firmware v3.1.0:
Changed
- Renamed new
DCMotor.dc_settings()method toDCMotor.settings()(support#536).
Fixed
- Fixed direction for
DriveBase.turn()andDrivebase.curve()for some arguments (support#535). - Fixed
then=Stop.COASTnot working inDriveBasemethods (support#535).
- Renamed new
-
Updated docs:
Added
- Added maximum voltage setter for
DCMotorandMotor. - Documented
DriveBase.curve()method.
Changed
- Removed
dutysetting fromControl.limitsmethod. - Removed
integral_rangesetting fromControl.pidmethod.
- Added maximum voltage setter for
1.1.0-rc.1 - 2021-11-19
Added
- Hub name setting for selecting hub name when flashing firmware (support#52).
Changed
-
Updated to Pybricks firmware v3.1.0c1:
Added
- Added
DriveBase.curve()method to drive an arc segment. - Added
thenandwaitarguments toDriveBasemethods (support#57).
Changed
- Dropped
integral_rangeargument fromControl.pid(). This setting was ineffective and never used. When set incorrectly, the motor could get stuck for certain combinations ofkpandki. - Improved motor behavior for cases with low-speed, low-load, but high inertia (support#366).
- Changed how the duty cycle limit is set for
MotorandDCMotor. It is now set as a voltage limit via a dedicated method, instead ofMotor.control.
Fixed
- Fixed
then=Stop.COASTbeing ignored in most motor commands. - Fixed
brake()/light.off()not working on Move hub I/O port C (support#501). - Fixed
Remote()failing to connect when hub is connected to 2019 or newer MacBooks (support#397). - Fixed intermittent improper detection of hot-plugged I/O devices (support#500).
- A program now stops when a
Motoris unplugged while it is running, instead of getting in a bad state.
- Added
-
Updated docs:
Added
- Added
ColorLightMatrixclass. - Added
LWP3Deviceclass.
- Added
1.1.0-beta.6 - 2021-09-21
Added
- Show error message if connected hub is running old firmware (support#482).
Changed
-
Updated dependencies.
-
Updated to Pybricks firmware v3.1.0b1:
Added
- Support for LEGO Technic Color Light Matrix (support#440).
- Support for LEGO UART devices with a new battery power flag. This is required to support the new LEGO Technic Color Light Matrix (support#440).
- Support for the SPIKE Essential hub/Technic Small hub (support#439).
Fixed
- Fixed Ultrasonic Sensor and Color Sensor turning off when a user script ends (support#456).
- Hub reset due to watchdog timer when writing data to UART I/O device (support#304).
- City/Technic hubs not connecting via Bluetooth on macOS 12 (support#489).
Changed:
- Updated to MicroPython v1.17.
1.1.0-beta.5 - 2021-08-30
Changed
-
Updated to Pybricks firmware v3.1.0a4:
Added
- Enabled builtin
bytearray(pybricks-code#60). - Enabled
ustructmodule (pybricks-code#60). - Added alpha support for dual boot installation on the SPIKE Prime Hub.
- Added
pybricks.experimental.hello_worldfunction to make it easier for new contributors to experiment with Pybricks using C code. - Added ability to import the
main.mpythat is embedded in the firmware from a download and run program (support#408). - Added
pybricks.iodevices.LWP3Deviceto communicate with a device that supports the LEGO Wireless Protocol 3.0.00 (pybricks-code#68)
Changed
- Move Hub Bluetooth optimizations to reduce firmware size (pybricks-code#49).
- Disabled
pybricks.iodevicesmodule on Move Hub to reduce firmware size. - Improvements to
pybricks.pupdevices.Remote:- Check if a remote is already connected before attempting to create a new connection.
- Rename first argument from
addresstonameto match documentation. - Implement connecting by name.
- Add
name()method. - Add
lightattribute.
- Enabled builtin
-
Updated documentation:
Added
- MicroPython module documentation.
- Examples for hub system functions including stop button and shutdown.
Changed
- Build IDE docs as main docs with minor changes, instead of a completely separate build.
- Moved motor control documentation to the motor page.
1.1.0-beta.4 - 2021-08-13
Fixed
- Fixed flashing firmware on Android support#403.
Changed
- Checksum is now validated as firmware flash progresses instead of just at the end support#433.
- About menu now shows firmware version as main version support#412.
1.1.0-beta.3 - 2021-07-20
Changed
- Changed snippet (autocomplete) content and behavior pybricks-code#471.
- Changed gutter background color pybricks-code#472.
- Added BETA badge to application icon support#375.
- Updated hub firmware to v3.1.0a3.
Fixed
- Fixed auto-indent not working pybricks-code#470.
1.1.0-beta.2 - 2021-07-06
Changed
- Changed from Ace editor to Monaco editor.
- Updated hub firmware to v3.1.0a2.
Fixed
- Fixed run button still enabled after hub disconnects during download support#378.
1.1.0-beta.1 - 2021-06-23
Changed
- Updated projects URL.
- Updated hub firmware to v3.1.0a1.
- Updated docs.
1.0.0 - 2021-06-08
Added
- Added changelog link to about dialog.
Changed
- Updated hub firmware to v3.0.0.
- Updated documentation.
Prerelease
Prerelease changes are documented at support#48.