element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Single-Board Computers
  • Products
  • Dev Tools
  • Single-Board Computers
  • More
  • Cancel
Single-Board Computers
Forum [How-to] BB-View on latest Debian
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Single-Board Computers to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 142 replies
  • Subscribers 64 subscribers
  • Views 23782 views
  • Users 0 members are here
  • debian
  • embedded_linux
  • bb-view
  • bbb
Related

[How-to] BB-View on latest Debian

compeoree
compeoree over 11 years ago

I thought some others might like to know how to get the BB-View working under the latest Debian beta images.

 

Unfortunately, you are going to have to recompile the Kernel. The video works fine without a recompile (the red/blue swap is easy to fix), but the touchscreen control connections are not the same as the standard TI 4-wire interface. I tried to patch the ti_am335x_tsc.c file, so the changes would be limited to a dts recompile, but I haven't been able to get that working yet (I'm pretty sure it is a state machine / bit assignment issue). But anyway, here are the steps that you need to perform.....

 

Overview

1) Download the necessary files

     a) Robert Nelson's handy tools for compiling the Beaglebone kernel

     b) BB-View source for Angstrom

2) Build the default kernel

3) Patch the Kernel and perform a fast recompile

4) Copy the new kernel to the Beaglebone

5) Edit the xorg.conf file to correct the Red/Blue color swap

6) Revel in the 4 days you just saved image

 

Let's Get Started

I am using Ubuntu 12.04 LTS 64 bit running in a VirtualBox VM to compile the kernel:

Make a new folder called bb-view, this is where our build will happen.

> mkdir bb-view

> cd bb-view

 

Install git, if you haven't already:

> apt-get install git

 

Clone Robert Nelson's linux-dev project locally. Be prepared for a large download (~100 Mb for the cross-compiler and ~700 Mb for the kernel source).

> git clone https://github.com/RobertCNelson/linux-dev.git

 

Change into the new linux-dev folder and select branch/tag that matches the Debian version.

> cd linux-dev

> git checkout 3.8.13-bone37 -b tmp

 

Now we need to build the base image, so our cape drivers folder gets populated. The script will tell you if you need to do or install anything else.

> ./build_kernel.sh

 

Come back in an hour or so.....(You might want to download the Angstrom source from element14 now)

 

Patching the Kernel

Extract two files from the Angstrom source:

> unzip angstrom-source.zip

> tar -zxf bb-black-kernel-3.8.13-bb-view.tar.bz2

> cp ./kernel/kernel/drivers/input/touchscreen/ti_am335x_tsc.c  ~/bb-view/linux-dev/KERNEL/drivers/input/touchscreen/

> cp ./kernel/kernel/firmware/capes/BB-VIEW-LCD7-01-00A0.dts  ~/bb-view/linux-dev/KERNEL/firmware/capes/

 

Now we need to let the compiler know that we want to add the firmware to the build:

> nano   ~/bb-view/linux-dev/KERNEL/firmware/Makefile

 

Add the following line somewhere near line 192 (CTRL-C will display current cursor position):

BB-VIEW-LCD7-01-00A0.dtbo \

 

Don't forget the trailing backslash....it is important. Now save and exit by doing CTRL-O, Enter, CTRL-X.

Change back to the linux-dev root folder:

> cd   ~/bb-view/linux-dev

 

Now issue the kernel rebuild command, this won't take very long at all:

> ./tools/rebuild.sh

 

 

Copy Kernel to BBB

The following instructions assume that you already have the Debian beta installed and booted up on the BBB.

The easiest way is to copy the files over the network, via the 'scp' command:

> scp   ~/bb-view/linux-dev/deploy/3.8.13-bone37.zImage   debian@192.168.7.2:/home/debian

Replace debian (both instances) with the username you are running on the BBB and 192.168.7.2 with the IP address of the BBB.

 

Now log into the BBB and copy the kernel image to the boot partition:

> ssh debian@192.168.7.2

bbb>  sudo cp 3.8.13-bone37.zImage   /boot/uboot/zImage

 

