Giter Club home page Giter Club logo

miniarch's Introduction

MiniArch

Donate for new HW support

Note: Last years I funded my semi-lab with 15+ various TVboxes by my private money and decided to stop investing my private money - effectively just (and seems only) - to increase sells of tv box vendors.

If you want me to work on various issues or add new hardware support - pls consider donation to help me get required hardware to work on. Please note that this will also increase my satisfaction from - currently free of charge - work on minimyth2/miniarch.

What it is

MiniArch is ArchLinux ARM set of SD card images offering plug&run ArchLinux on ARM SBC/TVbox. It is very minimal ArchLinux distribution with bootloader/Linux kernel maximally supporting given TVBox/SBC then offering https://wiki.archlinux.org

Currently supported (and tested) SBC/TVboxes

Why MiniArch?

-Installing ArchLinux ARM on ARM SBC is currently multistep process (example)

MiniArch goal is to simplify above whole process to:

  1. Download of MiniArch SD card image prepared for your SBC/TVbox
  2. burn image on SD card
  3. insert SD Card into SBC/TVbox
  4. power-on
  5. do update (see Quick Start below)
  6. enjoy full ArchLinux capabilities

-Adding to ArchLinux ARM ecosystem MiniMyth2 developed support for SBC/TVboxes including hardware video decode capabilities (with following results)

Quick Start

Requirements:

  1. Make sure your box is connected to Eth, has IP and Internet access

Install (when You will stay with SD Card) :

