21. Changelog¶
21.1. Release 1.4.0 (2017-07-26)¶
- Pin factory is now configurable from device constructors as well as command line. NOTE: this is a backwards incompatible change for manual pin construction but it’s hoped this is (currently) a sufficiently rare use case that this won’t affect too many people and the benefits of the new system warrant such a change, i.e. the ability to use remote pin factories with HAT classes that don’t accept pin assignations (#279)
- Major work on SPI, primarily to support remote hardware SPI (#421, #459, #465, #468, #575)
- Pin reservation now works properly between GPIO and SPI devices (#459, #468)
- Lots of work on the documentation: source/values chapter, better charts, more recipes, remote GPIO configuration, mock pins, better PDF output (#484, #469, #523, #520, #434, #565, #576)
- Support for
StatusZero
andStatusBoard
HATs (#558) - Added pinout command line tool to provide a simple reference to the GPIO layout and information about the associated Pi (#497, #504) thanks to Stewart Adcock for the initial work
pi_info()
made more lenient for new (unknown) Pi models (#529)- Fixed a variety of packaging issues (#535, #518, #519)
- Improved text in factory fallback warnings (#572)
21.2. Release 1.3.2 (2017-03-03)¶
21.3. Release 1.3.1 (2016-08-31 ... later)¶
- Fixed hardware SPI support which Dave broke in 1.3.0. Sorry!
- Some minor docs changes
21.4. Release 1.3.0 (2016-08-31)¶
- Added
ButtonBoard
for reading multiple buttons in a single class (#340) - Added
Servo
andAngularServo
classes for controlling simple servo motors (#248) - Lots of work on supporting easier use of internal and third-party pin implementations (#359)
Robot
now has a propervalue
attribute (#305)- Added
CPUTemperature
as another demo of “internal” devices (#294) - A temporary work-around for an issue with
DistanceSensor
was included but a full fix is in the works (#385) - More work on the documentation (#320, #295, #289, etc.)
Not quite as much as we’d hoped to get done this time, but we’re rushing to make a Raspbian freeze. As always, thanks to the community - your suggestions and PRs have been brilliant and even if we don’t take stuff exactly as is, it’s always great to see your ideas. Onto 1.4!
21.5. Release 1.2.0 (2016-04-10)¶
- Added
Energenie
class for controlling Energenie plugs (#69) - Added
LineSensor
class for single line-sensors (#109) - Added
DistanceSensor
class for HC-SR04 ultra-sonic sensors (#114) - Added
SnowPi
class for the Ryanteck Snow-pi board (#130) - Added
when_held
(and related properties) toButton
(#115) - Fixed issues with installing GPIO Zero for python 3 on Raspbian Wheezy releases (#140)
- Added support for lots of ADC chips (MCP3xxx family) (#162) - many thanks to pcopa and lurch!
- Added support for pigpiod as a pin implementation with
PiGPIOPin
(#180) - Many refinements to the base classes mean more consistency in composite devices and several bugs squashed (#164, #175, #182, #189, #193, #229)
- GPIO Zero is now aware of what sort of Pi it’s running on via
pi_info()
and has a fairly extensive database of Pi information which it uses to determine when users request impossible things (like pull-down on a pin with a physical pull-up resistor) (#222) - The source/values system was enhanced to ensure normal usage doesn’t stress the CPU and lots of utilities were added (#181, #251)
And I’ll just add a note of thanks to the many people in the community who contributed to this release: we’ve had some great PRs, suggestions, and bug reports in this version. Of particular note:
- Schelto van Doorn was instrumental in adding support for numerous ADC chips
- Alex Eames generously donated a RasPiO Analog board which was extremely useful in developing the software SPI interface (and testing the ADC support)
- Andrew Scheller squashed several dozen bugs (usually a day or so after Dave had introduced them ;)
As always, many thanks to the whole community - we look forward to hearing from you more in 1.3!
21.6. Release 1.1.0 (2016-02-08)¶
- Documentation converted to reST and expanded to include generic classes and several more recipes (#80, #82, #101, #119, #135, #168)
- New
CamJamKitRobot
class with the pre-defined motor pins for the new CamJam EduKit - New
LEDBarGraph
class (many thanks to Martin O’Hanlon!) (#126, #176) - New
Pin
implementation abstracts out the concept of a GPIO pin paving the way for alternate library support and IO extenders in future (#141) - New
LEDBoard.blink()
method which works properly even when background is set toFalse
(#94, #161) - New
RGBLED.blink()
method which implements (rudimentary) color fading too! (#135, #174) - New
initial_value
attribute onOutputDevice
ensures consistent behaviour on construction (#118) - New
active_high
attribute onPWMOutputDevice
andRGBLED
allows use of common anode devices (#143, #154) - Loads of new ADC chips supported (many thanks to GitHub user pcopa!) (#150)
21.7. Release 1.0.0 (2015-11-16)¶
21.8. Release 0.9.0 (2015-10-25)¶
Fourth public beta
21.9. Release 0.8.0 (2015-10-16)¶
Third public beta
- Added generic
AnalogInputDevice
class along with specific classes for theMCP3008
andMCP3004
(#41) - Fixed
DigitalOutputDevice.blink()
(#57)
21.10. Release 0.7.0 (2015-10-09)¶
Second public beta
21.11. Release 0.6.0 (2015-09-28)¶
First public beta
21.12. Release 0.5.0 (2015-09-24)¶
21.13. Release 0.4.0 (2015-09-23)¶
21.14. Release 0.3.0 (2015-09-22)¶
21.15. Release 0.2.0 (2015-09-21)¶
Initial release