No description
  • Java 89.6%
  • C 5.7%
  • Shell 4.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ivan Pavlina 61121e45cd Document that zip is now installed
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 15:34:00 +00:00
.forgejo/workflows ci(android): skip the release when the tag already exists 2026-10-13 07:53:17 +02:00
jni Add controller battery and connection, online sensor; keep last values 2026-09-28 10:22:55 +02:00
res/mipmap-xxxhdpi Keep MQTT up on the charger, add sensors, settings screen and icon 2026-09-28 09:34:10 +02:00
src/net/exithub/picoautostart Add controller battery and connection, online sensor; keep last values 2026-09-28 10:22:55 +02:00
.gitignore Initial commit: Pico 4 helper for Home Assistant 2026-09-27 15:20:22 +02:00
AndroidManifest.xml Add controller battery and connection, online sensor; keep last values 2026-09-28 10:22:55 +02:00
build.sh Build the APK in Forgejo Actions 2026-10-12 18:25:44 +02:00
CLAUDE.md Document that zip is now installed 2026-10-16 15:34:00 +00:00
FINDINGS.md Add FINDINGS.md with Pico OS notification/autostart experiments 2026-09-27 15:21:37 +02:00
icon.svg Keep MQTT up on the charger, add sensors, settings screen and icon 2026-09-28 09:34:10 +02:00
README.md Rewrite README, add CLAUDE.md with build, CI, testing and gotchas 2026-10-16 15:32:20 +00:00

pico-autostart

A small helper APK for the Pico 4 (Pico OS, Android 10). It starts at boot as an accessibility service, reports headset state to Home Assistant over MQTT (discovery) and speaks text sent from Home Assistant through the Android TTS engine.

Quick start

You need the Android SDK (build-tools 36.1.0, platforms/android-35, NDK 27), a JDK 17 and zip.

export ANDROID_HOME=/path/to/android-sdk
JAVAC=/path/to/jdk17/bin/javac ./build.sh
adb install -r pico-autostart.apk
adb shell settings put secure enabled_accessibility_services \
  net.exithub.picoautostart/net.exithub.picoautostart.AutostartService
adb shell settings put secure accessibility_enabled 1

Then open Pico Autostart in the headset library and enter the MQTT broker. Entities appear in Home Assistant through MQTT discovery.

Build and deploy

There is no Gradle: build.sh calls the SDK tools directly. A push to main builds and signs the APK in Forgejo Actions and publishes it as an android-v* release, which Obtainium on the headset installs.

More

Entities, settings, architecture, gotchas: CLAUDE.md. What was tried on Pico OS and why it ended up like this: FINDINGS.md.