BeagleBone Black + PowerCape + LCD4 cape = slow bo

2019-08-21 17:33发布

I am working on a project of embedded product with a BeagleBone Black (BBB). I also need a touch screen to display information and for inputs. As I also need the 5v power to add a webcam on the usb, I couldn't use the built-in battery capabilities of the BBB which has no voltage booster. I found a cape that does what I want: PowerCape by AndiceLabs. For the screen, I am using mainly the LCD4 by circuitco but also the 4DCAPE-43T by 4D systems, which I think are exactly identical, and so the problem occurs with both.

So, everything is working fine and it is pretty nice to have everything embedded. But for an unknown reason, the booting time (the time from which I push the power button and the LEDs begin to light to the moment where the console is visible on the screen) passed from 20seconds to 1minutes and 30seconds when I add the PowerCape. And that's very frustrating to have a system that has the capabilities to perform a fast boot and not being able to obtain it.

Here some technical information:
OS:
Angstrom 2013-09-12 linux kernell 3.8.13
It is a clean install, only with Qt libraries added. The desktop environment is disabled.
Boot time:
BeagleBone Black alone: ~20secs
BeagleBone Black + LCD4: ~20secs
BeagleBone Black + LCD4 + PowerCape: 1mn30secs

I generated some logs with and without the PowerCape and contacted AndiceLabs, from their opinions, the PowerCape should not influence the booting time as only differences with the supply on the barel jack is the cape ROM, the INA219 and the AVR on the I2C bus. They think the problem should come from systemd which seems to pause between "target Multi-User" and "target Graphical Interface". I did some research about systemd and try to understand it (I have already been fighting with it for another problem here), but it is really confusing and I really don't know were to look.

Logs:
Without PowerCape
With PowerCape
Logs that only appear without PowerCape
Logs that only appear with PowerCape

1条回答
Bombasti
2楼-- · 2019-08-21 17:52

The 60 seconds boot delay can be fixed easily. Alter uEnv.txt on your boot partition and add

capemgr.disable_partno=PowerCape

to the line beginning with optargs. In my case I have:

optargs=quiet capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN,PowerCape

as I don't need HDMI. This prevents the cape manager to load the PowerCape overlay file (which does not exist).

To modify uEnv.txt do something like:

cd /tmp
mkdir bootpart
sudo mount /dev/mmcblk0p1 bootpart
sudo vi bootpart/uEnv.txt
reboot
查看更多
登录 后发表回答