The Python Build HAT library supports the Raspberry Pi Build HAT, an add-on board for the Raspberry Pi computer, which allows control of up to four LEGO® TECHNICTM motors and sensors included in the SPIKETM Portfolio.
The Build HAT provides four connectors for LEGO® TechnicTM motors and sensors from the SPIKETM Portfolio. The available sensors include a distance sensor, a colour sensor, and a versatile force sensor. The angular motors come in a range of sizes and include integrated encoders that can be queried to find their position.
The Build HAT fits all Raspberry Pi computers with a 40-pin GPIO header, including — with the addition of a ribbon cable or other extension device — Raspberry Pi 400. Connected LEGO® TechnicTM devices can easily be controlled in Python, alongside standard Raspberry Pi accessories such as a camera module.
Library documentation: https://buildhat.readthedocs.io
Hardware documentation: https://www.raspberrypi.com/documentation/accessories/build-hat.html
Projects and inspiration: https://projects.raspberrypi.org/en/pathways/lego-intro
To install the Build HAT library, enter the following commands in a terminal:
pip3 install buildhat
See the detailed documentation for the Python objects available.
import time from signal import pause from buildhat import Motor motor = Motor('A') motor.set_default_speed(30) print("Position", motor.get_aposition()) def handle_motor(speed, pos, apos): print("Motor", speed, pos, apos) motor.when_rotated = handle_motor print("Run for degrees") motor.run_for_degrees(360) print("Run for seconds") motor.run_for_seconds(5) print("Run for rotations") motor.run_for_rotations(2) print("Start motor") motor.start() time.sleep(3) print("Stop motor") motor.stop() pause()
Using asdf:
asdf install
Then:
pip3 install . --user
Instructions for regenerating the documentation can be found in
docs/README.md. Briefly, assuming you have the appropriate python
modules installed:
$ (cd docs; make html)
will rebuild the documentation. The doc tree starts at docs/build/html/index.html