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 23832 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

    Hello Everybody,

    i try to run the BB-View 7 since 7 days.

    It works but i like to use Debian.

    I use bone-debian-7.4-2014-04-23-2gb.img from there: Beagleboard:BeagleBoneBlack Debian - eLinux.org

    if I copy the BB-VIEW-LCD7-01-00A0.dtbo file to /lib/firmware

    I can start the console manuallya

    If I start automatic I get

    failed to load firmware 'BB-VIEW-LCD7-01-00A0.dtbo'<\r><\n>

    The dtbo file I get from there: BB-VIEW Angstrom Image\kernel_modules\kernel_modules\.\lib\firmware\

     

    U-Boot SPL 2014.04-00014-g47880f5 (Apr 22 2014 - 13:23:54)<\r><\n>

    reading args<\r><\n>

    spl_load_image_fat_os: error reading image args, err - -1<\r><\n>

    reading u-boot.img<\r><\n>

    reading u-boot.img<\r><\n>

    <\r><\n>

    <\r><\n>

    U-Boot 2014.04-00014-g47880f5 (Apr 22 2014 - 13:23:54)<\r><\n>

    <\r><\n>

    I2C:   ready<\r><\n>

    DRAM:  512 MiB<\r><\n>

    NAND:  0 MiB<\r><\n>

    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1<\r><\n>

    *** Warning - readenv() failed, using default environment<\r><\n>

    <\r><\n>

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

    cpsw, usb_ether<\r><\n>

    Hit any key to stop autoboot:  1 <\b><\b><\b> 0 <\r><\n>

    gpio: pin 53 (gpio 53) value is 1<\r><\n>

    Card did not respond to voltage select!<\r><\n>

    mmc0(part 0) is current device<\r><\n>

    Card did not respond to voltage select!<\r><\n>

    gpio: pin 56 (gpio 56) value is 0<\r><\n>

    gpio: pin 55 (gpio 55) value is 0<\r><\n>

    gpio: pin 54 (gpio 54) value is 0<\r><\n>

    mmc1(part 0) is current device<\r><\n>

    gpio: pin 54 (gpio 54) value is 1<\r><\n>

    SD/MMC found on device 1<\r><\n>

    reading uEnv.txt<\r><\n>

    1467 bytes read in 7 ms (204.1 KiB/s)<\r><\n>

    gpio: pin 55 (gpio 55) value is 1<\r><\n>

    Loaded environment from uEnv.txt<\r><\n>

    Importing environment from mmc ...<\r><\n>

    Checking if uenvcmd is set ...<\r><\n>

    gpio: pin 56 (gpio 56) value is 1<\r><\n>

    Running uenvcmd ...<\r><\n>

    reading zImage<\r><\n>

    3717760 bytes read in 209 ms (17 MiB/s)<\r><\n>

    reading initrd.img<\r><\n>

    2868962 bytes read in 179 ms (15.3 MiB/s)<\r><\n>

    reading /dtbs/am335x-boneblack.dtb<\r><\n>

    25080 bytes read in 13 ms (1.8 MiB/s)<\r><\n>

    Kernel image @ 0x82000000 [ 0x000000 - 0x38ba80 ]<\r><\n>

    ## Flattened Device Tree blob at 88000000<\r><\n>

       Booting using the fdt blob at 0x88000000<\r><\n>

       Using Device Tree in place at 88000000, end 880091f7<\r><\n>

    <\r><\n>

    Starting kernel ...<\r><\n>

    <\r><\n>

    Uncompressing Linux... done, booting the kernel.<\r><\n>

    [    0.382336] omap2_mbox_probe: platform not supported<\r><\n>

    [    0.550018] tps65217-bl tps65217-bl: no platform data provided<\r><\n>

    [    0.584113] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    1.874213] omap_i2c 4819c000.i2c: controller timed out<\r><\n>

    [    1.885974] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    1.897632] bone-capemgr bone_capemgr.9: slot #0: No cape found<\r><\n>

    [    1.903891] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    1.915253] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    1.926987] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    2.946496] omap_i2c 4819c000.i2c: controller timed out<\r><\n>

    [    2.958180] bone-capemgr bone_capemgr.9: slot #1: No cape found<\r><\n>

    [    2.964444] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    2.975818] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    2.987518] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    4.014830] omap_i2c 4819c000.i2c: controller timed out<\r><\n>

    [    4.026538] bone-capemgr bone_capemgr.9: slot #2: No cape found<\r><\n>

    [    4.033128] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    4.046113] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    4.057830] omap_i2c 4819c000.i2c: Arbitration lost<\r><\n>

    [    4.069505] bone-capemgr bone_capemgr.9: slot #3: No cape found<\r><\n>

    [    4.088070] omap_hsmmc mmc.5: of_parse_phandle_with_args of 'reset' failed<\r><\n>

    [    4.122576] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested by 44e10800.pinmux; cannot claim for gpio-leds.8<\r><\n>

    [    4.134262] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.8) status -22<\r><\n>

    [    4.141561] pinctrl-single 44e10800.pinmux: could not request pin 21 on device pinctrl-single<\r><\n>

    Loading, please wait...<\r><\n>

    [    4.445692] bone-capemgr bone_capemgr.9: failed to load firmware 'BB-VIEW-LCD7-01-00A0.dtbo'<\r><\n>

    [    4.454608] bone-capemgr bone_capemgr.9: loader: failed to load slot-7 BB-VIEW-LCD7-01:00A0 (prio 0)<\r><\n>

    [    5.650412] sd 0:0:0:0: [sda] No Caching mode page present<\r><\n>

    [    5.656223] sd 0:0:0:0: [sda] Assuming drive cache: write through<\r><\n>

    [    5.668985] sd 0:0:0:0: [sda] No Caching mode page present<\r><\n>

    [    5.674817] sd 0:0:0:0: [sda] Assuming drive cache: write through<\r><\n>

    [    5.691856] sd 0:0:0:0: [sda] No Caching mode page present<\r><\n>

    [    5.697706] sd 0:0:0:0: [sda] Assuming drive cache: write through<\r><\n>

    Scanning for Btrfs filesystems<\r><\n>

    systemd-fsck[222]: rootfs: clean, 77134/111104 files, 361806/444160 blocks<\r><\n>

    <\r><\n>

    Debian GNU/Linux 7 beaglebone ttyO0<\r><\n>

    <\r><\n>

    default username:password is [debian:temppwd]<\r><\n>

    <\r><\n>

    Support/FAQ: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian<\r><\n>

    <\r><\n>

    The IP Address for usb0 is: 192.168.7.2<\r><\n>

    beaglebone login: [   25.179512] libphy: PHY 4a101000.mdio:01 not found<\r><\n>

    [   25.184879] net eth0: phy 4a101000.mdio:01 not found on slave 1<\r><\n>

    [   30.857724] libphy: PHY 4a101000.mdio:01 not found<\r><\n>

    [   30.862876] net eth0: phy 4a101000.mdio:01 not found on slave 1<\r><\n>

    [   31.272384] libphy: PHY 4a101000.mdio:01 not found<\r><\n>

    [   31.277547] net eth0: phy 4a101000.mdio:01 not found on slave 1<\r><\n>

    [   84.460608] pinctrl-single 44e10800.pinmux: pin 44e10978 already requested by 4819c000.i2c; cannot claim for gpio-leds-cape-lcd.13<\r><\n>

    [   84.473302] pinctrl-single 44e10800.pinmux: pin-94 (gpio-leds-cape-lcd.13) status -22<\r><\n>

    [   84.481778] pinctrl-single 44e10800.pinmux: could not request pin 94 on device pinctrl-single<\r><\n>

    [   84.848915] tilcdc 4830e000.fb: timeout waiting for framedone<\r><\n>

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

    To whom it may concern,

    I have throw away the B-VIEW and buy an Display from 4D-Systems.

    Plug BBB in an it runs without any Problem.

    • 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

    To whom it may concern,

    I have throw away the B-VIEW and buy an Display from 4D-Systems.

    Plug BBB in an it runs without any Problem.

    • 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

    Alexander Wetzel  

    first its 16 bit RGB , while this one i do belive support 24 bit(if you use different drivers)

    second some people may like this flexible cable.... so it's just personal priorities ....


    I have both and they both work just fine !!! (colours appears just fine as well)

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

    Yes with Kernel compiling it works but not out of the Box. My goal is to write some programs with VisualStudio and VisualGDB. so I want to use Debian and this won't work for me. So I'm happy with the other display.

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

    I don't know what your program does ..... but in most cases you can avoid using xorg ....  example: we have wrote some network application , with GUI when its running we are only using 80-100MB ram , i don't think you will get that with xorg. and by "debian" you are referring to gnome ?  since this changes are done to debian based distributions. For out of the box solution use provided Angstrom. Once you compile kernel you can make  flasher with your version of kernel  ....

     

    Yes you need to spend some time for this cape but there are some advantages(16/24 bit RGB, flexible cable ), so if you didn't do research before purchase don't blame the cape image .... it's functional

     

    I had 4D 4 inch as my first display , and then upgraded to BB-view 7 inch, both works just fine.  One thing I do not like about bb-view 7 that it does not provide separate power as an option and i was not able to find full schematics for it to add one ...

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

    Belive me, I have done research. And I was happy that it comes from Farnell, but It don't work for me. The cable I don't like also. Some Years ago we have made some projects with debian and it works fine. So I would like to use debian again.

    Let's stop this discussion, you are happy with your display and I'm happy with my display.

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

    This is something I can backup. I have been struggling to get this to work.  In my experience, I have not been able to find the right source files, have errors running basic unzipping operations given in manual and a how-to post on getting debian patched then applying the patch.   If anyone is interested, I get stuck here:

    user@ubun******:~/Desktop/BB VIEW Debian Source Code$ cp ./kernel/kernel/drivers/input/touchscreen/ti_am335x_tsc.c ~Desktop/bb-view/linux-dev/KERNEL/drivers/input/touchscreen/
    cp: cannot create regular file ‘~Desktop/bb-view/linux-dev/KERNEL/drivers/input/touchscreen/’: No such file or directory
    user@ubun******:~/Desktop/BB VIEW Debian Source Code$ cp ./kernel/kernel/firmware/capes/BB-VIEW-LCD7-01-00A0.dts  ~/bb-view/linux-dev/KERNEL/firmware/capes/
    cp: cannot create regular file ‘/home/user/bb-view/linux-dev/KERNEL/firmware/capes/’: No such file or directory

     

    I feel like getting one of these screens to work accordingly requires a a bit of patience and much more effort than it should!

     

    Any constructive input is greatly appreciated by anyone!

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

    So, I managed to get a display on my screen! Input works too!  I decided it was too much for me at the time to try compiling debian with this lcd patch. I ended up using already patched files from the same download centre as the source.  The patch is much simpler with it and to scp files to the bbb instead of using the hputility to transfer via properly formatted usb. Unfortunately, after using the procedure below, my ethernet has suddenly stopped working.  I remember disabling ipv6 before the patch and it worked with ipv4.   Below are the files and commands I used followed by a reboot:

    cp BB\ VIEW\ Debian\ Image/zImage /boot/uboot 
    cp -f BB\ VIEW\ Debian\ Image/*.dtb /boot/uboot/dtbs
    tar xvf kernel_modules.tar.gz -C /
    cp -f xorg.conf /etc/X11/ 
    root@beaglebone:~# cd /boot/uboot/dtbs
    root@beaglebone:~# cp am335x-boneblack-lcd7.dtb am335x-boneblack.dtb
    root@beaglebone:~# sync

     

    It mostly boils down to how much I still need to know about the linux device tree.

     

    Thanks for any and all advice!

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

    Hi All,

     

    I've been fighting my BB VIEW 7" for over a week. The BBB would boot perfectly with the Element14 provided kernel, unless the screen was connected, in that case the system would power off about 2 seconds into the boot sequence. Eventually I found out that I was doing exactly one thing wrong: the power supply. I was using my laptop to power the BBB and apparently the laptop USB connector (apple macbook air) is not able to power the BBB with the 7" screen with Debian. I had no problems with the TI demo image so I had no suspicions against the power supply, until I decided it could not hurt to try a different supply. So all, be ware off the power supply!

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

    Have you checked that eth0 is still enabled in /etc/network/interfaces after you applied the patch? I had the same issue.

     

    Dragan

    • 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