pinebook pro tips

also a shark

my pinebook pro has seen a good bit of usage at this point, and i have solved some small issues i wanted to share. i'm still running the stock manjaro KDE image that it shipped with, but these could be helpful for other distros as well

the TLDR is i dumped some stuff here, which might be helpful: https://cloud.lain.faith/s/ZA4n36xxZEYHxWb

the first issue is minor, i noticed an open issue on the manjaro gitlab relating to the the GPU frequency governor. it looks like by default it's set to simple_ondemand which is fine but i like to set stuff to high performance on AC power wherever possible so i made a TLP patch for this

applying the patch results in the GPU being always set at 800mhz on AC power. nothing too fancy. though honestly i think TLP should be completely replaced. it's like, one of the absolute worst instances of archware i've ever seen in my life and everything about it is awful. the only redeeming quality of TLP is that it works. the reason this needs a patch for the actual TLP package is because the TLP authors decided to intentionally exclude the ability to configure user hooks for TLP at runtime (????)
i'm serious
https://linrunner.de/tlp/faq/misc.html

Features excluded from TLP intentionally

  • ...
  • Hooks for arbitrary user scripts: support reasons speak against it

"support reasons"? what?


linus torvalds: i sleep
lennart poettering: i sleep a lot
the hecking TLP dude: 😠😠😠😠😠


From 4bb0a5937fb55e3fb0eea4bae081b78215ef1e5f Mon Sep 17 00:00:00 2001
From: haskal <haskal@awoo.systems>
Date: Sun, 20 Sep 2020 01:48:02 -0400
Subject: [PATCH] enable pinebook pro gpu management

---
 tlp.in | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tlp.in b/tlp.in
index 2d36c87..059a052 100644
--- a/tlp.in
+++ b/tlp.in
@@ -42,6 +42,14 @@ apply_common_settings () { # apply settings common to all modes
     set_sound_power_mode $1
     set_runtime_pm $1
 
+    # pinebook pro gpu mod
+    if [ "$1" == "0" ]; then
+        echo performance > /sys/class/devfreq/ff9a0000.gpu/governor
+    else
+        echo powersave > /sys/class/devfreq/ff9a0000.gpu/governor
+    fi
+    # end pinebook pro gpu mod
+
     return 0
 }
 
-- 
2.28.0

anyway i might ditch TLP and write a pinebook-pro-specific power management program from scratch, as a bit. once i get through the other projects that have been commitless for literally months because i'm very good at writing code



