"fullscreen" is for immersive apps like games (and is only available on Android currently which is why we didn't notice the app going fullscreen on desktop). Fixes: https://github.com/pybricks/support/issues/867
26 KiB
Changelog
Unreleased
Added
- Added audio and visual feedback when typing into terminal while user program is not running.
Changed
- Changed app display from "fullscreen" to "standalone" (support#867).
2.0.1 - 2022-12-21
Fixed
- Fixed terminal scroll not working (support#866).
- Fixed terminal breaks if input is given before hub is connected (support#865).
2.0.0 - 2022-12-20
Added
- Added Windows DFU USB driver installation instructions (support#858).
Changed
-
Clicking empty area of file list focuses the list (support#856).
-
Various text, style and accessibility fixes and improvements.
-
Updated dependencies.
-
Updated firmware to v3.2.0:
Changed
- Buffered stdout is flushed before ending user program.
Fixed
- Fixed SPIKE/MINDSTORMS hubs advertising after disconnect while user program is still running (support#849).
- Fixed Essential hub hanging on boot when bootloader entered but USB cable not connected (support#821).
- Fixed button needs debouncing on City/Technic/Essential hubs (support#716).
- Fixed motor hold drifting away under external input movement (support#863).
2.0.0-rc.1 - 2022-12-09
Added
- Added videos to firmware flash dialogs (support#728).
Changed
-
Moved documentation show/hide button from settings to editor area (support#778).
-
Updated documentation and other dependencies.
-
Updated firmware to v3.2.0c1:
Fixed
- Fixed
motor.control.limits()not working if acceleration wasNone. - Fixed crash on calling methods on uninitialized objects (support#805).
- Fixed crash on calling methods in
__init__(self, ...)before callingsuper().__init(...)on uninitialized objects (support#777). - Reverted Pybricks Code stop button raises
SystemAbortinstead ofSystemExit(support#834). - Improved stop message raised on
SystemExitandSystemAbort(support#836). - Fixed Technic Hub and City Hub sometimes not shutting down when a Bluetooth operation is busy (support#814).
- Fixed
hub.systemmethods not working (support#837).
Changed
- Changed default XYZ orientation of the Technic Hub and the Essential Hub to match the SPIKE Prime Hub and Move Hub (support#848).
- Fixed
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).
- Fixed slow firmware flash on Android (support#438).
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.