We need to do one more thing before the LCD will work. Since the cape doesn't have an EEPROM, we need to black-list the HDMI drivers and force-load the BB-VIEW drivers in the boot command file:

bbb>  sudo  nano  /boot/uboot/uEnv.txt

 

Find the "optargs" line and edit it to be:

optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN  capemgr.enable_partno=BB-VIEW-LCD7-01

Notice that the preceding "#" has been removed. You don't want to disable BB-BONE-EMMC-2G, or you won't be able to boot from eMMC.

Now save and exit by doing CTRL-O, Enter, CTRL-X.

 

Reboot the BBB and the LCD should now work....except the blue and red are reversed.

 

Fixing Red/Blue Color Swap

This is due to errata in the TI AM335x processor when switching between 16 and 24 bit video modes. To fix this, we must first find the name of our screen:

> ssh debian@192.168.7.2

bbb> cat  /var/log/Xorg.0.log  |  grep  screen

Mine was "Builtin Default fbdev Screen 0"

 

Now we edit our X configuration file:

bbb> sudo nano  /usr/share/X11/xorg.conf.d/10-evdev.conf

 

and add a "Screen" section at the end of the file:

Section "Screen"

        Identifier "Builtin Default fbdev Screen 0"

        Monitor "Configured Monitor"

        Device "Configured Video Device"

        DefaultDepth 24

EndSection

Save and exit by doing CTRL-O, Enter, CTRL-X.

Reboot and enjoy!

  • Sign in to reply
  • Cancel

