Skip to Main Content
Lightning Talk Beginner MIT License (software) First Talk

Volume Controller using Knob (Potentiometer)

Proposal status is Approved
Session Description

Building a Physical Volume Knob for AOSP on Raspberry Pi 5

In this talk, I'll show how I connected a rotary potentiometer to a Raspberry Pi 5 running AOSP Android 15 and made it control the media volume — using a 250-line C++ daemon in the vendor layer, with zero changes to the Android framework.

Along the way we hit real walls: a library blocked by VNDK, build and runtime errors, three SELinux types that don't exist in AOSP 15, and a hardware bus number that wasn't what we expected.

Key Takeaways
  • How the AOSP vendor layer is structured and what belongs in it

  • How to read hardware sensors from a native C++ daemon using standard Linux kernel ABIs

  • How uinput works and why it is sometimes the right way to talk to Android audio from vendor code

  • How to write and debug SELinux policy for a vendor service from scratch

  • The difference between BOARD_VENDOR_SEPOLICY_DIRS and PRODUCT_PRIVATE_SEPOLICY_DIRS and why it matters

  • How to iterate on a vendor service without reflashing the entire image

References

Session Categories

Knowledge Commons (Open Hardware, Open Science, Open Data etc.)
Technology architecture
Talk License: MIT License (software)

Which track are you applying for?

Android Open Source Project (AOSP)

Speakers

arun Kumar aditya SDE 3 | Mercedes-Benz Research & Development India

I have been an Android application developer with 5+ years of experience building production applications. For the last 2 years, I have been exploring AOSP OEM vendor layer development on Raspberry Pi 5. I built a series of projects in AOSP — starting from a basic Binder calculator service and working up through thermal control HALs, SafeMode native services, and hardware peripherals. I document each project as a detailed engineering journal, covering every real error and the reasoning behind every design decision. I live in India, and share my work on GitHub at github.com/ProArun.
And this is going to be my first talk on any public forum, so I am excited

arun Kumar aditya
https://www.linkedin.com/in/arun-aditya-82a94914a/