Just as a follow up…
I tried an old wheezy image I had:
bone-debian-7.11-console-armhf-2016-06-15-2gb.img.xz
That image is pretty bare bones so I had to install a number of packags.
Just for completeness these are what I installed:
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install locales
$ sudo dpkg-reconfigure locales ← set the correct locale to avoid other issues, I used en_US.UTF-8
$ sudo apt-get install git gcc g++ python libts-0.0-0 libts-bin python-pygame
This image has an old kernel:
$ uname -a
Linux beaglebone 3.8.13-bone80 #1 SMP Wed Jun 15 17:03:55 UTC 2016 armv7l GNU/Linux
So, now figure out what the touchscreen device node is:
$ ls /dev/input/by-path/ -la | grep tsc
lrwxrwxrwx 1 root root 9 Jan 1 2000 platform-tsc-event → …/event1
Now calibrate and test the touchscreen:
$ sudo TSLIB_TSDEVICE=/dev/input/event1 ts_calibrate
$ sudo TSLIB_TSDEVICE=/dev/input/event1 ts_test
Yeah! It appears to work (FYI, my screen is a 4DCAPE-70T).
I then tried this simple pygame python script:
$ cat test.py
#!/usr/bin/python
import pygame
import os
os.putenv(‘SDL_MOUSEDRV’, ‘TSLIB’)
os.putenv(‘SDL_MOUSEDEV’, ‘/dev/input/event1’)
pygame.init()
screen = pygame.display.set_mode((800, 480))
done = False
while not done:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
elif event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
done = True
pygame.display.flip()
$ sudo ./test.py
Success! (At least with wheezy…)
Note, this was done without any editing of the /boot/uEnv.txt so there are a number
of bone_capemgr issues in the dmesg output:
$ dmesg | grep bone
[ 0.000000] Linux version 3.8.13-bone80 (root@a3-imx6q-wandboard-2gb) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Wed Jun 15 17:03:55 UTC 2016
[ 0.545517] bone-capemgr bone_capemgr.9: Baseboard: ‘A335BNLT,00C0,5014BBBK0A84’
[ 0.545570] bone-capemgr bone_capemgr.9: compatible-baseboard=ti,beaglebone-black
[ 0.569663] bone-capemgr bone_capemgr.9: slot #0: ‘4D 7.0 LCD CAPE- 4DCAPE-70T ,00A3,4D SYSTEMS ,BB-BONE-LCD7-01’
[ 0.600250] bone-capemgr bone_capemgr.9: slot #1: No cape found
[ 0.637359] bone-capemgr bone_capemgr.9: slot #2: No cape found
[ 0.674468] bone-capemgr bone_capemgr.9: slot #3: No cape found
[ 0.680689] bone-capemgr bone_capemgr.9: slot #4: specific override
[ 0.680711] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 4
[ 0.680726] bone-capemgr bone_capemgr.9: slot #4: ‘Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G’
[ 0.680808] bone-capemgr bone_capemgr.9: slot #5: specific override
[ 0.680827] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 5
[ 0.680841] bone-capemgr bone_capemgr.9: slot #5: ‘Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI’
[ 0.680920] bone-capemgr bone_capemgr.9: slot #6: specific override
[ 0.680937] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 6
[ 0.680952] bone-capemgr bone_capemgr.9: slot #6: ‘Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN’
[ 0.681272] bone-capemgr bone_capemgr.9: loader: before slot-0 BB-BONE-LCD7-01:00A3 (prio 0)
[ 0.681287] bone-capemgr bone_capemgr.9: loader: check slot-0 BB-BONE-LCD7-01:00A3 (prio 0)
[ 0.681363] bone-capemgr bone_capemgr.9: loader: before slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.681376] bone-capemgr bone_capemgr.9: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.681446] bone-capemgr bone_capemgr.9: loader: before slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.681458] bone-capemgr bone_capemgr.9: loader: check slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.681492] bone-capemgr bone_capemgr.9: initialized OK.
[ 0.681961] bone-capemgr bone_capemgr.9: loader: after slot-0 BB-BONE-LCD7-01:00A3 (prio 0)
[ 0.681981] bone-capemgr bone_capemgr.9: slot #0: Requesting part number/version based 'BB-BONE-LCD7-01-00A3.dtbo
[ 0.681996] bone-capemgr bone_capemgr.9: slot #0: Requesting firmware ‘BB-BONE-LCD7-01-00A3.dtbo’ for board-name '4D 7.0 LCD CAPE- 4DCAPE-70T ', version ‘00A3’
[ 0.682015] bone-capemgr bone_capemgr.9: slot #0: dtbo ‘BB-BONE-LCD7-01-00A3.dtbo’ loaded; converting to live tree
[ 0.682575] bone-capemgr bone_capemgr.9: slot #0: #4 overlays
[ 0.684401] bone-capemgr bone_capemgr.9: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.686265] bone-capemgr bone_capemgr.9: loader: check slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.691385] bone-capemgr bone_capemgr.9: loader: before slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.691400] bone-capemgr bone_capemgr.9: loader: check slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.691417] bone-capemgr bone_capemgr.9: loader: check slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.692094] usb usb1: Manufacturer: Linux 3.8.13-bone80 musb-hcd
[ 0.693436] bone-capemgr bone_capemgr.9: slot #0: Applied #4 overlays.
[ 0.693452] bone-capemgr bone_capemgr.9: loader: done slot-0 BB-BONE-LCD7-01:00A3 (prio 0)
[ 0.693492] bone-capemgr bone_capemgr.9: loader: check slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.693518] bone-capemgr bone_capemgr.9: loader: check slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.693532] bone-capemgr bone_capemgr.9: loader: after slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.693555] bone-capemgr bone_capemgr.9: slot #5: Requesting firmware ‘cape-boneblack-hdmi-00A0.dtbo’ for board-name ‘Bone-Black-HDMI’, version ‘00A0’
[ 0.693586] bone-capemgr bone_capemgr.9: slot #5: dtbo ‘cape-boneblack-hdmi-00A0.dtbo’ loaded; converting to live tree
[ 0.694138] bone-capemgr bone_capemgr.9: slot #5: BB-BONELT-HDMI conflict P8.45 (#0:BB-BONE-LCD7-01)
[ 0.703711] bone-capemgr bone_capemgr.9: slot #5: Failed verification
[ 0.710451] bone-capemgr bone_capemgr.9: loader: failed to load slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 0.719926] bone-capemgr bone_capemgr.9: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.719940] bone-capemgr bone_capemgr.9: loader: after slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.719960] bone-capemgr bone_capemgr.9: slot #4: Requesting firmware ‘cape-bone-2g-emmc1.dtbo’ for board-name ‘Bone-LT-eMMC-2G’, version ‘00A0’
[ 0.719974] bone-capemgr bone_capemgr.9: slot #4: dtbo ‘cape-bone-2g-emmc1.dtbo’ loaded; converting to live tree
[ 0.720585] bone-capemgr bone_capemgr.9: slot #4: #2 overlays
[ 0.721154] bone-capemgr bone_capemgr.9: slot #4: Applied #2 overlays.
[ 0.721168] bone-capemgr bone_capemgr.9: loader: done slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.721300] bone-capemgr bone_capemgr.9: loader: check slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.721384] bone-capemgr bone_capemgr.9: loader: after slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 0.721409] bone-capemgr bone_capemgr.9: slot #6: Requesting firmware ‘cape-boneblack-hdmin-00A0.dtbo’ for board-name ‘Bone-Black-HDMIN’, version ‘00A0’
[ 0.721434] bone-capemgr bone_capemgr.9: slot #6: dtbo ‘cape-boneblack-hdmin-00A0.dtbo’ loaded; converting to live tree
[ 0.721620] bone-capemgr bone_capemgr.9: slot #6: BB-BONELT-HDMIN conflict P8.45 (#0:BB-BONE-LCD7-01)
[ 0.731291] bone-capemgr bone_capemgr.9: slot #6: Failed verification
[ 0.738031] bone-capemgr bone_capemgr.9: loader: failed to load slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[ 48.826031] usb usb2: Manufacturer: Linux 3.8.13-bone80 musb-hcd
Also, one strange issue I had.
I previously updated the bootloader on the eMMC when I was testing with Debian 9. In order
to get the BeagleBone to boot from the SD-Card I had to hold in the button when it was powered
on. I never had to do this before.
This is the output of /opt/scripts/tools/versions.sh
$ cd /opt/scripts/tools
$ git pull
$ sudo ./version.sh | grep bootloader
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2016.03-00001-g148e520]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2018.01-rc3-00002-gb33224]
The next time I powered on the board I didn’t have to hold the button.
Strange…
Regards,
Hartley