Top Replies

  • Former Member
    Former Member over 11 years ago in reply to Former Member +1
    Hello selsinork, "Which kernel version are you using ?" I use the 3.8. "Did you apply the patch Louis posted ?" I rebuild the kernel with Louis' edits in the "4. Re:[How-to] BB-View on latest Debian" message…
  • Former Member
    Former Member over 11 years ago in reply to Former Member +1
    Ok, so with the overlay loaded then the touch screen driver should be able to work. You can check the proper device using 'evtest' like this: root@lcd:~/evtest# ./evtest No device specified, trying to…
  • Former Member
    Former Member over 11 years ago in reply to Former Member +1
    Interesting. I seem to remember that one of the LEDs on the cape was configured as heartbeat. Perhaps that was the TI-SDK image then as looking at the overlay files I see: gpio-leds-cape-lcd { compatible…
Parents
  • Former Member
    Former Member over 11 years ago

    Hi guys,

    I am trying to get the BB-VIEW up and running but I am so far unsuccessful.

    I did all steps, compile, copy zImage etc. but I have no response from display. Not even blink or something. Looks totally dead.

    I am getting this dump during booting:

     

    U-Boot 2013.10-00016-ga0e6bc6 (Feb 25 2014 - 10:27:54)

     

    I2C:   ready

    DRAM:  512 MiB

    WARNING: Caches not enabled

    NAND:  0 MiB

    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1

    *** Warning - readenv() failed, using default environment

     

    Net:   <ethaddr> not set. Validating first E-fuse MAC

    cpsw, usb_ether

    Hit any key to stop autoboot:  0

    gpio: pin 53 (gpio 53) value is 1

    Card did not respond to voltage select!

    mmc0(part 0) is current device

    Card did not respond to voltage select!

    mmc1(part 0) is current device

    gpio: pin 54 (gpio 54) value is 1

    SD/MMC found on device 1

    reading uEnv.txt

    1438 bytes read in 6 ms (233.4 KiB/s)

    Importing environment from mmc ...

    gpio: pin 55 (gpio 55) value is 1

    Checking if uenvcmd is set ...

    gpio: pin 56 (gpio 56) value is 1

    Running uenvcmd ...

    reading zImage

    3683672 bytes read in 350 ms (10 MiB/s)

    reading initrd.img

    2870985 bytes read in 273 ms (10 MiB/s)

    reading /dtbs/am335x-boneblack.dtb

    24996 bytes read in 11 ms (2.2 MiB/s)

    Kernel image @ 0x80300000 [ 0x000000 - 0x383558 ]

    ## Flattened Device Tree blob at 815f0000

       Booting using the fdt blob at 0x815f0000

       Using Device Tree in place at 815f0000, end 815f91a3

     

    Starting kernel ...

     

    Uncompressing Linux... done, booting the kernel.

    [    0.380414] omap2_mbox_probe: platform not supported

    [    0.555071] tps65217-bl tps65217-bl: no platform data provided

    [    0.616438] bone-capemgr bone_capemgr.9: slot #0: No cape found

    [    0.653544] bone-capemgr bone_capemgr.9: slot #1: No cape found

    [    0.690652] bone-capemgr bone_capemgr.9: slot #2: No cape found

    [    0.727762] bone-capemgr bone_capemgr.9: slot #3: No cape found

    [    0.756008] omap_hsmmc mmc.5: of_parse_phandle_with_args of 'reset' failed

    [    0.817863] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested b8

    [    0.829570] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.8) status -22

    [    0.836860] pinctrl-single 44e10800.pinmux: could not request pin 21 on devie

    [    0.846843] pinctrl-single 44e10800.pinmux: pin 44e10978 already requested b2

    [    0.859139] pinctrl-single 44e10800.pinmux: pin-94 (gpio-leds-cape-lcd.12) s2

    [    0.867333] pinctrl-single 44e10800.pinmux: could not request pin 94 on devie

    Loading, please wait...

    modprobe: chdir(3.8.13-bone37): No such file or directory

    modprobe: chdir(3.8.13-bone37): No such file or directory

    modprobe: chdir(3.8.13-bone37): No such file or directory

    systemd-fsck[205]: rootfs: clean, 72339/111104 files, 334965/444160 blocks

     

    Debian GNU/Linux 7 beaglebone ttyO0

     

    default username:password is [debian:temppwd]

     

    beaglebone login:

     

    Could you please advice me a bit ? What would be an issue? image

     

    Thank you!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Mipo01 wrote:

     

    Hi guys,

    I am trying to get the BB-VIEW up and running but I am so far unsuccessful.

    I did all steps, compile, copy zImage etc. but I have no response from display. Not even blink or something. Looks totally dead.

     

    [...]


        0.817863] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested b8

    [    0.829570] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.8) status -22

    [    0.836860] pinctrl-single 44e10800.pinmux: could not request pin 21 on devie

    [    0.846843] pinctrl-single 44e10800.pinmux: pin 44e10978 already requested b2

    [    0.859139] pinctrl-single 44e10800.pinmux: pin-94 (gpio-leds-cape-lcd.12) s2

    [    0.867333] pinctrl-single 44e10800.pinmux: could not request pin 94 on devie

    did you edit uEnv.txt to have the following ?

     

    optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN  capemgr.enable_partno=BB-VIEW-LCD7-01

     

    the pinmux lines in the output you pasted suggest that something else has already claimed the pins before the lcd overlay loads. If that's true then the LCD won't be enabled and it will stay blank. This could be as simple as not properly disabling the two HDMI virtual capes, so something more complex

     

    try logging in and getting a list of what capemgr has done by typing

     

    cat /sys/devices/bone_capemgr.*/slots

     

    that should let you see if the Lcd overlay has loaded or not, and possibly what other overlay is blocking it.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    selsinork wrote:

     

    Mipo01 wrote:

     

    Hi guys,

    I am trying to get the BB-VIEW up and running but I am so far unsuccessful.

    I did all steps, compile, copy zImage etc. but I have no response from display. Not even blink or something. Looks totally dead.

     

    [...]


        0.817863] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested b8

    [    0.829570] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.8) status -22

    [    0.836860] pinctrl-single 44e10800.pinmux: could not request pin 21 on devie

    [    0.846843] pinctrl-single 44e10800.pinmux: pin 44e10978 already requested b2

    [    0.859139] pinctrl-single 44e10800.pinmux: pin-94 (gpio-leds-cape-lcd.12) s2

    [    0.867333] pinctrl-single 44e10800.pinmux: could not request pin 94 on devie

    did you edit uEnv.txt to have the following ?

     

    optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN  capemgr.enable_partno=BB-VIEW-LCD7-01

     

    the pinmux lines in the output you pasted suggest that something else has already claimed the pins before the lcd overlay loads. If that's true then the LCD won't be enabled and it will stay blank. This could be as simple as not properly disabling the two HDMI virtual capes, so something more complex

     

    try logging in and getting a list of what capemgr has done by typing

     

    + expand sourceview plain
    1. cat /sys/devices/bone_capemgr.*/slots 

     

    that should let you see if the Lcd overlay has loaded or not, and possibly what other overlay is blocking it.

    I checked that and here is dump:

     

    debian@beaglebone:~$ sudo cat /sys/devices/bone_capemgr.*/slots           
    [sudo] password for debian:                                               
    0: 54:PF---                                                              
    1: 55:PF---                                                              
    2: 56:PF---                                                              
    3: 57:PF---                                                              
    4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G        
    5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI         
    6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN       
    7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-VIEW-LCD7-01      

     

    so i suppose that HDMI and HDMIN are not loaded.

    but BB-BONE-LCD7 are 00A2 to A4. Couldnt it be the issue?

     

    BB-BONE-LCD4-01-00A0.dtbo       lbtf_usb.bin                          
    BB-BONE-LCD4-01-00A1.dtbo       libertas                              
    BB-BONE-LCD7-01-00A2.dtbo       libertas_cs.fw                        
    BB-BONE-LCD7-01-00A3.dtbo       libertas_cs_helper.fw                 

    BB-BONE-LCD7-01-00A4.dtbo


    And what Debian image are you using? The one from this www.element14.com/community/thread/32106/l/beagleboardorg-releases-debian-for-beaglebone-black thread?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Mipo01 wrote:

     

    I checked that and here is dump:

     

    debian@beaglebone:~$ sudo cat /sys/devices/bone_capemgr.*/slots           
    [sudo] password for debian:                                               
    0: 54:PF---                                                              
    1: 55:PF---                                                              
    2: 56:PF---                                                              
    3: 57:PF---                                                              
    4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G        
    5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI         
    6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN       
    7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-VIEW-LCD7-01      

    Ok, so that looks like it's loaded.  Next step is probably to look through the output of 'dmesg' to see if there's anything helpful there.

     

    Stupid question time: which BB-View do you have, the 7" or the 4.3" ?  If you have the 4.3" and you're loading the overlay for the 7" then you can expect it not to work as the display timings will be completely different.

     

    so i suppose that HDMI and HDMIN are not loaded.

    correct

    but BB-BONE-LCD7 are 00A2 to A4. Couldnt it be the issue?

     

    BB-BONE-LCD4-01-00A0.dtbo       lbtf_usb.bin                          
    BB-BONE-LCD4-01-00A1.dtbo       libertas                              
    BB-BONE-LCD7-01-00A2.dtbo       libertas_cs.fw                        
    BB-BONE-LCD7-01-00A3.dtbo       libertas_cs_helper.fw                 

    BB-BONE-LCD7-01-00A4.dtbo

    No, the BB-BONE-LCD* files refer to the CircuitCo LCD capes. These are different from the BB-View. The file you're loading will be called BB-VIEW-LCD7-01-00A0.dtbo

     

    And what Debian image are you using? The one from this www.element14.com/community/thread/32106/l/beagleboardorg-releases-debian-for-beaglebone-black thread?

    You'd have to ask Louis about that, I don't use Debian.  I just incorporated his changes into a newer kernel and got things working that way.

     

    There have been lots of bugfixes since the versions listed in that thread, you might want to have a look at http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Debian_Releases for more up to date versions.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Thank you selsinork, it is working now, I had improperly connected display :-D
    Working now ;-)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Thank you selsinork, it is working now, I had improperly connected display :-D
    Working now ;-)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Ah, it's always the simple things image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube