Skip to content

Carry pydevices 0.7.0 and pydevices-lvgl 9.5.50; the audiodsp recipe honours its pin (0.6.4) - #39

Merged
bdbarnett merged 2 commits into
mainfrom
pydevices-0.7-pins
Oct 9, 2026
Merged

bdbarnett merged 2 commits into
mainfrom
pydevices-0.7-pins

Conversation

@bdbarnett

Copy link
Copy Markdown
Contributor

Fixes #35. Fixes #37.

The launcher's Drum machine and lv_test_timer buttons work again. Both examples import the env helpers from boarddev, which pydevices 0.7 added, so the Runner now carries:

package was now
pydevices 0.6.3 0.7.0
pydevices-desktop 0.6.3 0.7.0 (each release pins the other)
pydevices-lvgl 9.5.48 9.5.50
pydevices-audiodsp 0.6.0 named, 0.6.1 shipped 0.6.4

pydevices-lvgl moves with pydevices because 9.5.49 and later no longer ship display_driver, which pydevices 0.7 provides (see #36). The APK's display_driver now comes from pydevices.

The audiodsp recipe's get_pip_name() returned the bare name, so p4a installed the newest audiodsp on the index whatever the pin said. It now returns pydevices-audiodsp==<version>, the way the lvgl recipe does since #36.

The launcher keeps its own orientation wait. The display's replacement for it (PyDevices/pydevices#157) isn't in a pydevices release yet: 0.7.0 doesn't carry it. The roadmap bullet now says just that.

Tested on a Galaxy S21 (Android 14). This repo has no CI on pull requests, so this phone run is the check. The APK was built from this branch with ./build_android.sh -y and installed in place of 0.2.5.

from the launcher 0.2.5 this branch
Drum machine ImportError: cannot import name 'env_set' from 'boarddev', black screen runs (TR808 pattern, transport, volume)
lv_test_timer ImportError: cannot import name 'env_get' from 'boarddev', black screen runs (LVGL 9.5, 29 fps)
Piano runs runs
Back to the launcher after Drum machine, 5 times launcher drawn every time, none black

No traceback in logcat for any of them. The installed bundle lists pydevices-0.7.0, pydevices_desktop-0.7.0, pydevices_lvgl-9.5.50 and pydevices_audiodsp-0.6.4 in site-packages. An earlier build of the first commit, with pydevices-lvgl 9.5.49, passed the same run.

One thing to know if you build locally: an incremental build doesn't pick up a changed recipe version, because p4a reuses the existing dist when the recipe names match. The second commit's first build still packaged 9.5.49. Removing the dist (and the old dist-info under python-installs/) made the next build take 9.5.50. android-template's docs/building.md describes this (PyDevices/android-template#22).

…honours its pin (0.6.4)

The launcher's Drum machine and lv_test_timer examples import the env helpers from boarddev, which pydevices 0.7 added (#35). pydevices-desktop moves with pydevices, since each release pins the other. pydevices-lvgl 9.5.49 dropped display_driver, which pydevices 0.7 now ships, so the two move together.

The audiodsp recipe's get_pip_name() returned the bare name, so p4a installed the newest audiodsp on the index whatever the pin said (#37). It now returns pydevices-audiodsp==<version>, the way the lvgl recipe does since #36.

The launcher keeps its own orientation wait: pydevices 0.7.0 doesn't carry pydevices#157 yet.
Published from lvgl-bindings 9.5.23 since the first commit. Like 9.5.49 it ships no display_driver; pydevices 0.7 provides it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant