pyavitz / debian-image-builder

Debian image builder for single board computers
Other
143 stars 33 forks source link

Can't get the final build #45

Closed FillHK closed 1 year ago

FillHK commented 1 year ago

All the steps are done, with no issues but after the command: make menu

I see:

ls: cannot access 'meson-xxx*.img': no such file or direct 
debian-bullseue-riitfs-arm64.tar.xz

output/odroidn2/:

I have this directory but it is empty

pyavitz commented 1 year ago

What distro and release are you using as a Host? Did you install all the needed dependencies?


If there is nothing in the output directory, there is a problem.

You should have something like this:

odroid: debian-image-builder git:( feature ?:23 ✗ ) $ ls output/odroidn2
linux-headers-meson-g12b_6.0.7-1_arm64.deb  u-boot.bin.sd.bin
linux-image-meson-g12b_6.0.7-1_arm64.deb    u-boot-meson-g12b_2022.10-1_arm64.deb
u-boot.bin

and a rootfs tarballs: debian-bullseye-rootfs-arm64.tar.xz

Try running the commands manually to see if an error presents its self.

make uboot board=odroidn2
make kernel board=odroidn2
make rootfs board=odroidn2
make image board=odroidn2

You can also turn on verbosity in the userdata.txt file: verbose=1 If using the menu interface you can also enable logging.

FillHK commented 1 year ago

So far next result with make uboot board=odroidn2:

SHIPPED dts/dt.dtb
  CAT     u-boot-dtb.bin
  COPY    u-boot.dtb
  COPY    u-boot.bin
  LD      u-boot.elf
Odroid N2: Firmware Image Package
2096+0 records in
2096+0 records out
2096 bytes (2.1 kB, 2.0 KiB) copied, 0.0128976 s, 163 kB/s
4701+0 records in
4701+0 records out
4701 bytes (4.7 kB, 4.6 KiB) copied, 0.0266801 s, 176 kB/s
9408+0 records in
9408+0 records out
9408 bytes (9.4 kB, 9.2 KiB) copied, 0.0547915 s, 172 kB/s
2384+0 records in
2384+0 records out
2384 bytes (2.4 kB, 2.3 KiB) copied, 0.0154244 s, 155 kB/s
lib/function/fip: line 260: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
lib/function/fip: line 263: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
lib/function/fip: line 266: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
lib/function/fip: line 269: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
lib/function/fip: line 272: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
lib/function/fip: line 274: /userdata/debian-image-builder-feature/sources/u-boot/fip/aml_encrypt_g12b: cannot execute binary file: Exec format error
Something went wrong? Please report.
FillHK commented 1 year ago

Started from first steps:

  1. make ncompile
    
    root@HomeAssistant:/userdata/debian-image-builder-feature# make ncompile
    # Installing native dependencies:

make: *** [Makefile:110: ncompile] Error 100

FillHK commented 1 year ago

I see why it happens (i assume) (28: No space left on device)

I have one device with Debian installed only, and my targeted platform is Odroid N2. Seems my OdroidN2 has no Debian installed I can't execute the code directly on a device... Have no idea now how I can build an image for Odroid arm64

pyavitz commented 1 year ago

I can build you an img if you like? This is for the original Odroid N2?

pyavitz commented 1 year ago

It looks like you are either missing dependencies or not enough space on the unit.

Here is an Odroid N2 image. You need to follow these instructions for creating a user account upon first boot. If you choose not to use the useraccount.txt file, make sure the unit has a monitor and keyboard connected to it.

FillHK commented 1 year ago

Big thanks., Now I have installed some available image (Debian for Odroid N2) and have run it directly on board, will see if it helps (just personal interest). In the worth case scenario, I will use your image.

Thank you again

FillHK commented 1 year ago

