Facing issue in booting Balena OS

WRT Question 1
In balenaOS the /mnt/boot is the place where the boot partition is mounted. So please try placing the overlays under that folder.

WRT Question 2 (continued)
We are using yocto for building balenaOS, so the best way to customize it is by using yocto as well.
We do not have a guide for this, but you can find some references in

WRT Question 3
Most device wifi chips only support either being connected on a wifi network or being on hotspot mode.
Which WiFi adapter are you using?

WRT Question 4
Unfortunately we do not support the BBB networking over USB feature currently.
On the other hand this sounds interesting & useful, so I will open an internal issue to add this to the list of features to consider.

WRT Question 5
BalenaOS as a host operating system is keeping OS related logs in memory and systemd preserve the most recent ones that do fit in their max specified log size.
On the other hand, if you need to preserve application level logs, then your application also has to handle log preservation & rotation.

Let me also point you to the repository for the Beaglebone balenaOS version.

Hello

For Question 3 I’ll get back to you by confirming the Wifi Adapter first thing in the morning tomorrow.

For Question 1 I have tested this scenario for other overlays which by default came with the Image and they were located in /boot/overlays directory. I was able to load the overlays and as logs state it’s loading from mmc 1:2. mmc 1:2 has /boot/overlays directory So I am confused this works for other overlays which come by default in the image But it fails when loading the custom_overlay. What am I doing wrong here?

For Question 5 Yes for preserving application level logs we use log rotate and is it possible to have log rotate and Cron job mechanism on the host operating system or Do I need to add this mechanism in the container?

Thanks for the Response.

On Question 5, for application logs you can use any facilities installed in your app container (like log rotate or cron mechanism), not the host OS.

On Question 1, I don’t have a BeagleBone device to test, but I have an RPi 3 and it has a /mnt/boot/overlays folder with lots of dtbo files in it. :slight_smile: I am not sure of the difference in folders for default overlays and custom overlays. When you added the custom_overlay.dtbo file to /boot/overlays/, it did not work, right? Does it work if you add it instead to /mnt/boot/overlays?

Thank you for trying balena’s platform!

For Question 1 I didn’t have overlays directory under /mnt/boot/ so I created the directory and added the custom overlay in that directory. Made changes in the uEnv.txt and restart the Beaglebone.

I get the following log:

uboot_overlays: unable to find [mmc 1:2 /mnt/boot/overlays/custom_overlay.dtbo]...

According to my understanding, it is trying to find in mmc 1:2 and /mnt/boot is mmcblk1p1 i.e mmc 1:1 While /boot/overlays are under mmc 1:2. All the other dtbo under overlays provided by balena are loading But my custom_overlay.dtbo is not loading.

Thanks for the Response.

Hi,

For the BeagleBone devices the u-boot overlays are placed on the root partition in “/boot/overlays/” and not in the boot partition.
You will already find there the overlays that you manually added.

To activate them you need to add in /mnt/boot/uEnv.txt the following:
enable_uboot_overlays=1
uboot_overlay_addr1=/boot/overlays/custom_overlay.dtbo

Regards!

I have already done that step.

enable_uboot_overlays=1
uboot_overlay_addr1=/boot/overlays/custom_overlay.dtbo

Hi,

So you are saying that your custom dtbo is not loaded even though you added these lines in uEnv.txt and copied your custom_overlay.dtbo overlay into /boot/overlays folder.

Could you please paste the u-boot output?

Regards!

Yes My Custom dtbo is not loading.

uboot_overlays: loading /boot/overlays/<Pre-defined-overlay> ...
883 bytes read in 132 ms (5.9 KiB/s)
uboot_overlays: unable to find [mmc 1:2 /boot/overlays/custom_overlay.dtbo]...
---- Other logs like Flattened Device Tree and etc ------
---- Kernel Logs print after this -----

<Pre-defined-overlay> is just the representation of the overlay’s that are loading. I can’t add the overlays I am using so I have just edited that with .

On the device, where did you place the the dtbo file? Is there a device that runs and you can share with us (enable device support)?

I have placed the dtbo file under /boot/overlays where all the other overlays exist.

Question:

Can you please tell more about the enable device support? How does it work and what is required for it?

It enables our support agents to access the device for a certain period of time in order to investigate the issue you’re having. We do ask you for permission before taking an action such as a reboot. It’s safe to share the device URL once you’ve enable support access (by pressing Grant Support Access on the Actions tab of the device’s page) since only we can access the device.

Okay So I’ll need to signup for BalenaCloud?

Oh, sorry, I assumed you’re already using Balena Cloud. But yes – in order for us to connect to the device and do our diagnostics you’d have to use the device on Balena Cloud. Otherwise, we’re bound to this kind of back and forth. I pinged the relevant engineer that might be able to assist you. Cheers!

Okay I’ll grant the access just ping me here whenever the relevant engineer might be available
Thanks

hey @Sharvin26,

I think that I know what is happening.

I observed that sometimes U-boot has troubles seeing the files created on ext4 partitions from Linux.

So the files are present when looking from Linux but u-boot can’t see them.

It usually happens to newly created files.

So could you try to run in u-boot :
ext4ls mmc 1:2 /boot/overlays
and see if your custom_overlay.dtb shows up in the listing?

Regards!

Yes, I am unable to see my custom u boot overlay file for this command:

ext4ls mmc 1:2 /boot/overlays

What’s the solution to such a situation?

Also, I can enable the enable device support?

Anyone here can help me in loading the custom UART? I am still facing the issue.

Hi @Sharvin26,

My speculation for the reason that you don’t see the dtbo file there, is the way we use aufs to mount the rootfs and is not an u-boot bug.

If you want your dtbo in the /boot/overlays folder you need to create your own build.

Clone this repo:
https://github.com/balena-os/balena-beaglebone.

Patch this recipe to add your overlay source:
https://github.com/balena-os/balena-beaglebone/blob/master/layers/meta-balena-beaglebone/recipes-kernel/linux/bb-org-overlays.bb.

Then you can build an image and use it on your board and your dtbo should be usable.

Regards!

Thanks for the Response.

Is there any documentation available for How can I add a custom overlay as a patch?

I have not used yocto before so it would be great if you could share some resource regarding that.