Releases: ev3dev/ev3dev-lang-python
Version 2.0.0-beta1
This is the first release for the v2.x series of ev3dev-lang-python, designed specifically for the upcoming ev3dev version ev3dev-stretch. To learn more about new features and find out how to upgrade, see our upgrading guide: https://python-ev3dev.readthedocs.io/en/ev3dev-stretch/upgrading-to-stretch.html
Version 1.0.0
This isn't a huge release, but it marks the official "v1" of the library to correspond with ev3dev-jessie. In this release, the headline updates are proper handling of floating-point numbers with some sensors and methods for interacting with motor state. You can see the full list below.
- Add constants for color values to color sensor class
- Update documentation on motors
- Add getters to check state of motors
- Implement BeaconSeeker class
- Fix scaling of floating-point values from sensors
- Add Sound.play_song method
- Make sound commands cancelable
- Add tuples for sensor modes
- Add wait_until_not_moving for motors
Version 0.8.1
A minor release that mostly catches up to the changes in the latest kernel (18-ev3dev):
- Fix inverted button logic for the latest kernel.
- Check for non-existing device attributes. This patch adds
__slots__
attribute to all API classes that usesetattr
magic andkwargs
for function parameters. Besides reducing memory and speeding up access, the main point of this change is that a typo when calling a function will result in an error, rather than silently setting non-existing properties. - Provide
Sound.set_volume(pct)
and implementSound.get_volume()
. - Add a function to list all the connected sensors.
- Use speed instead of duty cycle in
EXPLOR3R/auto-drive.py
. - Update
utils
to python3. - Clean up MINDCUB3R demo.
- Documentation updates.
Version 0.8.0
This is a fairly minor release in terms of feature additions, but it includes a large breaking change (and one small one).
- Add option to not set mode before reading sensor value on "special" sensors
- Return a tuple for multiple values from a sensor property
- Add ColorSensor.raw() method to get all color channels at once
- Merge NXTMotor functionality into LargeMotor class and remove NXTMotor (breaking change)
- Distribute fonts from xfonts-75dpi in PIL format and expose them in
code - Replace special sensor methods with properties for the sake of consistency
(breaking change) - Provide waiting functions for motors
- Make implementation of Led timer-based trigger more robust
Starting with this release, you will now access sensor values on sensor classes such as TouchSensor
as Python properties instead of as methods. This means that you would replace sensor.is_pressed()
with sensor.is_pressed
(note the lack of parenthesis).
Version 0.7.0
This release brings with it a bunch of bug fixes as well as major interface changes to the motor API to become compatible with the newest ev3dev versions.
The release highlights include:
- Support for
-13-ev3dev
and newer kernels - New base classes for common types of robots
- Fixes for BrickPi support
- Performance improvements
You can see a list of all the changes that have been made in the changelog. Note that this release includes changes from both the v0.7.0~rc1
release and the current 0.7.0
release as listed in the changelog.
Version 0.6.0
There are a few changes worth noting in this release:
- The
port_name
attribute is now calledaddress
- LEDs on the BrickPi are renamed from
brickpi{1,2}:blue:ev3dev
tobrickpi:led{1,2}:blue:ev3dev
This release of the pure Python binding requires the latest ev3dev
kernel - see the announcement for Kernel Release Cycle 9 here
Version 0.5.0
There are a few changes worth noting in this release:
Sound
API now accepts single tones as well as lists of tones for backwards compatibility.LED
API now supports new LED names from the new kernelButton
API now hasany()
as a function, not a property.
This release of the pure Python binding requires the latest ev3dev
kernel - see the announcement for Kernel Release Cycle 8 here
Pure Python Binding for ev3dev.org
Initial release of a stable API for accessing ev3 peripherals such as motors, sensors, buttons, LEDs, the speaker and the screen.