update userpatches/overlay and README.md

main
Links 2022-04-06 18:00:57 +02:00
rodzic 6b60146953
commit fd36d48f3e
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 68FB9F01C0C482FC
9 zmienionych plików z 153 dodań i 10 usunięć

Wyświetl plik

@ -9,10 +9,21 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
- SD card updade image
- access to the x6100 (or a way to extract files form the update image)
# VNC
after armbian init setup, a VNC server will be running on port 5900 powerd by lightdm.
Note:
the bad build in WiFi Antenna can make a VNC connection Instable very fast.
# WiFi / Network config
on the comand line use `nmtui` or use the Network Manager UI after login.
# build steps
## extract uboot:
```
```sh
dd if=X6100-sdcard-20220219.img of=uboot_sdcard.bin bs=1024 skip=8 count=512 seek=0
```
@ -53,7 +64,7 @@ example:
## build armbian:
```
```sh
git clone https://github.com/armbian/build --depth=1
cp -r userpatches/ build/
@ -64,12 +75,12 @@ cd build
## install on sdcard
install armbian:
```
```sh
dd if=output/images/Armbian_22.05.0-trunk_Lime-a33_buster_current_5.15.32_xfce_desktop.img of=/dev/<SDCARD>
```
install uboot:
```
```sh
dd if=uboot_sdcard.bin of=/dev/<SDCARD> bs=1024 seek=8
```
@ -83,21 +94,33 @@ change:
/userpatches/overlay/boot.cmd
from:
```
```sh
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}/zImage_org
```
to:
```
```sh
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}/zImage
```
if changed live on the x6100 rebuild:
```sh
mkimage -C none -A arm -T script -d boot.cmd boot.scr
```
# starting radio UI
Using ssh or serial:
```
```sh
/etc/init.d/lightdm stop
/root/chroot_onboard.sh
/etc/init.d/S99userappstart start
```
# working with the device tree
```sh
dtc -I dtb -O dts sun8i-r16-x6100.dtb > sun8i-r16-x6100.dts
dtc -I dts -O dtb sun8i-r16-x6100.dts > sun8i-r16-x6100.dtb
```

Wyświetl plik

@ -18,10 +18,15 @@ BOARD=$3
BUILD_DESKTOP=$4
Main() {
# chrony requires seccomp (which the stock kernel does not have)
apt-get -y remove chrony
systemctl enable systemd-timesyncd.service
touch /root/.no_rootfs_resize
apt-get install -y wsjtx tightvncserver xtightvncserver gdb-minimal gdbserver strace
apt-get install -y nano htop curl ncdu gpg dtrx localepurge mtr-tiny screen iotop git wget net-tools etckeeper sudo file bash-completion psmisc dnsutils software-properties-common apt-transport-https xauth aptitude fzf
cp /tmp/overlay/locale.nopurge /etc/locale.nopurge
apt-get install -y wsjtx tightvncserver gdb-minimal gdbserver strace e2fsprogs xfce4-battery-plugin libqt5sql5-sqlite
apt-get install -y nano htop curl ncdu gpg dtrx localepurge mtr-tiny screen iotop git wget net-tools etckeeper sudo file bash-completion psmisc dnsutils software-properties-common apt-transport-https xauth aptitude fzf rust-bat
cp /tmp/overlay/extracted/sun8i-r16-x6100.dtb /boot/
cp /tmp/overlay/extracted/sun8i-r16-x6100.dts /boot/
@ -38,6 +43,7 @@ Main() {
systemctl enable gpio_setup.service
cp -r /tmp/overlay/extracted/modules/* /lib/modules/
cp -r /tmp/overlay/etc/* /etc/
case $RELEASE in
stretch)

Wyświetl plik

@ -0,0 +1,86 @@
# direct mix for pcm playback
# aplay -D mixplayback xxx.wav
pcm.mixout {
type dmix
ipc_key 1024
slave {
# slave PCM name
pcm "hw:0,0"
# PCM params
format S16_LE # STR
rate 16000 # INT
channels 2 # INT
# stream params,buffer_size=period x period_size
periods 100 # INT,when buffer_size or buffer_time is not specified
period_size 1024 # INT,in frames,3 times than app need
# optional params
# period_time 0 # INT,in usec
# buffer_time 0 # INT,in usec
# buffer_size 65536 #INT,in frames
}
bindings {
0 0 # from 0 -> 0
1 1 # from 1 -> 1
}
# slowptr BOOL # slow but more precise pointer updates
}
# dsnoop for capture
# arecord -D mixcapture test.wav
pcm.mixin {
type dsnoop
ipc_key 1025 # must be unique for all dmix plugins!!!!
# ipc_key_add_uid yes # no need for embedded system
slave {
# slave PCM name
pcm "hw:0,0"
# PCM params
format S16_LE # STR
rate 16000 # INT
channels 2 # INT
# stream params,buffer_size=period x period_size
periods 100 # INT,when buffer_size or buffer_time is not specified
period_size 1024 # INT,in frames,3 times than app need
# optional params
# period_time 0 # INT,in usec
# buffer_time 0 # INT,in usec
# buffer_size 65536 #INT,in frames
}
bindings {
0 0 # from 0 -> 0
1 1 # from 1 -> 1
}
}
# pcm plug for playback
pcm.mixplayback {
type plug
slave.pcm "mixout"
# A hint is required for listing the device in some GUIs
hint {
show on
description "X6100 playback mixer"
}
}
# pcm plug for capture
pcm.mixcapture {
type plug
slave.pcm "mixin"
# A hint is required for listing the device in some GUIs
hint {
show on
description "X6100 capture mixer"
}
}
ctl.mixer0 {
type hw
card 0
}

Wyświetl plik

@ -0,0 +1,2 @@
30 3 * * 0 root test -e /run/systemd/system || SERVICE_MODE=1 /usr/lib/e2fsprogs/e2scrub_all_cron
10 3 * * * root test -e /run/systemd/system || SERVICE_MODE=1 /sbin/e2scrub_all -A -r

Wyświetl plik

@ -0,0 +1 @@
x6100

Wyświetl plik

@ -0,0 +1,6 @@
[VNCServer]
enabled=true
port=5900
width=1280
height=720
depth=8

Wyświetl plik

@ -0,0 +1,2 @@
[Seat:seat*]
display-setup-script=xrandr -o lef

Wyświetl plik

@ -0,0 +1,17 @@
KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"
# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"
# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"
# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}", \
RUN+="/bin/touch /tmp/mounted_dev}", RUN+="/bin/echo ${%E{dir_name} > /tmp/mounted_dev}"
# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}", RUN+="/bin/echo usb remove."
# Exit
LABEL="media_by_label_auto_mount_end"