Repository navigation
Releases: cyryllo/fex_configuration
Release list
v0.4: Banana Pro + LeMaker LCD, touch fixed in the kernel (XFCE and minimal, Armbian trixie 6.18.59)
Armbian images for the LeMaker Banana Pro (Banana Pi Pro, Allwinner A20) with LeMaker LCD support on a mainline kernel. Each image supports all panels and touch works right after boot. Two variants: a ready-to-use XFCE desktop with the 7" panel enabled, and a minimal base image without a desktop and with the LCD disabled.
Status:
- 7" LVDS: display and touch confirmed working
- 5" RGB: display confirmed working, touch uses the same controller and wiring as the 7" (not tested yet)
- 3.5" RGB: untested (no hardware), shares almost everything with the 5", test reports are welcome
- also works on the original Banana Pi (non-"Pro")
What's new compared to v0.3
- touch fixed in the kernel instead of a workaround: at boot the first I2C transfer to the touch controller always fails with a bus error, the I2C adapter then recovers the bus. A small patch makes the
edt-ft5x06driver retry the identification once (identification failed, retryingindmesg), so thelemaker-touch-retryservice is no longer needed and is not installed anymore - tests showed that neither powering the controller from the panel supply nor holding its reset line high from early boot avoids the first error, so the retry is the clean fix. It is also the base for getting LeMaker LCD support into the official Armbian images
If you run v0.3 and touch works, you don't have to update: the service there does the same job.
Images
| File | Desktop | LCD at first boot | For |
|---|---|---|---|
Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_xfce_desktop.img.xz |
XFCE (minimal tier) | 7" enabled | ready to use with the 7" panel |
Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_minimal.img.xz |
none (console) | disabled (HDMI only) | a clean base for your own setup: kiosk, headless, your own desktop or app |
Both: Armbian 26.11.0-trunk (unofficial build), Debian 13 trixie, kernel 6.18.59 (current) with the FT5x06 touch driver (edt-ft5x06) and the retry patch, built with the Armbian build framework from the scripts in armbian-build/. Both include overlays for all three panels, the lemaker-lcd command, evtest and i2c-tools. The only differences are the desktop and which panel is enabled, both can be changed after boot (see below).
On the minimal image you log in on the HDMI console (or over SSH, it gets an address via DHCP). You can install a desktop later with armbian-config.
Flashing
Use USBImager or balenaEtcher (both handle .xz directly), or:
# XFCE image
xz -dc Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_xfce_desktop.img.xz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
# minimal image
xz -dc Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_minimal.img.xz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
Check the download with sha256sum -c --ignore-missing SHA256SUMS (--ignore-missing skips the image you did not download).
Connect the panel before powering on. U-Boot messages appear only on HDMI, the LCD shows a picture once the kernel starts. On the first boot the Armbian wizard asks for a root password and a new user. On the XFCE image the desktop starts afterwards, open a terminal with Ctrl+Alt+T.
Which panel is enabled, and how to change it
- XFCE image: the LeMaker 7" panel is enabled by default.
- Minimal image: the LCD is disabled, the picture goes to HDMI only. Enable your panel with
sudo lemaker-lcd 7(or5,35) and reboot.
HDMI keeps working in both cases. Every change takes effect after a reboot.
/boot is on the ext4 system partition, so armbianEnv.txt cannot be edited from Windows before the first boot. Boot once with a monitor on HDMI (or log in over SSH), switch the panel and reboot. On Linux you can also mount the SD card and edit boot/armbianEnv.txt on it before the first boot.
Option 1: the lemaker-lcd command
Open a terminal (Ctrl+Alt+T on the XFCE desktop, or simply log in on the minimal image) and run:
sudo lemaker-lcd # shows which panel is enabled
sudo lemaker-lcd 5 # switch to the 5" panel
sudo lemaker-lcd 35 # switch to the 3.5" panel
sudo lemaker-lcd 7 # switch back to the 7" panel
sudo lemaker-lcd off # disable the LCD completely (HDMI only)
sudo reboot
The command only changes the LeMaker panel, other overlays you may use stay untouched. The previous file is saved as /boot/armbianEnv.txt.bak.
Option 2: editing /boot/armbianEnv.txt by hand
sudo nano /boot/armbianEnv.txt
At the end of the file there is this block. Exactly one line must be uncommented (without #), for example to use the 5" panel:
# >>> lemaker-lcd
# LeMaker LCD: uncomment ONE line below (or run: sudo lemaker-lcd 35|5|7|off)
#user_overlays=bananapro-lemaker-lcd35
user_overlays=bananapro-lemaker-lcd5
#user_overlays=bananapro-lemaker-lcd7
# <<< lemaker-lcd
On the minimal image all three lines start with # (LCD disabled), remove the # from the line of your panel. To disable the LCD, put # in front of all three lines. If more than one line is uncommented, only the last one is used. Save with Ctrl+O, exit with Ctrl+X, then sudo reboot.
Reporting results
Please describe what you see on the screen (black / backlight only / picture OK), whether touch works and post the output of:
dmesg | grep -iE "sun4i|lvds|panel|edt|pwm|i2c-2"
grep -A1 -i edt /proc/bus/input/devices
Note: an apt upgrade may install the official Armbian kernel without the touch driver and the patch. To keep touch working: sudo apt-mark hold linux-image-current-sunxi linux-dtb-current-sunxi.
v0.3: Banana Pro + LeMaker LCD with working touch (XFCE and minimal, Armbian trixie 6.18.59)
Armbian images for the LeMaker Banana Pro (Banana Pi Pro, Allwinner A20) with LeMaker LCD support on a mainline kernel. Each image supports all panels, touch now works. Two variants: a ready-to-use XFCE desktop with the 7" panel enabled, and a minimal base image without a desktop and with the LCD disabled.
Status:
- 7" LVDS: display and touch confirmed working
- 5" RGB: display confirmed working, touch uses the same controller and wiring as the 7" (not tested yet)
- 3.5" RGB: untested (no hardware), shares almost everything with the 5", test reports are welcome
- also works on the original Banana Pi (non-"Pro")
What's new compared to v0.1
- touch fixed: PH7 (
ctp_wakeupin the old fex files) is actually the RESET line of the touch controller, the overlays now describe it asreset-gpios, so the driver waits long enough for the controller to start - new
lemaker-touch-retryservice: at boot the driver's first attempt always fails with an I2C bus error, the service retries after boot so touch works right away - one image for all panels instead of one image per panel, switch the panel with the new
lemaker-lcdcommand or by uncommenting one line in/boot/armbianEnv.txt - XFCE desktop image with the 7" panel enabled, and a minimal image without a desktop and with the LCD disabled, as a base for your own setup
evtestandi2c-toolspreinstalled- kernel 6.18.59
Images
| File | Desktop | LCD at first boot | For |
|---|---|---|---|
Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_xfce_desktop.img.xz |
XFCE (minimal tier) | 7" enabled | ready to use with the 7" panel, testing touch |
Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_minimal.img.xz |
none (console) | disabled (HDMI only) | a clean base for your own setup: kiosk, headless, your own desktop or app |
Both: Armbian 26.11.0-trunk (unofficial build), Debian 13 trixie, kernel 6.18.59 (current), built with the Armbian build framework from the scripts in armbian-build/. Both include the FT5x06 touch driver (edt-ft5x06), the lemaker-touch-retry service, overlays for all three panels, the lemaker-lcd command, evtest and i2c-tools. The only differences are the desktop and which panel is enabled, both can be changed after boot (see below).
On the minimal image you log in on the HDMI console (or over SSH, it gets an address via DHCP). You can install a desktop later with armbian-config.
Flashing
Use USBImager or balenaEtcher (both handle .xz directly), or:
# XFCE image
xz -dc Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_xfce_desktop.img.xz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
# minimal image
xz -dc Armbian-unofficial_26.11.0-trunk_Bananapipro_trixie_current_6.18.59_minimal.img.xz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
Check the download with sha256sum -c --ignore-missing SHA256SUMS (--ignore-missing skips the image you did not download).
Connect the panel before powering on. U-Boot messages appear only on HDMI, the LCD shows a picture once the kernel starts. On the first boot the Armbian wizard asks for a root password and a new user. On the XFCE image the desktop starts afterwards, open a terminal with Ctrl+Alt+T.
Which panel is enabled, and how to change it
- XFCE image: the LeMaker 7" panel is enabled by default.
- Minimal image: the LCD is disabled, the picture goes to HDMI only. Enable your panel with
sudo lemaker-lcd 7(or5,35) and reboot.
HDMI keeps working in both cases. Every change takes effect after a reboot.
/boot is on the ext4 system partition, so armbianEnv.txt cannot be edited from Windows before the first boot. Boot once with a monitor on HDMI (or log in over SSH), switch the panel and reboot. On Linux you can also mount the SD card and edit boot/armbianEnv.txt on it before the first boot.
Option 1: the lemaker-lcd command
Open a terminal (Ctrl+Alt+T on the XFCE desktop, or simply log in on the minimal image) and run:
sudo lemaker-lcd # shows which panel is enabled
sudo lemaker-lcd 5 # switch to the 5" panel
sudo lemaker-lcd 35 # switch to the 3.5" panel
sudo lemaker-lcd 7 # switch back to the 7" panel
sudo lemaker-lcd off # disable the LCD completely (HDMI only)
sudo reboot
The command only changes the LeMaker panel, other overlays you may use stay untouched. The previous file is saved as /boot/armbianEnv.txt.bak.
Option 2: editing /boot/armbianEnv.txt by hand
sudo nano /boot/armbianEnv.txt
At the end of the file there is this block. Exactly one line must be uncommented (without #), for example to use the 5" panel:
# >>> lemaker-lcd
# LeMaker LCD: uncomment ONE line below (or run: sudo lemaker-lcd 35|5|7|off)
#user_overlays=bananapro-lemaker-lcd35
user_overlays=bananapro-lemaker-lcd5
#user_overlays=bananapro-lemaker-lcd7
# <<< lemaker-lcd
On the minimal image all three lines start with # (LCD disabled), remove the # from the line of your panel. To disable the LCD, put # in front of all three lines. If more than one line is uncommented, only the last one is used. Save with Ctrl+O, exit with Ctrl+X, then sudo reboot.
Already running v0.1?
The easiest way is to flash one of the new images. If you want to keep your system, update the overlays and install the touch service and the lemaker-lcd command from the repository:
git clone https://github.com/cyryllo/fex_configuration.git
cd fex_configuration
for f in overlays/bananapro-lemaker-lcd*.dts; do sudo dtc -@ -q -I dts -O dtb -o /boot/overlay-user/$(basename $f .dts).dtbo $f; done
sudo install -m 0755 armbian-build/lemaker-touch-retry armbian-build/lemaker-lcd /usr/local/sbin/
sudo install -m 0644 armbian-build/lemaker-touch-retry.service /etc/systemd/system/
sudo systemctl enable lemaker-touch-retry.service
sudo lemaker-lcd 7 # your panel: 7, 5 or 35
sudo reboot
Reporting results
Please describe what you see on the screen (black / backlight only / picture OK), whether touch works and post the output of:
dmesg | grep -iE "sun4i|lvds|panel|edt|pwm|i2c-2"
journalctl -b -u lemaker-touch-retry
grep -A1 -i edt /proc/bus/input/devices
Note: an apt upgrade may install the official Armbian kernel without the touch driver. To keep touch working: sudo apt-mark hold linux-image-current-sunxi linux-dtb-current-sunxi.
Banana Pro + LeMaker LCD, Armbian trixie 6.18.58 (test images)
Armbian images for the LeMaker Banana Pro (Banana Pi Pro, Allwinner A20) with LeMaker LCD support on a mainline kernel.
Status: not yet tested on hardware. The overlays compile and apply correctly to the Banana Pro device tree from this kernel. Hardware tests on the 5" and 7" panels are coming, the 3.5" panel is untested (I don't have it). Test reports are welcome.
Images
| File | Panel enabled |
|---|---|
..._lcd35_minimal.img.xz |
LeMaker 3.5" RGB 320x240 (BL035-RGB-002) |
..._lcd5_minimal.img.xz |
LeMaker 5" RGB 800x480 |
..._lcd7_minimal.img.xz |
LeMaker 7" LVDS 1024x600 |
All images: Armbian 26.11.0-trunk (unofficial build), Debian 13 trixie minimal, kernel 6.18.58 (current), built with the Armbian build framework from the scripts in armbian-build/.
Changes compared to the official Armbian image:
- FT5x06 touch driver (
edt-ft5x06) enabled as a module - overlays for all three panels in
/boot/overlay-user/, sources in/usr/local/share/lemaker-lcd/ - the selected panel enabled in
/boot/armbianEnv.txt(user_overlays=)
Each image contains all overlays, so you can switch panels by editing the user_overlays= line in /boot/armbianEnv.txt and rebooting.
Flashing
Use USBImager or balenaEtcher (both handle .xz directly), or:
xz -dc Armbian-..._lcd7_minimal.img.xz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
Connect the panel before powering on. U-Boot messages appear only on HDMI, the LCD shows a picture once the kernel starts.
Check the download with sha256sum -c SHA256SUMS.
Reporting results
Please describe what you see on the screen (black / backlight only / picture OK) and post the output of:
dmesg | grep -iE "sun4i|lvds|panel|edt|pwm"
ls /sys/class/backlight/
lsmod | grep edt
Note: an apt upgrade may install the official Armbian kernel without the touch driver. To keep touch working: sudo apt-mark hold linux-image-current-sunxi linux-dtb-current-sunxi.