These used to be implemented as part of the Control object,
but now they are available directly on the motor.
This way they:
- Also give useful values when control is passive, via dc().
- Can be supported on Move Hub
- Give useful values for drive bases (see next commits).
Fixes https://github.com/pybricks/pybricks-api/issues/115
Also modify the categories given implicitly in the Python
file and make them explicit in the docs.
Most users are going to want to use `randint` or `random`, so
that basic category comes first.
This moves the per-hub storage size to the respective page.
This also clarifies that data is cleared when updating Powered Up hubs.
Also flip docstring signatures around to work around https://github.com/pybricks/pybricks-api/issues/117
Move it do a dedicated example instead of hardcoding it in the module docstring.
Also update changelog for missing previous changes while we are at it.
Previously, all renders were created and added manually when a newly
supported device was added to the documentation.
This commit revisits all diagrams by creating them using a single
LDRAW multi-file part model and LPUB3D building instructions file.
This makes perspective and resolution consistent across all images, and
we could update them all at once if needed.
It also removes the background from all images so they can be used
with different documentation themes.
We don't have proper images yet, so we are adding copies of the Prime
hub images for now to not take up space in git history with temporary
images and to at least have something so the docs will build.
This will help us review the pages as we add typing to the documentation. Then they will be hidden again.
This commit can be cherry-picked later on if we ever enable NXT and EV3 content again.
Upon temporarily including these to update typing for pybricks.ev3devices, a lot of build errors were encountered.
Even though we won't be re-including these pages any time soon, we'll want to occasionally make sure that they still build with more recent versions of Sphinx.
Also remove pybricks.common.Light which isn't used anywhere.
pupdevices.Light is a standalone light that does not support animations or blinks, so don't inherit from this nonexistent class.
Also remove the ColorLight.reset() method which was never implemented.
This formats return types so they don't look like tuples:
int: deg
If we can figure out how these nodes work, we can create proper links
and maybe use italics for the units or a slightly different font color.