Note: pls do all below steeps in exact order like below. Otherwise install will fail!

  1. Download SD card Image
  2. burn image on SD card
  3. insert SD Card into SBC/TVbox
  4. power-on
  5. do update
    • local login as root:root (ssh user:pass are alarm:alarm)
    • type 'start'
      • select (2) to init keyring and key
    • type 'start'
      • select (1) to do full update
      • reboot
    • type 'start'
      • select (3) to resize root partition to full possible size
    • type 'start'
      • select (4) to update MiniArch artefacts
      • reboot
  6. enjoy (i.e. install https://arm.endeavouros.com by typing 'start' then (5) or setup ArchLinux OS acordingly to https://wiki.archlinux.org/title/Installation_guide#Time_zone)

Install (when You will use eMMC as target) :

Note: pls do all below steeps in exact order like below. Otherwise install will fail!

  1. Download SD card Image
  2. burn image on SD card
  3. insert SD Card into SBC/TVbox
  4. power-on
  5. do update
    • local login as root:root (ssh user:pass are alarm:alarm)
    • type 'start'
      • select (2) to init keyring and key
    • type 'start'
      • select (1) to do full update
      • reboot
    • type 'start'
      • select (4) to update MiniArch artefacts
      • reboot
  6. transfer system to eMMC
    • type 'start'
      • select (0)
      • when script ends with success, remove SD Card and reboot
  7. Continue install
    • type 'start'
      • select (3) to resize root partition to full possible size
      • reboot
  8. enjoy (i.e. install https://arm.endeavouros.com by typing 'start' then (5) or setup ArchLinux OS acordingly to https://wiki.archlinux.org/title/Installation_guide#Time_zone)

NOTE: do not skip step (update MiniArch artefacts) as this step - beside updating MiniArch components - also fixes bugs/issues/show stoppers in Generic AArch64 ArchLinux ARM code NOTE2: eMMC install is experimental feature and is not stable (yet)

Difference between ArchLinux ARM and MiniArch

Currently automated MiniArch build process is following:

  1. cross building current mainline Linux kernel and firmware with MiniMyth2 applied patches to offer support of SBC/TVboxes
  2. cross-building selected SBC/TVbox bootloader files
  3. cross-building ArchLinux kernel and firmware PKGs from p.1
  4. downloading ArchLinux ARM Generic AArch64 ArchLinux ARM rootfs
  5. unpacking rootfs from p.4 on x86 host
  6. cross-installing ArchLinux kernel and firmware PKGs generated in p.3 on unpacked rootfs from p.5 on x86 host
  7. cross-regenrating initramfs on rootfs from p.6
  8. packing above rootfs to Generic AArch64 Installation archive for upload to MiniArch github
  9. preparing SD card image with updated rootfs and bootloader prepared in p.2 and p.7
  10. xz packing SD card image for upload to MiniArch github

In above context, we may say: MiniArch is minimally required changed ArchLinux ARM to boot and work on Your box and it offers maximum compatibility with ArchLinux ARM (except kernel modules).

Updates

MiniArch specific components:

  • linux-aarch64
  • linux-aarch64-headers
  • linux-aarch64-api-headers
  • linux-firmware
  • miniarch-meta

are blocked in ArchLinux ARM pacman official repo updates and are separately offered in dedicated repo called MiniArch

Any MiniMyth2 kernel update will also produce updated above PKGs.

You can update MiniArch with kernel/firmware by:

  • login as root:root
  • type 'start'
    • select (4) to do "update MiniArch artefacts"

Happy burning!

miniarch's People

Contributors

warpme avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

miniarch's Issues

screen stuck at boot

@warpme
when using miniarch, it gets stuck according to the error below:

platform regulatory.0: Falling back to sysfs fallback for: regulatory.db
FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
OK [0m] Mounted /boot [0m.
OK [0m] Started Network Configuration
OK Reached target Local File Systems [0m.
Starting Rebuild Dynamic Linker Cache [0m...
Starting Create Volatile Files and Directories [0m...
In the serial it gets stuck here as per the text above
On the screen there are only images of the penguin
How can I fix it? i used this image : MiniArch-20230212-6.4.3-board-h616.tanix_tx6s_axp313-SD-Image.img.xz

xr819 support

The link to the supported devices implies that an H6 with xr819 should work, however I only see the wired connection. I see the frmware but no xradio modules. Is there a different module I should be loading?

Cannot enable ufw. Modules missing once again?

Installed ufw through pacman. Running sudo ufw enable throws the following.

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
ERROR: problem running ufw-init
Warning: Extension conntrack revision 0 not supported, missing kernel module?
Warning: Extension conntrack is not supported, missing kernel module?
iptables-restore: line 4 failed
Warning: Extension conntrack revision 0 not supported, missing kernel module?
Warning: Extension conntrack is not supported, missing kernel module?
Warning: Extension conntrack is not supported, missing kernel module?
Warning: Extension conntrack is not supported, missing kernel module?
Warning: Extension conntrack is not supported, missing kernel module?
Warning: Extension addrtype revision 0 not supported, missing kernel module?
Warning: Extension addrtype is not supported, missing kernel module?
Warning: Extension addrtype is not supported, missing kernel module?
Warning: Extension limit revision 0 not supported, missing kernel module?
iptables-restore: line 75 failed
Warning: Extension addrtype revision 0 not supported, missing kernel module?
iptables-restore: line 30 failed
Warning: Extension LOG revision 0 not supported, missing kernel module?
Warning: Extension limit revision 0 not supported, missing kernel module?
Warning: Extension conntrack revision 0 not supported, missing kernel module?
iptables-restore: line 36 failed

Problem running '/etc/ufw/before.rules'
Problem running '/etc/ufw/after.rules'
Problem running '/etc/ufw/user.rules'

Afterwards can't connect via SSH. Needs a restart. SSH is already allowed in ufw rules.

RTL8211F on X96 x6 not working properly

Hi!

the ethernet controller on the x96 doesnt really work. interestingly enough he gets a ipv6 address that doesnt work. very weird.
works fine on android.

any hints?

MPV no hardware decode Allwinner H616

This project looks really interesting. I was manually picking patches from your minimyth2 project as I was trying to create my own custom image that supports hardware decode using mpv.

I've managed to successfully do this for the H6, however the H616 is proving much more difficult. Everything looks to be working okay, except the video is a glitchy green mess. When you released miniarch I was hoping it would provide a shortcut or some proof that mpv and hardware decode was possible on the H616.

Unfortunately installing MPV in miniarch using pacman gets me a version with FFmpeg 5.1.2 instead of your patched 4.4.1 version which does not support h264-drm

Is it possible to somehow ship your patched version of FFmpeg in miniarch?

Thank you for all your work, it has been invaluable in helping me get closer to my goal of working hardware decode using mpv on the H616.

Don't Install on eMMC

`
--- MiniMyth2 to eMMC installer v2.0 (c)Piotr Oniszczuk ---

/usr/local/bin/install-on-emmc: line 98: warning: command substitution: ignored null byte in input
Ooo...you are running tanix,tx6sallwinner,sun50i-h616
Allwinner detected...Good!

SDcard device : mmcblk0
eMMC device : mmcblk2
System booted from : mmcblk0p
ERROR: can't determine usage on mmcblk0p! Exiting `

[Request] CAN Module

Hi, I'm trying get Klipper/Mainsail control my printer, but can't configure CAN network(STM32F072 UCAN).

Getting this error with modprobe:
modprobe: FATAL: Module can not found in directory /lib/modules/6.9.1

I'm too n00b to know what to do, has an easy fix?
Using MiniArch-20231112-6.7.4-board-h313.x96_q_lpddr3-SD-Image

Thanks in advance!

I seem to have missed a step - no console

I'm, trying to test this on a Raspbery Pi 4 4GB. I downloaded MiniArch-20230106-6.1.5-board-sm1.tanix_tx5_plus-board-rpi34.mainline64-SD-Image.img.xz and flashed it to a microSD card using the Raspberry Pi Imager 1.7.2.

I can see the Uboot text on my Monitor but after the message Starting Kernel, the Monitor goes blank and I have not idea what to do next.

Ethernet interface not available

Hi,

I have a X96Q box and I was able to run the "MiniArch-20230212-6.3.5-board-h313.x96_q_lpddr3-SD-Image.img.xz" whitout any initial problem. It boots correctly but when I check the available network interfaces (ifconfig), I only have the loopback and the wifi interfaces available. The ethernet interface is not available.

Any ideia why? Am I missing something?
IMG_20230904_233514

Thank you very much.

Can't install desktop environment - X96Q

Hello,
I'm glad that there is finally support for this TV box and I give it a try.
I'm installing on SD card and all good until last step - install https://arm.endeavouros.com/ by typing 'start' then (5)
Trying to follow the instruction but it can't finish successful installation:

Installing EndeavourOS Base Addons...
./endeavour-ARM-install-V2.7.sh: line 111: eos-packagelist: command not found
error: argument '-' specified with empty stdin

Installing EndeavourOS Base Addons OK

...

Creating ll alias...
Creating ll alias OK
./endeavour-ARM-install-V2.7.sh: line 909: eos-rankmirrors: command not found
error: could not register 'endeavouros' database (database already registered)

...

nstalling XFCE4 ...
./endeavour-ARM-install-V2.7.sh: line 653: eos-packagelist: command not found
error: argument '-' specified with empty stdin

...

Building external kernel module for USB to I2C adapter

Hi,

Thank for your work, miniarch on Vontar H618 semms to work OK.

I want to compile kernel driver for USB to I2C adapter based on ch-341 chip:
https://github.com/frank-zago/ch341-i2c-spi-gpio
So I need only linux kernel headers, not whole source three.
And it looks like pacman offers only linux-aarch64-headers-6.2.10-1

Is there any way to obtain linux headers for current kernel?
linux alarm 6.4.4 #1 SMP PREEMPT Sat Jul 22 15:43:59 CEST 2023 aarch64 GNU/Linux

P.S. I want to build on-box because my main x86 bos is Fedora based and I really want to avoid cross-build cross-arch and cross-distros.

Can't run Docker either. Modules missing?

Running sudo systemctl start docker.service gives

Job for docker.service failed because the control process exited with er
ror code.
See "systemctl status docker.service" and "journalctl -xeu docker.servic
e" for details.

systemctl status docker.service :

x docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; preset: disabled)
     Active: failed (Result: exit-code) since Wed 2023-05-10 13:10:22 UTC; 11min ago
TriggeredBy: x docker.socket
       Docs: https://docs.docker.com
    Process: 1514 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.soc>   Main PID: 1514 (code=exited, status=1/FAILURE)
        CPU: 1.030s

May 10 13:10:19 archserver systemd[1]: docker.service: Consumed 1.030s CPU time.
May 10 13:10:22 archserver systemd[1]: docker.service: Scheduled restart job, restart counter is >May 10 13:10:22 archserver systemd[1]: Stopped Docker Application Container Engine.
May 10 13:10:22 archserver systemd[1]: docker.service: Consumed 1.030s CPU time.
May 10 13:10:22 archserver systemd[1]: docker.service: Start request repeated too quickly.
May 10 13:10:22 archserver systemd[1]: docker.service: Failed with result 'exit-code'.
May 10 13:10:22 archserver systemd[1]: Failed to start Docker Application Container Engine.
lines 1-16/16 (END)

Running dockerd gives the following:

INFO[2023-05-10T13:23:59.597759344Z] Starting up
INFO[2023-05-10T13:23:59.733120628Z] [graphdriver] using prior storage driver: overlay2
INFO[2023-05-10T13:23:59.744256566Z] Loading containers: start.
WARN[2023-05-10T13:23:59.761449740Z] Running modprobe bridge br_netfilter failed with message: modprobe: WARNING: Module bridge not found in directory /lib/modules/6.3.1
modprobe: WARNING: Module br_netfilter not found in directory /lib/modules/6.3.1
, error: exit status 1
ERRO[2023-05-10T13:24:00.080358735Z] Failed to get event                           error="rpc error: code = Unavailable desc = error reading from server: read unix @->/run/containerd/containerd.sock: use of closed network connection" module=libcontainerd namespace=moby
INFO[2023-05-10T13:24:00.080724690Z] Waiting for containerd to be ready to restart event processing  module=libcontainerd namespace=moby
WARN[2023-05-10T13:24:00.081146603Z] Error while testing if containerd API is ready  error="rpc error: code = Canceled desc = grpc: the client connection is closing"
INFO[2023-05-10T13:24:00.082726588Z] stopping event stream following graceful shutdown  error="context canceled" module=libcontainerd namespace=moby
failed to start daemon: Error initializing network controller: Error creating default "bridge" network: package not installed

tanix tx6 install or migrate to emmc

Hi mate ,
First of all thank you for this awesome project 🙏 I just found this and it works pretty ok on my tx6 , but I want to know if there is a way to install or migrate it from sd to internal emmc ? maybe a script like what armbian uses to install to sata-nand-emmc storages ?? 🤔
thanks .

H313 , Only 2GB seen by system (solved: fake specs / fake "bios" reporting)

Anwol Q86x (H313) has 8 ram chips (4 on side A and other 4 on side B of PCB ), every chip is marked "SEC XXX hyh9 k4b2g0446c" , where XXX changes
They should be by Samsung.

according to Samsung datasheet "2Gb C-die DDR3L SDRAM, Ver.1.31 November 2010"
(https://www.datasheets360.com/pdf/2129653661416128875 , page 5 and following)

they are DDR3L-1333(667mhz) SDRAM sodimm

and, as of bank organization :
[ Table 2 ]
2Gb DDR3 C-die Speed bins
Organization -DDR3L-1066 (7-7-7) ---DDR3L-1333 (9-9-9) -----
512Mx4 ------K4B2G0446C-HYF8 ------K4B2G0446C-HYH9

512Mx4 is 2Gb, so 8 of these should be 4Gb. (Please, confirm XD )

But my system says
[root@alarm sys]# cat /proc/meminfo
MemTotal: 2030724 kB

possible causes :

  1. one or more memory chips are "weak" , they can't work at their nominal frequency/timing, bringing down the whole 4 chips bank (2Gb) . (Can I check the working frequency of my ram?)

  2. fake Samsung chips (Can I check how many ram modules does the system see?)

  3. ram limit somewhere , for compatibility/stability reasons
    (according to armbian forums something similar happened with Alwinner H6, which had problems with more than 3gb ram.
    H6 and H616/H313 are very similar, but I didn't read anywhere that H313 has the same 3gb problem. Some armbian user found a workaround for this, I will see)

Helping with install to eMMC

Hi @warpme,
Insane project you have here. I got two X96Q LPDDR3 boxes booted off of your image, and also tagged you on your minimyth2 repo, but wanted to know if I could help with figuring out how to install to the internal eMMC storage. I ended up using fdisk on one of the boxes, cloning the disk layout, and getting the H313 to recognize the internal storage as data, HOWEVER, I was unable to migrate the boot partition. Any way I could help here? Would be great to use these as IO-less RPi's (IK they are coming back in stock, but FOSS on a $10 device is crazy)

Ethernet port on x96q LPDDR3

Hello
I must thank you , your work is the only savior that let me run linux on my android box x96q.
The downside is the ethernet port isn't detected neither wifi.
I am using an usb2ethernet adapter.
Any chances or guide to add support for built-in network adapter ?
Thank you very much.

recompile u-boot miniarch with dram parametres

how to recompile u-boot with defconfig dram parameters like:

CONFIG_DRAM_SUN50I_H616_DX_ODT=0x08080808
CONFIG_DRAM_SUN50I_H616_DX_DRI=0x0e0e0e0e
CONFIG_DRAM_SUN50I_H616_CA_DRI=0x0e0e
CONFIG_DRAM_SUN50I_H616_TPR10=0xf83438
CONFIG_MACH_SUN50I_H616=y
CONFIG_SUNXI_DRAM_LPDDR3=y
CONFIG_SUNXI_DRAM_H616_LPDDR3=y

because if i use denx (https://source.denx.de/u-boot/u-boot/tree/master) works, but no ethernet found on u-boot, and I read on other issues that you made a change in u-boot so that ethernet could work on h616 box tv , I used your dtbs and defconfig in denx but they didn't work,
I tried using u-boot from (https://github.com/hexdump0815/u-boot-misc/) but it doesn't seem to support DRAM parameters. Denx works perfectly with DRAM parameters but not Ethernet

several issues on orange pi zero 3

I tried the orange pi zero 3 image on my opizero3 4GB and I got several issues:

1.- First boot seemed to only work through the serial port. I was able to follow the Quick start and at some point I got the login prompt also on my monitor.
2. The screen resolution on the monitor seems to be too high. The font is extremely small. Maybe it is picking up the native resolution of the monitor, which is not the best one for a console...
3. Endeavoros was not working after installing it through option 5 of the menu. I had to install lightdm and enable it, then I installed lightdm-gtk-greeter and xfce4-goodies. I edited /usr/share/xsessions/default.desktop with Exec=/etc/lightdm/Xsession
and I managed to get the greeter, but after entering the password It did not start anything else. It just showed the greeter again.
4.- Only the main USB port seems to work. The ones in the expansion card do not seem to be recognized.

FUSE Module Missing? Can't mount NTFS!

I tried mounting external HDD. First installed ntfs-3g, then used the mount command which gave the following error.
modprobe: FATAL: Module fuse not found in directory /lib/modules/6.3.1
fuse: device not found, try 'modprobe fuse' first

Doing modprobe fuse also gave the same message.
modprobe: FATAL: Module fuse not found in directory /lib/modules/6.3.1

How do I build the kernel?

I need to enable ACM support, however I am unable to get the kernel to build. What am I doing wrong?

[derek@archradio linux-aarch64]$ sudo make KCONFIG_CONFIG=~/running.config
  SYNC    include/config/auto.conf
  HOSTCC  scripts/kconfig/conf.o
  HOSTLD  scripts/kconfig/conf
drivers/ras/Kconfig:34: can't open file "arch/x86/ras/Kconfig"
make[2]: *** [scripts/kconfig/Makefile:77: syncconfig] Error 1
make[1]: *** [Makefile:697: syncconfig] Error 2
make: *** [Makefile:798: include/config/auto.conf] Error 2
make: *** [include/config/auto.conf] Deleting file 'include/generated/rustc_cfg'
make: *** [include/config/auto.conf] Deleting file 'include/generated/autoconf.h'

Alwinner h313/h616 : thermal zones report (fixed) ; cpu freq scaling (fixed) & reporting (stuck to max; not caused by miniarch )

My tvbox specs and miniarch installation procedure are in issue #9

I put 2 different issues here , since they could be connected

  1. thermal sensors need calibration :
    Before installing miniarch I did some HW tests under android 10 (default firmware for my box) using CPUZ and another software :

under Android, with cpuload around 30%:
cpu temp reported by system is about 60°C, box seems warm.
60°C seems compatible with box warmth

After installing miniarch 202302, with cpuload at 5%:
cpu heatsink is almost cold, but system reports very high temperatures

cat /sys/devices/virtual/thermal/thermal_zone0/temp
84582 (84,58°C)
cat /sys/devices/virtual/thermal/thermal_zone1/temp
85307
cat /sys/devices/virtual/thermal/thermal_zone2/temp
84743
cat /sys/devices/virtual/thermal/thermal_zone3/temp
85791
( the four "zones" are 0=CPU, 1=GPU, 2=RAM , 3=something else (XD) )

  1. cpu scaling/governor seems broken

I did this:
governor set to "performance"

install s-tui:
in s-tui's "monitoring mode" (about 5% cpu used) look at cpu's frequency :
CPUfreq moves from 480mhz to about 1000mhz, seems normal

BUT in s-tui's "test mode" (over 95% cpu used) cpu is stuck to 480mhz...
when high load stops... cpu frequency moves up again. Seems no sense.

This strange behaviour is also confirmed by running an intensive CPU task in a terminal window (try a command like "7z b") while monitoring with s-tui.
Installing Endeavour (headless) doesn't fix this.

X96-Q with AXP313A chip

I have an X96Q TV box, but I'm unable to boot either the h313.x96_q-SD-Image.img.xz or the h313.x96_q_lpddr3-SD-Image.img.xz on it. Upon monitoring the serial output, both images become stuck during boot startup while recognizing the DRam. I've managed to boot the h616.tanix_tx6s_axp313-SD-Image.img.xz, but it encounters a crash at:

[1.358424] Loading compiled-in X.509 certificates
[1.400410] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
[1.426773] sun50i-h616-pinctrl 300b000.pinctrl: supply vcc-ph not found, using dummy regulator
[1.440861] sun50i-h616-pinctrl 300b000.pinctrl: supply vcc-pg not found, using dummy regulator
[1.465410] usb_phy_generic usb_phy_generic.1.auto: dummy supplies not allowed for exclusive requests
[1.874901] sun50i-cpufreq-nvmem: will use speed0 CPU OPPs

Would it be possible for you to create an image for h313 with axp313 instead of axp305?

Tanix Tx6s can not connect network

Currently, I use new version of MiniArch-20230212-6.3.5-board-h616.tanix_tx6s_axp313-SD-Image.img.xz and I can not use network by cable smartphone, ethernet and wifi but before that I use MiniArch-20230212-6.2.10-board-h616.tanix_tx6s_axp313-SD-Image.img.xz (Link removed ) and I still can use cable smartphone to connect network
Anybody help me create file backup of img MiniArch-20230212-6.3.5-board-h616.tanix_tx6s_axp313-SD-Image.img.xz. Thanks so much :((

Sorry, my English may be bad for writing.

Need package tx6s h616s axp313 of version 20230531

Hi
Currently, I use ArchLinux v20231112 but I can not use network and it can not fast run archlinux. Sometimes it accepts sometimes it doesn't. So I hope anybody send me a package of miniarch with version 20230531. I can not download it because the link is not exist. Thanks

Link old package: https://github.com/warpme/miniarch/releases/download/20230531-6.3.5-g66a40f5ba/MiniArch-20230212-6.4.3-board-h616.tanix_tx6s_axp313-SD-Image.img.xz
Link old issues: #18

@warpme please help me :(

miniarch.mooo.com is timeouting on http requests

I apologize in advance if this is not the correct forum to report this kind of things.

ping miniarch.mooo.com
PING miniarch.mooo.com (84.10.100.139) 56(84) bytes of data.
64 bytes from 84-10-100-139.static.chello.pl (84.10.100.139): icmp_seq=1 ttl=46 time=168 ms
64 bytes from 84-10-100-139.static.chello.pl (84.10.100.139): icmp_seq=2 ttl=46 time=165 ms

But:
miniarch.db failed to download
error: failed retrieving file 'miniarch.db' from miniarch.mooo.com : Failed to connect to miniarch.mooo.com port 80 after 10002 ms: Timeout was reached

Initial update fails following 'Quick Start' instructions

Following the 'Quick Start' instructions results in an error when doing initial update.

(83/83) checking keys in keyring                   [######################] 100%
warning: Public keyring not found; have you run 'pacman-key --init'?
downloading required keys...
error: keyring is not writable
error: required key missing from keyring
error: failed to commit transaction (unexpected error)
Errors occurred, no packages were upgraded.
Packages to keep:
  All locally installed packages

Cache directory: /var/cache/pacman/pkg/
:: Do you want to remove all other packages from cache? [Y/n] 

Step to reproduce

  1. Download SD card Image
  2. burn image on SD card
    insert SD Card into SBC/TVbox
  3. power-on
  4. login as root:root
  5. type 'start'
  6. select (1) to do full update

Maybe reverse the order of steps 1 and 2 in point 5 (do update) of the Quick Start?

x96 mini - compatibility question

Hello,

I recently ordered an x96 mini and it seems to have an Allwinner H313 SoC and a SKhynix
H9TKNNN2G8A ram chips. I was wondering if any of the pre-built versions you made are compatible with it?

Here is a picture of the board just in case:

IMG_20240613_175452

IMG_20240613_182219

miniarch 20230212 h313.x96_q-SD on Andowl Q96x (H313, 2GB/16GB)

Hello,
Presenting my system and my first Miniarch install:

System :
cardboard packaging says "Andowl box Q96X" ,"4Gb RAM, 64Gb Rom, Android 12", but

  • RAM is only 2GBytes
  • rom is only 16Gb (see after)
  • HWinfo says "Android 12" it's a fake android 10.

Ports (left to right) : 12volt in, optical spdif, hdmi, ethernet, AV minijack(with button inside) / 2xUSB, ; microsd,
Blue, Square PCB
PCB side A:

  • pcb marked X88PROA-H313-D4-V1.0 2020-11-20
  • cpu : h313(?, not verified) covered by a small heatsink
  • eMMc 5.0 16gb samsung klmag2gend-b031
  • 4 samsung modules SEC XXX hyh9 k4b2g0446c DDR3-1333(667mhz) SDRAM sodimm (1GByte)
  • AXP305 chip : Power Management IC (PMIC)
  • TF1102 . 2237T chip (brand : ?TC)
  • Wifi chip on SDIO bus: SV6256P (aka South Silicon Valley's SSV6256P), 150 mbps max a/b/g/n,
  • Vacuum Fluorescent Display (VFD) info panel : 4 characters (88:88) 7segments each. Shows "LoAd" while android10 Is loading, then time + On/off + "WIFI" + "LAN"

PCB side B :

  • 4 samsung modules (another 1GB, total 2GB)
  • AIP1628 (driver chip for led panel on sideA, )
  • GND RX TX pinholes
  • CP-FB GP-FB (related to PMIC on side A)

Before installing miniarch I did some HW tests wirh the stock Android 10, using CPUZ and other softwares :
in android, doing very little, cpu temp is quite high (60°C), box seems warm. CPU frequency seems to be always about 1280mhz, RAM & eMMC reported sizes are wrong.

MINIARCH INSTALL :
Downloaded MiniArch-20230212-6.2.11-board-h313.x96_q-SD-Image.img
On Win10pro-64 I used Usbimager 1.0.9 to write .xz image on a old 2GB microsd

Q96X box is off, hdmi cable is attached, nothing else is connected

Put the micro SD in

  • 1st try :
    I kept hidden AV button pressed with toothpick and plug AC adapter while pressing, waited 6 seconds, released toothpick, waited for 30 minutes
    Nothing seems to happen:
    So I disconnected the AC adapter.
    (I don't know if this did something to the bootloader or if it was a required step, but I did it XD)

  • 2nd try
    just plug only AC adapter in
    result :
    Arch Linux 6.2.11 (tty)
    alarm login :

plugged in an HP usb italian keyboard,
login root, password root, start , option 2 (and [enter], or u will wait forever ;DD )

"start", option 1 : lots of errors (i didn't know I needed an internet connection ;D)
plug an ethernet cable in, box obtains everything from my DHCP server
again "start", option 1 : some warnings about versions

" Packages (106) , tot Download size : 71.86Mib , Tot installed size 327,00 Mib, Net upgrade size : 25,27 Mib
Proceed with instal? Y"

installing , (box is almost cold, everything seems going ok.)
some warnings ( server 'gpg agent' is older than us (2.2.36 < 2.2.41)

System asked to reboot : Y
screen went blank and so remained : box was almost cold, I waited 3 hours for an auto-reboot, but nothing. At last I surrendered, and plugged off the AC adapter's plug.

re-plug ACadapter in, miniarch started
did repartitioning (option 3) and updated Miniarch Artefacts

reboot. This time reboot went ok :-))

System seems stable.
CPU performance is similar or better than that under stock android10 ROM.
Heat management is ok.

MAJOR PROBLEMS (Update, most of those have been fixed as of latest update (6.3) ):

  • CPU scaling/governor seems broken (moved to issue #11 ) (fixed with updates.)

  • thermal sensors need calibration :
    CPU's heatsink is almost cold, but system reports 84° (also moved to issue #11 ) (fixed)

  • WIFI chip (sv6256P) is detected on the SDIO bus, and a node is created in the filesystem under "mmc3", but no working driver exists for sv6256P chip under linux kernels >4.4.x (Will not be fixed, too much work)
    more about this wifi chip is in issue #10 .

Minor troubles :

  • sometimes plugging AC adapter doesn't make system start. You need to plug out and in again.
  • no cursor in local access. (but it's ok in ssh) (fixed)
  • no sign of life coming from my box when system is ON : VFD is off (fixed, just find right settings for openVFD)

Still to be tested

  • Audio (analog and Optical SPdif) (for SPDIF android10 uses sunxi-spdif, sndspdif and spdif-utils). But Alwinner's SPdif seems to be very little documented.
  • IR remote
  • GPU/video acceleration
  • EndeavourOS Desktop

Requests (please) :

  • reduce SDcard writings at minimum: logs writing etc...
  • include some testing/hwinfo CLI software by default (lshw, p7zip, s-tui...)
  • please add in instructions :
    "minimum SD card size : Miniarch 202302 only, 2GB ; Miniarch + Endeavour OS, 4GB (headless) or xxGB (desktop)"

SSV6256p / SV6256P wifi driver for kernels >4.4.x

Hi,
(my system setup and other infos are in previous issue)

H313's MMC/SDIO bus correctly detects the presence of an SDIO card (its a wifi chip marked "SV6256P") , and i can find its details under :

/sys/bus/mmc/devices/mmc3:0001/uevent
MMC_TYPE=SDIO
SDIO_ID=3030:3030
SDIO_REVISION=8.0
SDIO_INFO1=SouthSiliconValley.Inc.
SDIO_INFO2=Turismo
SDIO_INFO3=0
SDIO_INFO4=00

(I don't know why it's put under "mmc3" : there's no mmc3 reference in miniarch dtb or in my filesystem device tree, but the hardware address is the right one (4021000), so.... it's that)

now,
SV6256P chip on my board is made by Icomm (aka IcommSemi, aka iComm-semi, aka "Shenzhen iComm Semiconductor Co., Ltd." , but
in SDIO_INFO1 we find another company name: South Silicon Valley (SSV);
SSV produced a chip called SSV6256P,

moreover my card's SDIO_ID is the same of the old SSV6256P (3030:3030)
and the specs of the two chips seem the same
( Icomm SV6256P in brief : http://www.icomm-semi.com/Product/info/id/53.html#SV6256P

full datasheet is here :
http://www.icomm-semi.com/Uploads/Temp/files/2022-08-19/SV6256P%20Datasheet_V1.0.pdf. I couldn't find a datasheet for SSV6256P but on chinese sites there are lots of resources , look at https://download.csdn.net/download/lihuan680680/20670850, for example)

So, it seems (as reported by others on armbian forums) that SSV and SV are the same wifi chip family.

Now,
The original SSV6256P has a driver (ssv6x5x) working under armbian (RK3xxx SOC) , but it works only on kernel 4.4.something

from 12656-csc-armbian-for-rk322x-tv-boxes/page/18/ :
"the ssv6x5x is only for ssv6256p chip. People at SSV company are not very well acquainted with names and IDs, in fact they used the very same ID 3030:3030 for both ssv6051 and ssv6256p wifi chips and the driver name is also confusing (looking at ssv6x5x you may think it works for ssv6051 too, but it doesn't  )"

ssv6x5x driver is also been adapted for the "Khadas vim3" board (amlogic A311, and maybe also s905, (linux kernel v?) ) , here
khadas/android_hardware_wifi_icomm_drivers_ssv6xxx@b8af0da
if (verify) the driver port for khadas also needs an old kernel.... i'd say not to spend time trying to port the driver to some new kernel.

Thanx for your work.

Won't boot on my X96Q

Hello, i have X96Q TV box with H313, 2GB RAM and 16GB ROM. I'am not able to boot any of yours H313/H616 images. Image that should work - MiniArch-20231112-6.6.8-board-h313.x96_q-SD-Image.img.xz - ends with this written to the serial line:

U-Boot SPL 2024.01-rc3 (Dec 14 2023 - 21:40:58 +0100)
DRAM: 64 MiB
Failed to set core voltage! set CPU 792000000hz frequency

RAM chips seems to be Micron D9PFK:
IMG_1679

Seems like there is some issue with my PMIC AXP1530/AXP313... I tried also MiniArch-20231112-6.6.8-board-h616.tanix_tx6s_axp313-SD-Image.img.xz which you edited for that PMIC, but booting stuck on "sun50i-cpufreq-nvmem: will use speed0 CPU OPPs"... So looks like i need combination of both images - H313 CPU and AXP1530/AXP313 PMIC...

Thank you!

Android boot log:

[109]HELLO! BOOT0 is starting!
[112]BOOT0 commit : 3ae35eb
[115]set pll start
[118]periph0 has been enabled
[121]set pll end
[123]unknow PMU
[124]unknow PMU
[126]PMU: AXP1530
[128]dram return write ok
[131]board init ok
[133]DRAM BOOT DRIVE INFO: V0.648
[136]the chip id is 0x5c00
[139]chip id check OK
[144]DRAM_VCC set to 1500 mv
[147]DRAM CLK =600 MHZ
[149]DRAM Type =3 (3:DDR3,4:DDR4,7:LPDDR3,8:LPDDR4)
[157]Actual DRAM SIZE =2048 M
[160]DRAM SIZE =2048 MBytes, para1 = 30fb, para2 = 8000000, dram_tpr13 = 6041
[173]DRAM simple test OK.
[175]rtc standby flag is 0x0, super standby flag is 0x0
[181]dram size =2048
[184]card no is 2
[185]sdcard 2 line count 8
[188][mmc]: mmc driver ver 2021-10-12 13:56
[192][mmc]: b mmc 2 bias 4
[201][mmc]: Wrong media type 0x0, but host sdc2, try mmc first
[207][mmc]: Try MMC card 2
[234][mmc]: RMCA OK!
[287][mmc]: MMC 5.0
[289][mmc]: HSSDR52/SDR25 8 bit
[293][mmc]: 50000000 Hz
[295][mmc]: 15028 MB
[297][mmc]: SD/MMC 2 init OK!!!
[374]Loading boot-pkg Succeed(index=0).
[377][mmc]: b mmc 2 bias 4
[380]Entry_name = u-boot
[389]Entry_name = monitor
[393]Entry_name = dtbo
[396]Entry_name = dtb
[400]tunning data addr:0x4a0003e8
[403]Jump to second Boot.
NOTICE: BL3-1: v1.0(debug):05d6c57
NOTICE: BL3-1: Built : 13:35:35, 2021-10-28
NOTICE: BL3-1 commit: 8
NOTICE: cpuidle init version V1.0
ERROR: Error initializing runtime service tspd_fast
NOTICE: BL3-1: Preparing for EL3 exit to normal world
NOTICE: BL3-1: Next image address = 0x4a000000
NOTICE: BL3-1: Next image spsr = 0x1d3

U-Boot 2018.05 (Jul 22 2023 - 11:53:53 +0800) Allwinner Technology

[00.481]CPU: Allwinner Family
[00.484]Model: sun50iw9
I2C: ready
[00.488]DRAM: 2 GiB
[00.491]Relocation Offset is: 75ebf000
[00.534]secure enable bit: 0
[00.536]pmu_axp152_probe pmic_bus_read fail
[00.540]PMU: AXP1530
[00.546]CPU=1008 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=400Mhz
[00.554]drv_disp_init
[00.584]__clk_enable: clk is null.
[00.590]drv_disp_init finish
[00.592]gic: sec monitor mode
[00.622]flash init start
[00.624]workmode = 0,storage type = 2
[00.628]MMC: 2
[00.629][mmc]: mmc driver ver uboot2018:2021-07-19 14:09:00
[00.635][mmc]: get sdc_type fail and use default host:tm4.
[00.647][mmc]: SUNXI SDMMC Controller Version:0x40502
[00.692][mmc]: Best spd md: 4-HS400, freq: 3-100000000, Bus width: 8
[00.698]sunxi flash init ok
[00.702]Loading Environment from SUNXI_FLASH... OK
[00.711]usb burn from boot
delay time 0
weak:otg_phy_config
[00.725]usb prepare ok
[01.528]overtime
[01.532]do_burn_from_boot usb : no usb exist
[01.536]boot_gui_init:start
FAT: Misaligned buffer address (bbe7b598)
32 bytes read in 4 ms (7.8 KiB/s)
tcon_de_attach:de=0,tcon=2[01.669]boot_gui_init:finish
[01.673]bmp_name=bootlogo.bmp
3686456 bytes read in 23 ms (152.9 MiB/s)
[01.712]update dts
** Unrecognized filesystem type **
[01.722]load file(ULI/factory/rootwait init.txt) error.
** Unrecognized filesystem type **
[01.736]load file(ULI/factory/snum.txt) error.
[01.740]name in map mac
** Unrecognized filesystem type **
[01.751]load file(ULI/factory/wifi_mac.txt) error.
** Unrecognized filesystem type **
[01.764]load file(ULI/factory/bt_mac.txt) error.
** Unrecognized filesystem type **
[01.777]load file(ULI/factory/selinux.txt) error.
** Unrecognized filesystem type **
[01.791]load file(ULI/factory/specialstr.txt) error.
[01.802]update part info
[01.833]update bootcmd
[01.835]No ethernet found.
Hit any key to stop autoboot: 0
[02.018]Starting kernel ...

Tanix Tx6s does not boot with the SD image

I burn the image of the tanix tx6s and when I insert the sd card, it does nothing, it stays black and the display boot does not jump, however, if I remove the sd card and turn on it starts fine with android

about TV box H313-EMCP-V1.0

my tv box uses the same chip,Ik316=h313, but whe I use
MiniArch-20230212-6.3.5-board-h313.x96_q_lpddr3-SD-Image.img.xz on boot says this error:

U-Boot SPL 2021.04 (May 25 2023 - 13:06:08 +0200)
DRAM:This DRAM setup is currently not supported.

Attached I send the android original boot log and the images of my tvbox

ik316
ik3161
bootik316.txt

Disable screen blanking for Allwinner SOCs

Since miniarch is intended for general use, it might be a good idea to disable Allwinner's screen blanking. The default blanking period is quite aggressive and makes it annoying to use the Linux console.

This is the bootloader config I use for my OrangePi Zero 2. Note that I also have a fixed resolution set - if you plan to adopt it, please exclude the resolution parameter.

diff --git a/script/bootloaders/board-h616.orangepi_zero2/files/h616-boot.txt b/script/bootloaders/board-h616.orangepi_zero2/files/h616-boot.txt
index 5616b5f3b..9353701b1 100644
--- a/script/bootloaders/board-h616.orangepi_zero2/files/h616-boot.txt
+++ b/script/bootloaders/board-h616.orangepi_zero2/files/h616-boot.txt
@@ -5,7 +5,7 @@
 
 part uuid ${devtype} ${devnum}:2 uuid
 
-setenv bootargs root=PARTUUID=${uuid} rw rootwait earlycon console=ttyS0,115200n8 logo.nologo vt.cur_default=1 deferred_probe_timeout=0
+setenv bootargs root=PARTUUID=${uuid} rw rootwait earlycon consoleblank=0 console=ttyS0,115200n8 video=HDMI-A-1:1920x1080 deferred_probe_timeout=0
 
 setenv fdtfile dtbs/allwinner/sun50i-h616-orangepi-zero2.dtb
 setenv userfdtfile h616_dtb

It might also be a good idea to enable the cursor as well, since it makes running text editors on the console impossible (you can't navigate in nano without the cursor!). I understand that disabling the cursor is important for silent boot, but perhaps there is a way to re-enable the cursor again after reaching getty.

Reference:
https://linux-sunxi.org/Display

Support for H96 MAX Allwinner H616 Ethernet

Hello,

I have a H96 MAX TV Box with Allwinner H616 SoC, i could boot using the OrangePi Zero 2 image but i have the problem like all others OS's that i tried (Armbian, OrangePi Zero 2) the ethernet is not recognized. I have been searching for help in many forums but couldn't find nothing that could help.

This is the photos that i took from the TV Box PCB with all chips, if you please could add drivers for this ethernet chip or tell me how to do that, i would really appreciate that. HCY6334 is the module with the metal protection
photo_2023-02-22_16-26-20 (2)
photo_2023-02-22_16-26-20

Miniarch.db from warped.inet2.org failing to connect

During installation of Miniarch, when typing command start and then (4) to update Miniarch artefacts, I get the following error:
error: failed retrieving file 'miniarch.db' from warped.inet2.org : Failed to connect to warped.inet2.org port 80 after 10001 ms: Timeout was reached error: failed to synchronize all databases (download library error)

This is very similar to the issue here #31 , which makes me think your update server is down once again.

Would appreciate any support on this!

Miniarch pacman mirror connection timed out

The server at https://warped.inet2.org/pkgs is not working, since sudo start -> 4 fails with a timeout error:

error: failed retrieving file 'miniarch.db' from warped.inet2.org : Failed to connect to warped.inet2.org port 80 after 10001 ms: Timeout was reached
error: failed to synchronize all databases (download library error)

Install on TVBox based Vontar H618

I have a TVBox based Vontar H618, I successfully installed it with version MiniArch-20230718-6.4.4-board-h618.vontar_h618-SD-Image.img, but with current version (MiniArch-20231112-6.6.8-board-h618.vontar_h618-SD-Image.img), the TV box cannot start up.
What are the differences between the two versions?
Where can I download older versions?

Andowl Q96x (H313; AIP1618 VFD controller) openvfd module loads and it's listed in lsmod but...

(my system described in previous issue)

Im trying to enable my VFD (display in front of the box)

my VFD structure : 2 icons ; 88:88 ; other 2 icons
my VFD controller-chip is AIP1628

AIP1628 is a clone of : FD628 | TM1628 | CS1628 | HT1628| LK1628 | SM1628
and needs a 3 wires connection.

The de-facto standard for linux VFD controllers drivers is
https://github.com/arthur-liberman/
I found there my VFD display and my controller

I tried to compile and install openvfd by myself, but during install openvfd driver asked to reinstall linux-headers.
"Missing" xxx "kernel headers for module openvfd/1.4.2"

And this can't be done in miniarch without breaking something else.

What should I do?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.