I built Debian images for BPI-R4 - there was (at the time of posting - edited) no Debian images for this anywhere so this might be useful for some of you. Test anything you can and provide information so things can be fixed
Frank w’s images are considered unofficial and this is unofficial version of unofficial images - rootfs is very basic so you can check it. You can build it yourself as well.
Basic credentials are root:bananapi
What does work in this?
Sierra Wireless EM7455 worked properly on this after adding MBIM support to kernel. Recommending Network Manager, Modem Manager, firewalld and MBIMCLI.
USB drives work as they should.
NVMe drives were detected and showed proper size.
Can fully emulate desktop sessions with XFCE4 & XRDP(performance better than expected).
Webmin works properly.
What does not work?
Can’t get WiringPi to work as it’s not supported for R4 i think - /sys/class/gpio works properly.
RAM is limited to 3G.
Cannot get One Wire to work(cannot detect device on bus).
Link to my Nextcloud directory with images and md5’s:
Would you be able to provide the exact command line you used to build the Kernel and the Image ?
It’s a long time since I’ve played with kernel building and I need a refresher …
The image builder expects prebuilt kernels on releases page on my kernel-repo…it does not compile it.
I’m experimenting with ci in the image builder repo and maybe add kernel for r4 on my gdrive to be downloaded from there. But i need to think about a concept to get the latest kernel from it.
./build.sh config(add or include modules into kernel, configure cpu schedulers, etc. - if you don’t know what to do here use https://www.kernelconfig.io/config_hwmon?q=&kernelversion=6.8&arch=arm64 - this is very plain and basic. If you choose an option(not a menu of options) and press ? you’ll get config name and info - copy and paste it into above kernelconfig.io and it will explain everything you need. If you don’t need to change anything just save and exit.)
./build.sh
At stage “choice” pick option 1 - Pack
Directory “SD” next to “BPI-Router-Linux” should be created. Inside of it should contain a file named “bpi-r4_6.8.0-rc3-dango.tar.gz” which is your compiled kernel with modules that are not built into kernel but as modules in /lib/modules.
Image should be built and packed into BPI-Router-Images directory. It should be named “bpi-r4_bookworm_6.8.0-rc3-dango.img.gz” with md5 checksum file “bpi-r4_bookworm_6.8.0-rc3-dango.img.gz.md5”.
Write it on a SD card using gunzip -c bpi-r4_bookworm_6.8.0-rc3-dango.img.gz | sudo dd bs=1M status=progress conv=notrunc,fsync of=/dev/sdX or Balena Etcher on Windows
Thanks !
Doing that gives a perfectly fine image that works when writen on a SD card.
If I do the same on the dango_2 branch, it fails as desribed in my other post.
kernel image is much larger:
88M for dango
113M for dango_2 (maybe because I added some more modules)
Yes i think too it is because you add additional options (builtin,not modules),firmware or initrd so itb increases to much for the range i defined…here you can set loadaddr in uEnv.txt (root of BPI-BOOT partition,create it if not exist) to override uboot builtin environment.
113M for the itb? Or the tar.gz also containing the modules?
Only itb size (kernel without modules) matters for the error above…if all additional is built as module it should be fine. I guess you do not use initrd (which may grow too very fast and may overwrite other content).
edit: added the pci2 fix from daniel to 6.8-dango_2 branch and build image(s) with it and fixed some bugs in the ci-pipeline…now kernel-version is included in the images filename for r4
Thank you. I checked above, for downloadsfiles.py requests were not loaded. I installed them and now is fine. When I downloaded manually script was also finishing. WSL did not finish, there were some errors with partitions, but virtual machine generated image file.