I used balena ether for your image. After start - nothing happens - blank screen ;(

I think I have Odroin N2+

pyavitz commented 1 year ago

I think I have Odroin N2+

Here is a N2+ image: https://github.com/pyavitz/binary/releases/download/images/meson64_odroidn2_plus-debian-bullseye-6.0.7-arm64-ext4-2022-11-09-1606.img.xz

Both images are meant to be flashed to SDCARD. After booting from SD, if you have an eMMC you wanna transfer the install too; attach the module and run: sudo write2mmc

FillHK commented 1 year ago

Done with Debian, works.

Just one issue left with HomeAssistant: Unsupported system - CGroup version

Have re-run the installation script many times but with no luck.

What’s required is to launch the kernel with this specific Systemd parameter: systemd.unified_cgroup_hierarchy=false

but we have no grub or cmdline.txt

[info] Install supervisor startup scripts
[info] Install AppArmor scripts
[info] Start Home Assistant Supervised
[info] Installing the 'ha' cli
[warn] Could not find /etc/default/grub or /boot/firmware/cmdline.txt failed to switch to cgroup v1
[info] Within a few minutes you will be able to reach Home Assistant at:
[info] http://homeassistant.local:8123 or using the IP address of your
pyavitz commented 1 year ago

Ok. So reviewing the script its self, this should be appended to ur extlinux.conf file during the install. https://github.com/pyavitz/debian-image-builder/blob/feature/files/scripts/menu-config#L304

If you need to add something to the boot command line before hand, you can do so by manually adding it to /boot/extlinux/extlinux.conf

FillHK commented 1 year ago

You made my day today!!

Host Operating System   Debian GNU/Linux 11 (bullseye)
Update Channel  stable
Supervisor Version  supervisor-2022.11.dev0802
Agent Version   1.4.1
Docker Version  20.10.21
Disk Total  114.6 GB
Disk Used   5.6 GB
Healthy true
Supported   true
Supervisor API  ok
Version API ok

Appreciate your help and support!

FillHK commented 1 year ago

Any limitation with USB ports?

[20:46:20] INFO: Preparing to start...
[20:46:21] INFO: Socat not enabled
[20:46:22] INFO: Starting Zigbee2MQTT...
Zigbee2MQTT:info  2022-11-09 20:46:26: Logging to console and directory: '/config/zigbee2mqtt/log/2022-11-09.20-46-26' filename: log.txt
Zigbee2MQTT:info  2022-11-09 20:46:26: Starting Zigbee2MQTT version 1.28.2 (commit #unknown)
Zigbee2MQTT:info  2022-11-09 20:46:26: Starting zigbee-herdsman (0.14.68)

The device is working, tested with the same config yesterday

Maybe will help:

label default
    kernel ../Image
    initrd ../uInitrd
    fdtdir ../amlogic/
    fdt ../amlogic/meson64_odroidn2_plus.dtb
    #fdtoverlays
    append systemd.unified_cgroup_hierarchy=false systemd.legacy_systemd_cgroup_controller=false usbcore.autosuspend=-1 usbcore.autosuspend=-1 clk_ignore_unused earlyprintk console=tty1 console=ttyAML0,115200n8 console=both rw root=PARTUUID=b5d0c4d4-01 rootwait rootfstype=ext4 fsck.repair=yes loglevel=1 net.ifnames=0 no_console_suspend clk_ignore_unused usb-storage.quirks=0x152d:0x0576:u init=/sbin/init
pyavitz commented 1 year ago

Did that not get appended during the install?

pyavitz commented 1 year ago

Beyond the usual limitations of the N2 and USB, I know of no issues. I'll ask CPmentor if he knows anything. He wrote the install part of the script and uses HA.

FillHK commented 1 year ago

I used this device on this hardware before, sure it's supported...

pyavitz commented 1 year ago

Zigbee2MQTT

Does this require thirdparty kernel support? If you have Discord, you can chat here: https://discord.gg/mypJ7NW8BG

Might be more productive?

0n3man commented 1 year ago

I use ZHA on my HA system for zigbee communications. At one location I use a GoControl HUSBZB-1 and another I use a CronBee II. Both work fine on the odroid N2+. Can you give ZHA a try and see if detects your USB device?

0n3man commented 1 year ago

FillHK if you got to debian-image-build from the home assistant forum, possible here. Can you add something to that HA thread to pop it to the top so others will see you had success going this route. Thanks

jasonmadigan commented 1 year ago

I think I have Odroin N2+

Here is a N2+ image: https://github.com/pyavitz/binary/releases/download/images/meson64_odroidn2_plus-debian-bullseye-6.0.7-arm64-ext4-2022-11-09-1606.img.xz

Both images are meant to be flashed to SDCARD. After booting from SD, if you have an eMMC you wanna transfer the install too; attach the module and run: sudo write2mmc

These images seem to be 404ing.

Edit: Ah, found 'em: https://github.com/pyavitz/binary/releases

pyavitz commented 1 year ago

yeah sorry I generally don't release imgs -> https://github.com/pyavitz/binary/releases/tag/images