Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Steffen Deusch

@sd@chaos.social
mastodon 4.6.9
  • Open on chaos.social

sysadmin, programmer, 🏳️‍🌈

0 Followers
0 Following
23 Posts
Joined August 17, 2018
GitHub:
https://github.com/SteffenDE
Location:
Munich
Pronouns:
He / Him
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
postmarketOS ships an eSIM management app by @z3ntu@fosstodon.org and it turns out it is not too difficult to make it work with the Samsung modem #mobilelinux #pixel9a
22
1
8
0
Open post
Steffen Deusch @sd@chaos.social
· 4w ago
Replying to
Hardware video decoding works now. Firefox (non-ESR) with a patched ffmpeg (adding DRM Prime buffer support based on a patch from RPi) can now decode 4k60 without toasting the phone. Firefox ESR only does accelerated H264 #mobilelinux #pixel9a
9
1
2
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
Since the code from AOSP is open source, I now have a minimal APF program that responds to ARP and ICMP for me during suspend. The phone now only wakes every ~90s because the modem tells it to. I measured a similar wakeup rate on Android, so let’s see how the battery drain over night will be. #mobilelinux #pixel9a
5
0
1
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
I’ve been looking into suspend lately and learned that there’s a small packet filter built specifically for Android in most WiFi chipsets. It’s called Android Packet Filter (https://source.android.com/docs/core/connect/android-packet-filter) and it is what the Pixel 9a uses to keep WiFi connected without waking the CPU all the time for things like ARP, ICMP, IPV6 router advertisements etc.; In mainline, there’s WoWLAN, which is similar (more limited), but the BCM4383 tegu uses actually does not implement it. #mobilelinux #pixel9a
Android Open Source Project

Android Packet Filter | Android Open Source Project

4
1
0
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
After one week of trying, I finally got suspend to RAM working, which I tried unsuccessfully months ago. Before, the only working suspend method was s2idle, so the CPU never fully turned off. Doing that, I also found a problem I introduced back then that caused UFS and serial to be flaky after resume, which is finally fixed now. What still causes issues is the Broadcom WiFi chip. It frequently dies shortly after resuming, even though it works fine for a bit… #mobilelinux #pixel9a
4
1
1
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
And since I slop-forked things anyway, I also experimented with a Android/iOS style dual sim indicator (top bar). Here’s the whole SIM switching in a screen recording. Doing that, I first ran into an issue with very choppy rendering while recording, which led me to my first upstream mesa contribution. Let’s see if it gets merged: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/44332 #mobilelinux #pixel9a
gitlab.freedesktop.org

util/format: add a NEON unpack for B8G8R8X8_UNORM (!44332) · Merge requests · Mesa / mesa · GitLab

4
5
1
0
Open post
Steffen Deusch @sd@chaos.social
· 1mo ago
Replying to on chaos.social
Now I could try to get the edgeTPU up and running on mainline, but it also runs a proprietary userspace for loading models etc.; So I did what the AI companies are doing, just on a much smaller scale: since I have root on Android, I can feed the model with a corpus of thumbnails and capture the created LTM grid. Doing that with ~1000 of my own RAW images and 3600 of Google’s open HDR plus dataset, I was able to distill the model into one that runs on CPU instead. #mobilelinux #pixel9a
5
1
2
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
The good news is that I fixed the WiFi to still be powered in suspend and now it does not crash shortly after waking any more. So after the night everything still runs smoothly. There are still other non frequent WiFi crashes (about once in 24h idle), but other than that things are quite stable #mobilelinux #pixel9a
3
1
0
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
Hmm so overnight the phone went from 85% to 50% SoC (in ~10 hours). Looking at the logs, it tried to sleep 4 times and each time woke after ~90s. That’s probably the modem. What’s unexpected is that it did not try to sleep again afterwards until after I briefly turned the screen on. Is this a known issue with Phosh’s suspend handling? In comparison: downstream Android enters deep suspend seconds after locking if there’s no wake-lock active #mobilelinux #pixel9a
3
1
1
0
Open post
Steffen Deusch @sd@chaos.social
· 1mo ago
Replying to
Here's a comparison of what it does. The brighter image is with the model in step 4 (there are different strengths depending on the difference between the expose that was taken and the exposure that would be chosen for the darkest parts of the image). The dark one is with it off.
4
1
1
0
Open post
Steffen Deusch @sd@chaos.social
· 2mo ago
Replying to
YES! I got the full audio pipeline working and the speakers actually sound great now after struggling with it for a couple of days. A prerequisite for audio was the AoC (the always on compute chip). It also provides access to almost all physical sensors. After reverse engineering the USF (googles AoC sensor framework) and bridging it to IIO, Phosh now properly rotates the screen when rotating the device. A couple more weeks and this could be an actually usable phone! #mobilelinux #pixel9a
19
4
6
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Big progress, WiFi works now! I'm posting this from the Pixel 9a running #postmarketOS #mobilelinux
30
2
6
0
Open post
Steffen Deusch @sd@chaos.social
· 3w ago
Replying to
I also adjusted the ModemManager plugin to expose both slots as their own modem instances and gnome control center actually handles this much better than I thought it would. Switching is a bit tricky, because only one can be active at a time and NetworkManager does not know about that. I have a slop patch that makes this work a little better, but I know that there’s funded work to improve dual SIM support overall, so looking forward to that! #mobilelinux #pixel9a
2
1
1
0
Open post
Steffen Deusch @sd@chaos.social
· 2mo ago
Replying to
You really can’t self host a git forge any more. A couple days ago Meta‘s crawler bombarded my forgejo instance and filled the disk with 500+GB of tar archives. Now I took it down because a fleet of residential proxies tries to crawl the Linux repository. Guess I have to set up Anubis after all or move public repos to GitHub… #mobilelinux #pixel9a
10
4
4
0
Open post
Steffen Deusch @sd@chaos.social
· 2mo ago
Replying to
So something that wouldn’t have been possible without LLMs for me: yesterday I debugged BCM4383 wifi host wake, so the host can almost fully power down the bus and still be reachable. There’s a GPIO that triggers an interrupt when the chip wants to wake the host, but I was unable to get it to be activated. So Claude casually patched the Broadcom firmware (approach from Nexmon) to dump the ROM (not accessible over host memory). Then deassmebled the code. 1/2 #mobilelinux #pixel9a
10
1
4
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to
Mobile data works now with some hacks. I also found the reason for a weird modem crash. The modem requests extra carrier data over a separate oem channel in protobuf format. It retries this a couple of times and while it does, data stalls. And if those requests are ignored for too long, an internal queue fills up until the modem crashes hard #mobilelinux #pixel9a
8
6
2
0
Open post
Steffen Deusch @sd@chaos.social
· 2mo ago
Replying to
It quickly found the gate: an IOVAR named host_access (sounds obvious in hindsight) and a check on it actually receiving a D3 interrupt from the PCIe controller. With that, wifi idles between 10 and 30 mW now. Before we were at ~120mW (associated). There’s the possibility to further lower this by completely stopping the PCIe link and fully retrain it on wake, that’s what Android does. It idles wifi between 0 and 6mW (measured on the rail). All of this in ~1h. 2/2 #mobilelinux #pixel9a
6
1
0
0
Open post
Steffen Deusch @sd@chaos.social
· 2mo ago
Replying to
Oh and speaker safety is also working, so it doesn’t even fry your speakers! #mobilelinux #pixel9a
6
3
0
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to
So it was more complicated than I thought. And it showed the limits of both Claude Opus and GPT-5.5. Both were unable to pin down the pattern needed to make the card accept the host_cap flag it seems to require for allowing D3 sleep. Then I found a commit message from Asahi Linux about brcmfmac host_cap by good old searching. I thought all the wifi changes from Asahi were upstreamed, but apparently not. Their kernel fork had the exact pattern I needed. Wifi still up after a night asleep!
8
9
1
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to
There we go! Exynos 5300 with custom ModemManager SIT plugin #mobilelinux #pixel9a
6
5
1
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to
Update: I got the Exynos 5300 modem booting and was able to send a simple text message! Sadly, all very proprietary with no existing integration into e.g. ModemManager #mobilelinux #pixel9a
4
7
1
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to
In-band deep sleep works now too. That drops the idle power usage when connected to wifi (measured WLAN+BT rail only) from nearly 400mW to 130mW. Still too high compared to downstream, but a big improvement. And while both GPT-5.5 and Claude Opus 4.8 were unable to pinpoint previous issues I've had, Fable 5 did nail it in one prompt. Not sure what to think of that... #mobilelinux #pixel9a
4
8
0
0
Open post
Steffen Deusch @sd@chaos.social
· 3mo ago
Replying to on chaos.social
Ah well, of course enabling WiFi broke sleep again, so back to debugging. Hopefully it’s a small fix.
3
1
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 20:48:59 UTC