/sys/device/bone_capemgr* doesn't exist on fresh image

Sorry for the super newbie question. What do I need to install in order to have the /sys/devices/bone_capemgr* directory show up on a fresh Ubuntu image? My software uses this to configure the device tree for PWM slots.

Background: I was operating fine using the default Debian image that came on the BBB Rev C, but for various reasons I decided to switch to Ubuntu (Trusty). I used the image located here and all seemed to go well. I can list the GPIOs at /sys/class/gpio, but there is no bone* under /sys/devices like there used to be with the Debian (Wheezy) image.

Any pointers would be appreciated.

-Nate

Down grade to v3.8.x:

sudo apt-get update
sudo apt-get install linux-image-3.8.13-bone68
sudo reboot

Regards,

That did it, thanks Robert!

Install device tree compiler using sudo apt-get install device-tree-compiler

When I installed Ubuntu 14.04, it didn’t have dtbo files for pwm, had to compile them manually. Faced errors with -@ option in while compiling device tree overlay, overcame with commands as given below

wget -c https://raw.github.com/RobertCNelson/tools/master/pkgs/dtc.sh
chmod +x dtc.sh
./dtc.sh

source: http://hipstercircuits.com/problems-with-beaglebone-black-and-their-solution/

http://eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-Upgradedistro%22device-tree-compiler%22package

got the missing dts files from

https://github.com/beagleboard/devicetree-source

now at https://github.com/venkaty89/devicetree-source/tree/master/arch/arm/boot/dts

or

https://github.com/beagleboard/devicetree-source/tree/master/arch/arm/boot/dts

compiled required files using build file

#!/bin/bash

echo “Compiling the overlay from .dts to .dtbo”

dtc -O dtb -o am33xx_pwm-00A0.dtbo -b 0 -@ am33xx_pwm-00A0.dts

dtc -O dtb -o bone_eqep0-00A0.dtbo -b 0 -@ bone_eqep0-00A0.dts

dtc -O dtb -o bone_eqep1-00A0.dtbo -b 0 -@ bone_eqep1-00A0.dts

dtc -O dtb -o bone_eqep2-00A0.dtbo -b 0 -@ bone_eqep2-00A0.dts

dtc -O dtb -o bone_pwm_P8_13-00A0.dtbo -b 0 -@ bone_pwm_P8_13-00A0.dts

dtc -O dtb -o bone_pwm_P8_19-00A0.dtbo -b 0 -@ bone_pwm_P8_19-00A0.dts

dtc -O dtb -o bone_pwm_P8_34-00A0.dtbo -b 0 -@ bone_pwm_P8_34-00A0.dts

dtc -O dtb -o bone_pwm_P8_36-00A0.dtbo -b 0 -@ bone_pwm_P8_36-00A0.dts

dtc -O dtb -o bone_pwm_P8_45-00A0.dtbo -b 0 -@ bone_pwm_P8_45-00A0.dts

dtc -O dtb -o bone_pwm_P8_46-00A0.dtbo -b 0 -@ bone_pwm_P8_46-00A0.dts

dtc -O dtb -o bone_pwm_P9_14-00A0.dtbo -b 0 -@ bone_pwm_P9_14-00A0.dts

dtc -O dtb -o bone_pwm_P9_16-00A0.dtbo -b 0 -@ bone_pwm_P9_16-00A0.dts

dtc -O dtb -o bone_pwm_P9_21-00A0.dtbo -b 0 -@ bone_pwm_P9_21-00A0.dts

dtc -O dtb -o bone_pwm_P9_22-00A0.dtbo -b 0 -@ bone_pwm_P9_22-00A0.dts

dtc -O dtb -o bone_pwm_P9_28-00A0.dtbo -b 0 -@ bone_pwm_P9_28-00A0.dts

dtc -O dtb -o bone_pwm_P9_29-00A0.dtbo -b 0 -@ bone_pwm_P9_29-00A0.dts

dtc -O dtb -o bone_pwm_P9_31-00A0.dtbo -b 0 -@ bone_pwm_P9_31-00A0.dts

dtc -O dtb -o bone_pwm_P9_42-00A0.dtbo -b 0 -@ bone_pwm_P9_42-00A0.dts

copied compiled dtbo files to /lib/firmware using

cp -f *.dtbo /lib/firmware

Dear Robert

my kernel is v4.0, i have the same problem. can not find the bone_capemgr* file. i used your way, but when i reboot bbb, it stoped at “Stopping System V runlevel compatibility [ok]” .

what can i do ?

Dear Robert

                    my kernel is v4.0, i have the same problem. can not find
the bone_capemgr* file.

Really!!! it's not in v4.0??? Oh my what are we going to do!

Down grade to v3.8.x:

sudo apt-get update
sudo apt-get install linux-image-3.8.13-bone71
sudo reboot

i used your way, but when i reboot bbb, it stoped
at "Stopping System V runlevel compatibility [ok]" .
what can i do ?

sudo apt-get install bb-customizations

will fix that..

Regards,

Talk about your FAQ...

Sadly, I think this will persist so long as 99% of all guides online for how to interface the BBB to anything talk about capemgr. Is there active work on a replacement?

Yeap...

The main infrastructure is now in mainline... But the 'knobs n dials'
for control are still being discussed..

When something gets usable, things will be announced here. :wink:

Regards,

When I downgrade to this image all four of my LEDs are illuminated upon reboot and stay this way for a long time. Is this normal?

Nope...

Considering this specific thread went back a year ago...

What image did you start with? Before you down-graded?

Regards,

I just used Debian 8.2 from the website.

Well, bone68 was over a year ago.. so yeah, probally broken..

Today, 3.8.13-bone79 is the latest:

http://repos.rcn-ee.com/latest/jessie-armhf/LATEST-omap-psp

So you should have done:

sudo apt-get update ; sudo apt-get install linux-image-3.8.13-bone79 ;
sudo reboot

Or you could have used the script listed here:

http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Kernel_Options

or here:

http://elinux.org/BeagleBoardDebian#Install_Latest_Kernel_Image

Lesson, don't follow directions more then a year old..

Regards,

Ah, thank you for the help! I’ll give that a try.

Yeah, doing a quick google search I found this thread and was running into an issue with trying to use the PRU so I figured I’d give this a try.

For the pru, compatible with 3.8 you can use:

4.1.x-bone

linux-image-4.1.14-bone17

or the real time version:

linux-image-4.1.14-bone-rt-r17

With the magic script:

cd /opt/scripts/tools/
git pull

sudo ./update_kernel.sh --bone-kernel --lts

or

sudo ./update_kernel.sh --bone-rt-kernel --lts

Regards,

Oh, cool. Should I install the 8.2 image from the website, install linux-image-4.1.14-bone-rt-r17 using apt-get and then update the kernel?

Hey, quick question. Trying to

Either or.. they both do the same thing.. the "update_kernel.sh"
always get's the latest.. So in a month's time, when this email
exchange is old, "bone17" will be long replaced. :wink:

Regards,

^^ don’t mind that second line, didn’t realize I started typing in the box… was meant for a different window :slight_smile:

Awesome, thanks for the help!

Hey, since I’ve got you here. Do you have anything good to read on using the PRU with the GPIOs on the board?

https://github.com/boxysean/am335x_pru_package

This one is different from the “stock” repo as he’s added 3 examples all related to blinking LEDs. LEDs which are tied to GPIO pins . . .After that, google has lots to read.