the other issue was a bit worse. i had been noticing that when listening to music on the pinebook pro it sounded noticeably off, and certain songs were even hurting my ears. i did some comparisons using the same headphones and music on my PBP as well as my phone and other laptops, and the PBP definitely had some weird EQ going on somewhere. i was pretty confident it was nothing in the KDE stack because i trust KDE to some degree, so i went to the codec hardware datasheet (available on the PBP wiki page) for clues. i noticed a "3-band PEQ" listed on the sheet, so i thought perhaps the configuration for that was somehow screwed up. digging into Linux kernel source, i found absolutely nothing on this supposed "PEQ" (actually, it's only mentioned at the beginning of the sheet with the feature summaries and never again..... hardware vendors.....) but i did find an exported control called 'DAC Stereo Enhancement'. hmm....

so it turns out that was the problem. by default, something in the hardware or Linux or KDE has this control set to 5 (on a scale of 0-7), and it does some unknown stuff in the codec hardware to the audio that makes it sound god awful. perhaps the 'enhancement' actually works on cheap audio equipment but definitely not on my cheap audio equipment (i have some generic chinese headphones i bought 3 years ago that sound okay but are badly constructed and it's now held together by gorilla glue uwu)

this was really hecking frustrating because i had spent a lot of time nearly tearing my hair out wondering if there's something wrong with the PBP audio or if i'm just hearing things. i was like, am i getting subconsciously gaslit by Big Microsoft into thinking the PBP audio is worse just because it's the PBP, when it's actually the same as other devices? or is there actually something up with it? if there is, what if the issue is not fixable? can i not use the PBP to listen to music at all, ever???

well luckily these fears are now put to rest. you can find out if your PBP has this 'stereo enhancement' enabled by running an amixer command

$ sudo amixer sget 'DAC Stereo Enhancement'
Simple mixer control 'DAC Stereo Enhancement',0
  Capabilities: volume volume-joined
  Playback channels: Mono
  Capture channels: Mono
  Limits: 0 - 7
  Mono: 0 [0%] # < here mine is set to 0. if this is something other than 0 it's active

you can disable it like this

sudo amixer sset 'DAC Stereo Enhancement' 0

you can also try playing with the parameter from 0-7 while some audio is playing (try: https://soundcloud.com/imlay/imlay-shurailow around 01:00 perhaps - it sounds legitimately Awful with the 'enhancement' enabled) to see how it messes with the sound. i'm not an audiophile at all, i probably couldn't tell you the difference between flac and 320 kbps mp3 audio. but like, you can tell. it makes a lot of music sound noticeably worse

this is a patch for the pinebookpro-audio package that ensures 'DAC Stereo Enhancement' is disabled

From 50305771ec21841a7cb544077786b69a510980d6 Mon Sep 17 00:00:00 2001
From: haskal <haskal@awoo.systems>
Date: Sun, 20 Sep 2020 02:05:53 -0400
Subject: [PATCH] disable the 'Stereo Enhancement' of the PBP codec

it sounds hecking awful. never enable this
---
 PKGBUILD                 | 2 +-
 audio_jack_plugged_in.sh | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/PKGBUILD b/PKGBUILD
index c07af94..468ac40 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -15,7 +15,7 @@ source=("audio_jack_plugged_in"
         'sync.sh'
         'pinebookpro-audio.service')
 md5sums=('03a8c88234b393f5b1c38e75ff68aa2a'
-         '4d395caad54fb1718a503754c034ebc2'
+         'd40e49ab9e9bd6482381b3c78c64f01c'
          'cdfed43fbb28c824bae3db9e7b6bfa77'
          'b82521af28ea956b0ee256905d25a4a6')
 
diff --git a/audio_jack_plugged_in.sh b/audio_jack_plugged_in.sh
index c86c549..a17c1bc 100755
--- a/audio_jack_plugged_in.sh
+++ b/audio_jack_plugged_in.sh
@@ -3,8 +3,10 @@
 case "$3" in
    plug)
        amixer sset Speaker off
+		amixer sset 'DAC Stereo Enhancement' 0
        amixer sset 'Playback Polarity' Normal ;;
    unplug)
        amixer sset 'Playback Polarity' 'R Invert'
+		amixer sset 'DAC Stereo Enhancement' 0
        amixer sset Speaker on ;;
 esac
-- 
2.28.0

this one, i sent an email to manjaro-dev about. hopefully this ends up with a patch getting into PBP manjaro at least, because gods i spent a lot of frustration on this. and basically this 'Stereo Enhancement' control sounds like an absolute trash fire, and there is no reason for it to ever be enabled at all. protip: if you're making a audio system of any sort, make it simply play the audio. do NOT add any sort of 'enhancements'. i do not want your 'enhancements', ever. it's time to stop.

the third thing in the nextcloud folder is a build of racket for aarch64 because it's not in the official repos. so i have racket on the PBP now, and everything works including DrRacket, which is nice. note that it's Racket BC. i'm not convinced it's actually possible to cross-compile Racket CS right now, and i'm cross-compiling this from my server because i did want this build to finish sometime this century. the issue with CS is that the bytecode is platform-dependent by default, and the build scripts are also just Extremely Broken. perhaps it can be cross-compiled in combination with qemu emulation of the target platform, but i didn't try that


also here's my actual PBP. it's a cutie,

my pinebook pro on the desk with stickers: cybre, this machine kills fascists, racket, dragnpats, enby crow, matrix, FRC dozer, pine64, ministerie van cyber, nsa monitored device, libbie, blåhaj, decolonize, ancom circle


haskal sharke tips

so, i heard word of a bootleg version of the blåhaj available from certain choice chinese retailers on mastodon a while back. and yes, apparently there is a bootleg haj that is pink and 140cm long (that's 40% bigger than the official blåhaj!) and after a bit of waiting for customs it is now stored in the my arms

a pile of 3 blåhajar, my smolhaj and blåhaj plus a new bootleg 140cm pink haj

haskal review: it's soft. and cuddly... if you're looking for a bodypillow but don't wanna associate yourself with weirdo anime bro types, look no further tbh

also: the smolhaj is no longer being produced by IKEA, but you can still find bootleg 45cm hajar similarly, in the official color as well as pink and purple. if you're so inclined


and now it's like 3 am so i'm gonna close this one out here
:dragnsleep: