Ah yes. You are correct. Than it’s 4 Gbits/s
ROCK 5B Debug Party Invitation
That’s for m.2 to x16.
https://aliexpress.ru/item/4000928573255.html
Based on rk3588 schematics I believe that one lane of pcie 2.1 was taken by RTL8225BG.
And Allen is talking about making 1 Gb/s port, but having 2 lanes on e-key pcie (not like i agree with it, since for mass-market it’s more important to have 2.5G and placement for wifi, rather than going for ~10Gbit on single port)
Radxa could’ve gone with GbE by using one of the two GMACs RK3588 provides. But fortunately they didn’t (see @willy’s insights above – RealTek really improved a lot over the last decades, even the 8111 PCIe NICs are fine starting with revision G).
I hate to quote Stuart but ‘it is as it is’ and they chose better network connectivity over another disposable Gen2 PCIe lane.
@Dante4 I have also seen a few adapters like those but since there are no visible chips on them (and they are very cheap) I would assume that they are just x16 slots where only the first four lanes are connected to something. Hence if I put an extension card there that expects/requires 16 actual lanes, it will not work as expected
Maybe I just try the port multiplier solution and hope for the best if the worst case is that the last written data might be corrupt, I don’t care…
Thanks for your help guys!
No, that doesn’t work like this. As you may see in my post - I used PCIe switch, and that worked perfectly fine. Any (and by any I mean ANY) pcie device ALWAYS detect pcie version and amount of pcie lines available to it. So if you input x16 device in x4 lanes - device will go down to x4 lanes
@willy I found another funny PVTM example (part of sbc-bench results collection): http://ix.io/47IO
cpu cpu0: pvtm=1436
cpu cpu0: pvtm-volt-sel=2
cpu cpu4: pvtm=1649
cpu cpu4: pvtm-volt-sel=3
cpu cpu6: pvtm=1662
cpu cpu6: pvtm-volt-sel=3
For whatever reasons highest cpufreq OPP is 2352 (maybe configured manually by tweaking DT) but this results in some MCU declining high clockspeeds totally and limiting the upper end to below 400 MHz
Cpufreq OPP: 2352 Measured: 394 (394.973/394.794/394.738) (-83.2%)
Cpufreq OPP: 2208 Measured: 2099 (2099.382/2099.360/2099.164) (-4.9%)
Cpufreq OPP: 2016 Measured: 1975 (1975.674/1975.674/1975.239) (-2.0%)
Cpufreq OPP: 1800 Measured: 1803 (1803.289/1803.269/1803.208)
Cpufreq OPP: 1608 Measured: 1601 (1601.416/1601.377/1601.277)
Cpufreq OPP: 1416 Measured: 1436 (1436.630/1436.454/1436.326) (+1.4%)
Cpufreq OPP: 1200 Measured: 1183 (1184.341/1184.246/1183.392) (-1.4%)
Cpufreq OPP: 1008 Measured: 967 (967.415/967.324/967.166) (-4.1%)
Cpufreq OPP: 816 Measured: 778 (778.755/778.746/778.719) (-4.7%)
Cpufreq OPP: 600 Measured: 592 (592.871/592.725/592.632) (-1.3%)
Cpufreq OPP: 408 Measured: 394 (394.987/394.955/394.844) (-3.4%)
PVTM at work
That’s extremely strange. I’m more eager to thinking that there was a measurement error, e.g. opp being reported at some point and for whatever reason the idle calculation went wrong and the frequency instantly dropped to the lowest value during the measurement, or something like this. Or maybe this was run with the CPU overheating, causing it to instantly drop to the lowest bin during the test. But I do not see this being the result of a mistake in that non-fully-transparent chain, because the sel values only select an OPP entry and if your OPP is correct it should set the appropriate frequency. Or maybe the opp entry was slightly modified and the cpufreq code, not finding it, went to the lowest, but that sounds fishy.
I would believe we’re seeing cpufreq driver and one of those Cortex-M cores responsible for CPU doing different/counterproductive things?
Testing HDMI In. Preliminary tests.
Attached a 1920x1080 HDMI output to HDMI in:
[21875.917051] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: hdptx phy pll locked!
[21875.917324] rockchip-hdptx-phy-hdmi fed60000.hdmiphy: hdptx phy lane locked!
[21875.917403] dwhdmi-rockchip fde80000.hdmi: don't use dsc mode
[21876.122474] dwhdmi-rockchip fde80000.hdmi: dw hdmi qp use tmds mode
[21876.133357] dwhdmi-rockchip fde80000.hdmi: use tmds mode
[21891.752972] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_audio_interrupts_setup: 1
[21891.768465] fdee0000.hdmirx-controller: hdmirx_wait_lock_and_get_timing signal lock ok, i:2!
[21891.799180] fdee0000.hdmirx-controller: Vertical Sync threshold reached interrupt 0x2
[21891.864144] fdee0000.hdmirx-controller: hdmirx_format_change: New format: 1920x1080p59.99 (2200x1125)
[21892.306028] rk_hdmirx fdee0000.hdmirx-controller: hdmirx_delayed_work_audio: enable audio
[22265.859719] fdee0000.hdmirx-controller: stream start stopping
[22265.868370] fdee0000.hdmirx-controller: stream stopping finished
[22313.061071] fdee0000.hdmirx-controller: stream start stopping
[22313.069655] fdee0000.hdmirx-controller: stream stopping finished
[22330.790558] fdee0000.hdmirx-controller: stream start stopping
[22330.794873] fdee0000.hdmirx-controller: stream stopping finished
[22723.155749] fdee0000.hdmirx-controller: rcv frames
[22724.339221] fdee0000.hdmirx-controller: stream start stopping
[22724.347802] fdee0000.hdmirx-controller: stream stopping finished
v4l2-ctl -d /dev/video20 -V -D
Driver Info:
Driver name : rk_hdmirx
Card type : rk_hdmirx
Bus info : fdee0000.hdmirx-controller
Driver version : 5.10.66
Capabilities : 0x84201000
Video Capture Multiplanar
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04201000
Video Capture Multiplanar
Streaming
Extended Pix Format
Format Video Capture Multiplanar:
Width/Height : 1920/1080
Pixel Format : 'BGR3' (24-bit BGR 8-8-8)
Field : None
Number of planes : 1
Flags : premultiplied-alpha, 0x000000fe
Colorspace : BT.2020
Transfer Function : Unknown (0x000000b8)
YCbCr/HSV Encoding: Unknown (0x000000ff)
Quantization : Default
Plane 0 :
Bytes per Line : 5760
Size Image : 6220800
capture -d /dev/video20 -f BGR3 -s 1920x1080 -k 100 -v
Available pixel formats for /dev/video20:
BGR3 (33524742), 24-bit BGR 8-8-8, flags = 0
NV24 (3432564e), Y/CbCr 4:4:4, flags = 0
NV16 (3631564e), Y/CbCr 4:2:2, flags = 0
NV12 (3231564e), Y/CbCr 4:2:0, flags = 0
Control id: 10488164 - Power Present
Setting pixel_format: BGR3 (1920x1080)
Image size: 4147200 (1920x1080)
frame count: 1 - frames to skip: 100 - max. time: 0
fps: 56.80 - frame: 101 - size: 6220800 - elapsed: 1777892.
almost there:
conversion done with:
convert -size 1920x1080 -depth 8 test.bgr test.png
Also:
v4l2-ctl -d /dev/video20 -vwidth=1920,height=1080,pixelformat=BGR3 --stream-mmap --stream-skip=3
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 60.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<^C
The next step is to encode the stream to mp4.
What about a loop back? Grabbing frames from Rock 5B hdmi out to hdmi in? Yes, it works.
Hardware Encoding (H264) takes ~2% CPU usage (1.3% ~1.7%). Finally, a platform where you can make videos with HDMI input. Worked well with FHD at least. 4K not tested. Maybe I’ll find a 4K TV and try it out.
I am using the default mpp parameters, you can set “gop reference mode”, “bps” and “frame rate”, but that is for the video encoder experts, if you want me to try with some parameters, let me know.
Here is the encoded output (1920x1080, 60 Hz, 30 fps, 600 frames)
out_600frames_1920x1080.h264.zip (735.8 KB)
Rendering the BGR frames with SDL. Not really optimized, the best option would be to use NV12, i haven’t found a way yet, any suggestion?
@hipboi,@jack,
Please, consider providing an option for buying a camera FPC with a length of 20 cm, 25 cm, or maybe 30 cm for robotic projects. Can you share if the final product will have a different flex cable? I can see you are preparing for new camera sensors.
Presumably one could also use a cheaper board based around the ASM2812, like this:
Progress is being made on replacing the GPU firmware…
root@rock-5b:/sys/kernel/debug# echo 'Hello, World!' >mali0/fw_traces
root@rock-5b:/sys/kernel/debug# cat mali0/fw_traces
Hello, World!
So I can now send and receive messages from my firmware image through tracebuffers.
Unfortunately I’m having problems with getting exception returns to work, so I have to use polling rather than waiting for an interrupt.
Does anyone with experience with microcontrollers have any idea why an exception body that is nop; bx lr
with 0-3 NOPs works fine, or 16-19, but not 4-15 NOP instructions?
i.e. the return instruction faults if it is not in the first eight bytes of a cacheline.
I’m defining the function like this:
__attribute__ ((naked, optimize("align-functions=64")))
static void
irq_handler_doorbell(void) {
asm volatile(
"nop \n"
"nop \n"
"bx lr \n");
}
The fault shows up in dmesg like this:
[ 4582.644400] mali fb000000.gpu: Unexpected Page fault in firmware address space at VA 0x0000000000FFFFE0
raw fault status: 0x7CD002C2
exception type 0xC2: UNKNOWN
access type 0x2: READ
source id 0x7CD0
After enabling the MPU and doing a bunch of other stuff, exception returns seem to have magically fixed themselves.
The MPU is working fine as well:
HardFault:
HFSR: vecttbl=0 forced=1 debugevt=0
CFSR: daccviol
MMFAR: 00004000
MSP / handler
pc : 01000166 lr : 01000195
sp : 0203fef0 ip : 0409a067 fp : 00000000
r7 : 0203fef0 r6 : 00000000 r5 : 04001710 r4 : 04001794
r3 : 00004000 r2 : 00000000 r1 : 0280001c r0 : 0203ff18
I would like to report an issue. I think it’s been thoroughly discussed here, but since I haven’t stressed the board enough, I’ve never had this issue, until now.
My board has the exact same configuration (and batch number) as that of @CNXSoft.
I have been doing the builds natively (deb packages), using the eight cores. The builds are usually small, and i don’t cross-compile the apps i am testing. In fact, i have some linkage errors that a rockchip staff member could not reproduce, but maybe this is not related to the issue.
To make it short, since my kernel was somehow old, i cross-compiled the kernel with the latest patches and booted with the new kernel. Later, i decided to build the kernel natively. during the build, the board started to slow down, and the build crashed. (core dump). There was no overheating. I had to reboot the board. Unfortunately, eMMC got corrupt and the fs could not even be restored (no partition anymore).
I am using the radxa power supply.
I think these patches may have something to do with the issue (not really sure):
Can someone share what can be monitored in /sys so i can try to add it to htop and see the values in real-time? I will remove the patches and redo everything and see what i get.
Maybe the 64GB DRAM timings need to be addressed?
UPDATE:
Here is what is left from the 64GB eMMC that came with the board:
[ 147.852130] usb-storage 8-2.1:1.0: USB Mass Storage device detected
[ 147.852245] scsi host7: usb-storage 8-2.1:1.0
[ 148.882101] scsi 7:0:0:0: Direct-Access Generic Mass-Storage 1.11 PQ: 0 ANSI: 2
[ 148.882370] sd 7:0:0:0: Attached scsi generic sg5 type 0
[ 149.624090] sd 7:0:0:0: [sde] 11376640 512-byte logical blocks: (5.82 GB/5.42 GiB)
[ 149.629086] sd 7:0:0:0: [sde] Write Protect is off
[ 149.629088] sd 7:0:0:0: [sde] Mode Sense: 03 00 00 00
[ 149.634086] sd 7:0:0:0: [sde] No Caching mode page found
[ 149.634090] sd 7:0:0:0: [sde] Assuming drive cache: write through
[ 149.722086] sd 7:0:0:0: [sde] Attached SCSI removable disk
Damaged or worn down?
Luckily i have a spare 64GB eMMC saved here for Rock 3A. i will redo everything and cross my fingers.
Display HDMI-IN content, some better results with GBM:
gst-launch-1.0 v4l2src device=/dev/video20 ! queue ! video/x-raw,format=BGR,width=1920,height=1080 ! glimagesink
Testing Sound (headphone Jack) output. DTS needs some adjustments.
Sound with wheezing (distorted sound with max volume) while playing MP3, AC3 Dolby Digital 5.1, and wav.
List of PLAYBACK Hardware Devices
card 0: rockchiphdmi0 [rockchip-hdmi0], device 0: rockchip-hdmi0 i2s-hifi-0 [rockchip-hdmi0 i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: rockchiphdmi1 [rockchip-hdmi1], device 0: rockchip-hdmi1 i2s-hifi-0 [rockchip-hdmi1 i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: rockchipes8316 [rockchip-es8316], device 0: fe470000.i2s-ES8316 HiFi es8316.7-0011-0 [fe470000.i2s-ES8316 HiFi es8316.7-0011-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
List of CAPTURE Hardware Devices
card 2: rockchipes8316 [rockchip-es8316], device 0: fe470000.i2s-ES8316 HiFi es8316.7-0011-0 [fe470000.i2s-ES8316 HiFi es8316.7-0011-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: rockchiphdmiin [rockchip,hdmiin], device 0: fddf8000.i2s-dummy_codec hdmiin-dc-0 [fddf8000.i2s-dummy_codec hdmiin-dc-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
MP3
wget https://file-examples.com/storage/fe7f2d366f62febc79635e7/2017/11/file_example_MP3_5MG.mp3
mpg123 file_example_MP3_5MG.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
version 1.25.13; written and copyright by Michael Hipp and others
free software (LGPL) without any warranty but with best wishes
Terminal control enabled, press 'h' for listing of keys and functions.
Playing MPEG stream 1 of 1: file_example_MP3_5MG.mp3 ...
MPEG 1.0 L III cbr320 44100 stereo
Title: Impact Moderato Artist: Kevin MacLeod
Album: YouTube Audio Library
Genre: Cinematic
[2:12] Decoding of file_example_MP3_5MG.mp3 finished.
AC3 (Dolby)
wget https://www.paolofiorani.it/TEST%20Audio/Ac3%20Dolby%20Digital%205.1Ch%20Sound%20Test.avi
ffplay -loop 2 -i Ac3\ Dolby\ Digital\ 5.1Ch\ Sound\ Test.avi
ffplay version git-2022-05-25-73d7bc2 Copyright (c) 2003-2021 the FFmpeg developers
built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
configuration: --prefix=/usr --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-decoder=h264_v4l2m2m --disable-decoder=vp8_v4l2m2m --disable-decoder=mpeg2_v4l2m2m --disable-decoder=mpeg4_v4l2m2m --disable-libxvid --disable-libx264 --disable-libx265 --enable-librga --enable-rkmpp --enable-nonfree --enable-gpl --enable-version3 --enable-libmp3lame --enable-libpulse --enable-libv4l2 --enable-libdrm --enable-libxml2 --enable-librtmp --enable-libfreetype --enable-openssl --enable-opengl --enable-libopus --enable-libvorbis --enable-shared --enable-decoder='aac,ac3,flac' --extra-cflags=-I/usr/src/linux-headers-5.10.66-rk3588/include
libavutil 57. 7.100 / 57. 7.100
libavcodec 59. 12.100 / 59. 12.100
libavformat 59. 8.100 / 59. 8.100
libavdevice 59. 0.101 / 59. 0.101
libavfilter 8. 16.100 / 8. 16.100
libswscale 6. 1.100 / 6. 1.100
libswresample 4. 0.100 / 4. 0.100
libpostproc 56. 0.100 / 56. 0.100
arm_release_ver of this libmali is 'g6p0-01eac0', rk_so_ver is '5'.
arm_release_ver of this libmali is 'g6p0-01eac0', rk_so_ver is '5'.
Input #0, avi, from 'Ac3 Dolby Digital 5.1Ch Sound Test.avi':=0/0
Metadata:
software : Nandub v1.0rc2
Duration: 00:00:48.62, start: 0.000000, bitrate: 2473 kb/s
Stream #0:0: Video: msmpeg4v3 (DIV3 / 0x33564944), yuv420p, 576x432, 2013 kb/s, 29.97 fps, 29.97 tbr, 29.97 tbn
Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1(side), fltp, 448 kb/s
48.19 A-V: 0.021 fd= 0 aq= 3KB vq= 96KB sq= 0B f=0/0
aplay
ChannelPlacement.zip (1.7 MB)
aplay -D sysdefault:CARD=2 ChannelPlacement.wav
– SOUND devices
0 [rockchiphdmi0 ]: rockchip-hdmi0 - rockchip-hdmi0
rockchip-hdmi0
1 [rockchiphdmi1 ]: rockchip-hdmi1 - rockchip-hdmi1
rockchip-hdmi1
2 [rockchipes8316 ]: rockchip-es8316 - rockchip-es8316
rockchip-es8316
3 [rockchiphdmiin ]: rockchip_hdmiin - rockchip,hdmiin
rockchip,hdmiin
Does anyone have a good alsa configuration to share?
First alsa config:
Card hw:2 'rockchipes8316'/'rockchip-es8316'
Mixer name : ''
Components : ''
Controls : 36
Simple ctrls : 36
Simple mixer control 'I2STDM Digital Loopback Mode',0
Capabilities: enum
Items: 'Disabled' 'Mode1' 'Mode2' 'Mode2 Swap'
Item0: 'Disabled'
Simple mixer control 'Playback Polarity',0
Capabilities: enum
Items: 'Normal' 'R Invert' 'L Invert' 'L + R Invert'
Item0: 'Normal'
Simple mixer control 'Capture Polarity',0
Capabilities: enum
Items: 'Normal' 'Invert'
Item0: 'Normal'
Simple mixer control 'ADC',0
Capabilities: cvolume cvolume-joined
Capture channels: Mono
Limits: Capture 0 - 192
Mono: Capture 192 [100%] [0.00dB]
Simple mixer control 'ADC Double FS Mode',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'ADC Soft Ramp',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'ALC Capture Attack Time',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 10
Mono: 5 [50%]
Simple mixer control 'ALC Capture Decay Time',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 10
Mono: 0 [0%]
Simple mixer control 'ALC Capture Function',0
Capabilities: enum
Items: 'Off' 'On'
Item0: 'On'
Simple mixer control 'ALC Capture Hold Time',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 10
Mono: 0 [0%]
Simple mixer control 'ALC Capture Max PGA',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 28
Mono: 13 [46%]
Simple mixer control 'ALC Capture Min PGA',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 28
Mono: 8 [29%]
Simple mixer control 'ALC Capture NG',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'ALC Capture NG Threshold',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 31
Mono: 1 [3%]
Simple mixer control 'ALC Capture NG Type',0
Capabilities: enum
Items: 'Constant PGA Gain' 'Mute ADC Output'
Item0: 'Mute ADC Output'
Simple mixer control 'ALC Capture Target',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 10
Mono: 10 [100%]
Simple mixer control 'DAC',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 192
Mono:
Front Left: Playback 152 [79%] [-20.00dB]
Front Right: Playback 152 [79%] [-20.00dB]
Simple mixer control 'DAC Double Fs Mode',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'DAC Notch Filter',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'DAC SRC Mux',0
Capabilities: enum
Items: 'LDATA TO LDAC, RDATA TO RDAC' 'LDATA TO LDAC, LDATA TO RDAC' 'RDATA TO LDAC, RDATA TO RDAC' 'RDATA TO LDAC, LDATA TO RDAC'
Item0: 'LDATA TO LDAC, RDATA TO RDAC'
Simple mixer control 'DAC Soft Ramp Rate',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 4
Mono: 0 [0%]
Simple mixer control 'DAC Stereo Enhancement',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 0 [0%]
Simple mixer control 'DAC Volume Control-LeR',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 1
Mono: 0 [0%]
Simple mixer control 'Differential Mux',0
Capabilities: enum
Items: 'lin1-rin1' 'lin2-rin2' 'lin1-rin1 with 20db Boost' 'lin2-rin2 with 20db Boost'
Item0: 'lin1-rin1'
Simple mixer control 'Digital Mic Mux',0
Capabilities: enum
Items: 'dmic disable' 'dmic data at high level' 'dmic data at low level'
Item0: 'dmic disable'
Simple mixer control 'Enable DAC Soft Ramp',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'HP',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 4
Mono:
Front Left: Playback 4 [100%]
Front Right: Playback 4 [100%]
Simple mixer control 'HPMixer Gain',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 7
Front Left: 0 [0%]
Front Right: 0 [0%]
Simple mixer control 'Input PGA',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 8
Mono: 10 [125%]
Simple mixer control 'LLIN',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left DAC',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Hp mux',0
Capabilities: enum
Items: 'lin1-rin1' 'lin2-rin2' 'lin-rin with Boost' 'lin-rin with Boost and PGA'
Item0: 'lin1-rin1'
Simple mixer control 'MIC Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'RLIN',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right DAC',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Hp mux',0
Capabilities: enum
Items: 'lin1-rin1' 'lin2-rin2' 'lin-rin with Boost' 'lin-rin with Boost and PGA'
Item0: 'lin1-rin1'
I am using PulseAudio, changed alsamixer, now sounds is much better for MP3.
Here is my alsa:
asound.state.zip (1.6 KB)
pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 33
Server Protocol Version: 33
Is Local: yes
Client Index: 7
Tile Size: 65472
User Name: rock
Host Name: rock5b
Server Name: pulseaudio
Server Version: 13.99.1
Default Sample Specification: s16le 2ch 44100Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.platform-es8316-sound.stereo-fallback
Default Source: alsa_input.platform-es8316-sound.stereo-fallback
Cookie: 90c3:465f
Can you use PipeWire instead of PulseAudio?
I really only have experience with Gentoo on x86_64, and had all sorts of audio issues with PA, but switching to PW fixed everything.
Is PipeWire available on Ubuntu for arm64?
Yes, i will try it.
https://packages.ubuntu.com/focal/arm64/pipewire/filelist
Not sure i followed the recipe correctly (they all use ppa), looks like i missed something:
sudo apt-get update
sudo apt install pipewire (pipewire-audio-client-libraries not available)
Get:1 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 libpipewire-0.2-1 arm64 0.2.7-1 [81.4 kB]
Get:2 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 pipewire arm64 0.2.7-1 [205 kB]
Fetched 286 kB in 2s (132 kB/s)
Selecting previously unselected package libpipewire-0.2-1:arm64.
(Reading database ... 128942 files and directories currently installed.)
Preparing to unpack .../libpipewire-0.2-1_0.2.7-1_arm64.deb ...
Unpacking libpipewire-0.2-1:arm64 (0.2.7-1) ...
Selecting previously unselected package pipewire.
Preparing to unpack .../pipewire_0.2.7-1_arm64.deb ...
Unpacking pipewire (0.2.7-1) ...
Setting up libpipewire-0.2-1:arm64 (0.2.7-1) ...
Setting up pipewire (0.2.7-1) ...
Created symlink /etc/systemd/user/default.target.wants/pipewire.service → /usr/lib/systemd/user/pipewire.service.
Created symlink /etc/systemd/user/sockets.target.wants/pipewire.socket → /usr/lib/systemd/user/pipewire.socket.
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.9) ...
systemctl --user --now disable pulseaudio.service pulseaudio.socket
systemctl --user mask pulseaudio
systemctl --user daemon-reload
systemctl --user --now enable pipewire (pipewire-pulse not available)
systemctl --user status pipewire.service
● pipewire.service - Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; vendor pr>
Active: active (running) since Sun 2022-08-21 10:38:02 -03; 12min ago
TriggeredBy: ● pipewire.socket
Main PID: 690 (pipewire)
CGroup: /user.slice/user-1000.slice/user@1000.service/pipewire.service
└─690 /usr/bin/pipewire
pactl info
Connection failure: Connection refused
pa_context_connect() failed: Connection refused
I want to know what desktop environment is this with such a low memory footprint
我想知道内存占用这么低的桌面环境是什么
Same symptom as overwriting the rootfs with /dev/uramdom
. Everything slows down and then the install freezes/crashes (I sometimes do this for fun when phasing out server hardware).
I would believe you experienced a broken eMMC module where the flash controller did weird things. Most probably neither related to board nor software.