Android 7.1 R1 on Acer Aspire Switch 10 - SW5-012 - The (usual) problems!

1,811 views
Skip to first unread message

Andy

unread,
Feb 14, 2018, 11:22:28 PM2/14/18
to Android-x86
Hi there!

I'm checking out 7.1R1 64 bit on my old Acer Switch 10 (SW5-012) Baytrail.
This time things seemed to go better than in the past (improved stability,
correct orientation at startup) but, as usual, I've got no sound.

Anyway, the new kernel and a couple of years of development have shown
some steps in the right direction, since the audio section of the Z3735F
has been (correctly?) detected, I've got some /proc/asound/cards
and /dev/snd stuff and even (!) a working set of volume sliders.

Sadly, a quick test with the YouTube app ended up with a working video
but no sound at all. I also tried the earphones, hoping in a wrong default
output routing, but they were muted too.

The output of 'dmesg' reports some issues that sound familiar:

Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port

After 'killall audioserver' logcat gives some hints:

audio_hw_primary: found audio out at /dev/snd/pcmC0D0p
audio_hw_primary: card 0/0 id: Baytrail Audio (*)
...
audio_hw_primary: found audio out at /dev/snd/pcmC0D1p
audio_hw_primary: card 0/1 id: Deep-Buffer Audio (*)
...
audio_hw_primary: ignore pcmC0D1p
audio_hw_primary: choose pcmC0D0p for 0
audio_hw_primary: Failed to open /system/etc/mixer_paths.xml
...
...
EffectsFactory: loadLibrary() failed to open /system/vendor/lib/soundfx/libswdap.so
...

cat /proc/asound/cards gives:
 0 [bytcrrt5640    ]: bytcr-rt5640  - bytcr-rt5640
                      bytcr-rt5640
ls /dev/snd gives:
comprC0D2  controlC0  pcmC0D0c  pcmC0D0p  pcmC0D1p  timer

I also have the same issues reported by Yegor Dargin in a post dated July 4th 2017:
- battery always 100% charging;
- bad tracking of the accelerometer: correct orientation at startup but after
  a physical rotation of the tablet the screen get unaligned 90° counterclockwise;
- power button abruptly shuts down the system (crash?);
- no backlight control (but this has been a long long story);

To wrap up, this is actually a no-go and the unofficial CM13 installation
that I actually run is the only one with a decent stability, working sound
and battery usage reporting. It only lacks the iio sensor but I can survive it
using any "SetOrientation" app.

So, is there any advice to make sound work on this brand-new 7.1R1?
The Switch 10 platform has been a problematic one since KitKat,
but I wouldn't give up with some help from the veterans.

Thank you in advance.

Andy.

youling 257

unread,
Feb 15, 2018, 1:23:04 AM2/15/18
to Android-x86
search 49 KB bytcrrt5640.state for BYTCR Z3735f in this forum.

在 2018年2月15日星期四 UTC+8下午12:22:28,Andy写道:

youling 257

unread,
Feb 15, 2018, 1:28:49 AM2/15/18
to Android-x86
Download Phoenix os 2.5.9 ISO,copy it's bytcrrt5640.state


在 2018年2月15日星期四 UTC+8下午12:22:28,Andy写道:
Hi there!

youling 257

unread,
Feb 15, 2018, 1:40:02 AM2/15/18
to Android-x86


在 2018年2月15日星期四 UTC+8下午12:22:28,Andy写道:
Hi there!
bytcrrt5640.sh
Speaker-on.sh
Headset-on.sh
Message has been deleted

Ez Goen

unread,
Dec 1, 2020, 5:14:40 AM12/1/20
to Android-x86
Hi

My findings re-sound on an Acer Switch SW5-012/Android-x86_64-7.1-r4 - kernel  4.9.194-android-x86_64

Get the script file bytcrrt5640.sh kindly provided by youli... in this thread (Thanks)

Put the script on your Switch - use a smb share of another pc or a usb or any other way that you're comfortable with
lI used cx file explorer to access a smb share on my linux box
Lets put bytcrrt5640.sh in /storage/emulated/0/
run terminal
then type the following 
$ su - 
This changes user to root, the '-' means to load or run any root environment - in old unix we used to call this 'become root'
Respond to the system asking permission to become root user or admin permissions (cant remember the prompt)
Now proceed to execute the following lines one at a time

# /system/bin/sh /storage/emulated/0/bytcrrt5640.sh
my sound worked at this point now the rest is to make it persist

# cd /system/etc/alsa
# ls -al
I get the following :
drwxr-xr-x  2 root root  4096 2020-12-01 20:36 .
drwxr-xr-x 11 root root  4096 2020-11-29 17:56 ..
-rw-r-xr-x  1 root root 50449 2020-11-29 20:29 bytcrrt5640.state
-rw-r-xr-x  1 root root 48847 2020-11-29 20:21 chtrt5645.state

now do ..
# mv bytcrrt5640.state bytcrrt5640_default.state
# alsa_ctl store -f /system/etc/alsa/bytcrrt5640.state

reboot and sound worked for me (you can actually type reboot at the # prompt if you like)

There's a curiousity here - under ?nix alsa_mixer stores and loads its state at boot time from /var/lib/alsa/asound.state
Android does not seem to do so. Instead it seems to load it from /system/etc/alsa which is fine. 
What concerns me is that ALL the state files at that location seem to be getting loaded at boot. but in what order??
 
There are many differences in the two state files running diff on the two of them showed numerous control stanzas being different.

I urg anyone experimenting to run alsa_ctl store -f /storage/emulated/0/state_after_I_changed_something.state
and change the file name each time, this way it you get it going then break it you can troll through the files to see whats different.

Now I'm on to getting other stuff sorted (there is no try)
Screen: properly switch off including the backlight.
Audio - Microphone not working
Batter charge indicator 
I forget the other annoyances - but its almost useful now - sound will be awesome for voice calls on FB
Backlight and battery stuff just to properly monitor and control battery and get the most out of this thing

PS I had many issues with android misbehaving and the gui crashing the taskbar crashing, many things freezing UNTIL I put 64 bit Android on this box. Yup 32bit UEFI loaded a 64bit OS just fine. 
I'l get a few more things sorted out before I upgrade and try to apply my changes to a newer version.

Goodluck, hope this helps someone!

Ez

Ez Goen

unread,
Dec 1, 2020, 6:29:14 PM12/1/20
to Android-x86
PS to my previous post - make sure you exit the su - back to the $ prompt in terminal
you dont want to be accidentally destroying things.

Just keep typing exit <return> until you either close the window or see the $ prompt. 
The hash # prompt is root - you dont want to be there - get in - do what you gatta do and get back out.

Cheers

Ez
Reply all
Reply to author
Forward
0 new messages