Wow, Nice work!
I am AMAZED at how they (seeed) nurfed this product execution UP . No doubt with TERRIBLE software/firmware installation and implementation. a very BASIC thing like "Apt, Get, Update…WTH?
I certainly hope they get it figured out and solved B4 I order one FORSURE!!!
It’s a Very Nice piece of Hardware… Lot’s of options and interface capabilities.
I do Understand there was an intension for a user to define OS. and install it.
Roll your own , so to speak. FAIL…
SEEED , needs to Inform the users on the Wiki of the previous debacle and Layout a clear repeatable procedure to Un-screw this Light bulb. and fix any prior to shipping!
My .02
GL PJ
Success !!!
Nice work.
Attached is the log output.
pi@mana-controller:~ $ git clone --depth 1 https://github.com/matsujirushi/seeed-linux-dtoverlays
fatal: destination path 'seeed-linux-dtoverlays' already exists and is not an empty directory.
pi@mana-controller:~ $ rm -rf seeed-linux-dtoverlays
pi@mana-controller:~ $ git clone --depth 1 https://github.com/matsujirushi/seeed-linux-dtoverlays
Cloning into 'seeed-linux-dtoverlays'...
remote: Enumerating objects: 861, done.
remote: Counting objects: 100% (861/861), done.
remote: Compressing objects: 100% (707/707), done.
remote: Total 861 (delta 158), reused 695 (delta 124), pack-reused 0
Receiving objects: 100% (861/861), 2.15 MiB | 1.85 MiB/s, done.
Resolving deltas: 100% (158/158), done.
pi@mana-controller:~ $ cd seeed-linux-dtoverlays/
pi@mana-controller:~/seeed-linux-dtoverlays $ sudo ./scripts/reTerminal.sh --keep-kernel
### Install required tool packages
Get:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease [15.0 kB]
Get:2 http://archive.raspberrypi.org/debian bullseye InRelease [23.6 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages [13.2 MB]
Get:4 http://archive.raspberrypi.org/debian bullseye/main armhf Packages [313 kB]
Fetched 13.6 MB in 20s (697 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
dkms is already the newest version (2.8.4-3).
The following package was automatically installed and is no longer required:
raspinfo
Use 'sudo apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
### Keep current system kernel not to change
The kernel & headers use package version: 1.20230405-1
### Uninstall previous dkms module
------------------------------
Deleting module version: 0.1
completely from the DKMS tree.
------------------------------
Done.
### Install required kernel package
debian package raspberrypi-kernel-headers_1.20230405-1_armhf.deb already installed.
KBUILD: /lib/modules/6.1.21-v7l+/build
Creating symlink /var/lib/dkms/mipi_dsi/0.1/source ->
/usr/src/mipi_dsi-0.1
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area...
make -j4 KERNELRELEASE=6.1.21-v7l+ all KVERSION=6.1.21-v7l+....
cleaning build area...
DKMS: build completed.
mipi_dsi.ko.xz:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/6.1.21-v7l+/updates/
depmod.......
DKMS: install completed.
Creating symlink /var/lib/dkms/ltr30x/0.1/source ->
/usr/src/ltr30x-0.1
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area...
make -j4 KERNELRELEASE=6.1.21-v7l+ all KVERSION=6.1.21-v7l+....
cleaning build area...
DKMS: build completed.
als_ltr30x.ko.xz:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/6.1.21-v7l+/updates/
depmod.......
DKMS: install completed.
Creating symlink /var/lib/dkms/lis3lv02d/0.1/source ->
/usr/src/lis3lv02d-0.1
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area...
make -j4 KERNELRELEASE=6.1.21-v7l+ all KVERSION=6.1.21-v7l+....
cleaning build area...
DKMS: build completed.
lis331dlh-i2c.ko.xz:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/6.1.21-v7l+/updates/
depmod.......
DKMS: install completed.
Creating symlink /var/lib/dkms/bq24179_charger/0.1/source ->
/usr/src/bq24179_charger-0.1
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area...
make -j4 KERNELRELEASE=6.1.21-v7l+ all KVERSION=6.1.21-v7l+....
cleaning build area...
DKMS: build completed.
bq24179_charger.ko.xz:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/6.1.21-v7l+/updates/
depmod.......
DKMS: install completed.
DTC overlays/rpi/reTerminal-overlay.dtbo
overlays/rpi/reTerminal-overlay.dts:23.15-33.5: Warning (avoid_unnecessary_addr_size): /fragment@1/__overlay__: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property
'overlays/rpi/reTerminal-overlay.dtbo' -> '/boot/overlays/reTerminal.dtbo'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/plymouth/seeed/seeed.plymouth' -> '/usr/share/plymouth/themes/seeed/seeed.plymouth'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/plymouth/seeed/seeed.script' -> '/usr/share/plymouth/themes/seeed/seeed.script'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/plymouth/seeed/splash.png' -> '/usr/share/plymouth/themes/seeed/splash.png'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/plymouth/seeed/splash_v.png' -> '/usr/share/plymouth/themes/seeed/splash_v.png'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/10-disp.conf' -> '/usr/share/X11/xorg.conf.d/10-disp.conf'
'/home/pi/seeed-linux-dtoverlays/extras/reTerminal/resources/plymouth/plymouthd.conf' -> '/etc/plymouth/plymouthd.conf'
No state is present for card vc4hdmi0
alsa-lib main.c:1014:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2
Found hardware: "vc4-hdmi" "" "" "" ""
Hardware is initialized using a generic method
No state is present for card vc4hdmi0
No state is present for card vc4hdmi1
alsa-lib main.c:1014:(snd_use_case_mgr_open) error: failed to import hw:1 use case configuration -2
Found hardware: "vc4-hdmi" "" "" "" ""
Hardware is initialized using a generic method
No state is present for card vc4hdmi1
------------------------------------------------------
Please reboot your device to apply all settings
Enjoy!
------------------------------------------------------
pi@mana-controller:~/seeed-linux-dtoverlays $ sudo reboot
And the kernel version
pi@mana-controller:~ $ uname -na
Linux mana-controller 6.1.21-v7l+ #1642 SMP Mon Apr 3 17:22:30 BST 2023 armv7l GNU/Linux
and the /boot/config.txt – which looks like it was modified slightly by the dtoverlay script you’ve provided. (it’s ok).
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
# Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
# Automatically load overlays for detected cameras
camera_auto_detect=1
# Automatically load overlays for detected DSI displays
display_auto_detect=1
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2
# Disable compensation for displays with overscan
disable_overscan=1
[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1
[all]
[pi4]
# Run as fast as firmware / board allows
arm_boost=1
[all]
enable_uart=1
dtoverlay=dwc2,dr_mode=host
dtparam=ant2
dtoverlay=reTerminal-bridge
# to fix terminal screen
arm_64bit=0
disable_splash=1
ignore_lcd=1
dtoverlay=vc4-kms-v3d-pi4
dtoverlay=i2c3,pins_4_5
gpio=13=pu
dtoverlay=reTerminal,tp_rotate=1
Can you contribute this to the upstream provider? They must not know about this issue.
I completely agree.
I will make a request to Seeed’s reTerminal Team.
Thank you for confirming.
I’m glad it’s working well.
I will make a request to Seeed’s reTerminal Team.
I tried a second machine and found it was not working. I will need to dig deeper to find out what might be causing the issue.
For those following along, the git clone command I used was from @takashi 's own repository:
git clone --depth 1 https://github.com/matsujirushi/seeed-linux-dtoverlays
Hi @beadon ,
Oh…
Could you tell me details?
- Log when reTerminal2.sh is executed
-
cat /boot/firmware/config.txt
orcat /boot/config.txt
lsmod | grep mipi_dsi
dmesg | grep mipi_dsi
Yes, let me get back to you shortly. The device is far away. I also suspect you’re right that the kernel modules may have been loaded incorrectly. Its possible that the kernel modules from an old attempt may be sitting around and caused issues when this (new) fix was applied.
I have reached out to an engineer closer to the device to snag this information on our behalf.
Thank you! I have struggled with this for two years. I had put this on “back-burner” until now, when I tried one more time. 03/13/2024.
This step actually worked for me!
Thank you again.
Hello, our engineers are reviewing and addressing this issue. If there is any result, we will reply in this post as soon as possible
Ok, I have this information now. It looks like there might be a problem with I2C ?
Confirming it’s 32-bit
sv@raspberrypi:~ $ uptime
08:59:22 up 2 min, 2 users, load average: 1.22, 0.58, 0.23
sv@raspberrypi:~ $ uname -na
Linux raspberrypi 6.1.21-v7l+ #1642 SMP Mon Apr 3 17:22:30 BST 2023 armv7l GNU/Linux
Checking kernel modules
sv@raspberrypi:~ $ lsmod | grep mipi_dsi
mipi_dsi 28672 0
drm 544768 9 drm_dma_helper,mipi_dsi,v3d,vc4,drm_shmem_helper,drm_display_helper,gpu_sched,drm_kms_helper
backlight 20480 2 mipi_dsi,drm
checking startup messages
sv@raspberrypi:~ $ dmesg | grep mipi_dsi
[ 0.056371] platform fe700000.dsi: Fixed dependency cycle(s) with /soc/i2c@7e804000/mipi_dsi@45
[ 8.155181] mipi_dsi: Initialize kernel module
[ 8.155201] mipi_dsi: (i2c_md_init) Add I2C driver
[ 8.155317] mipi_dsi: Probe I2C driver
[ 8.155328] mipi_dsi: (i2c_md_probe) Start
[ 8.170878] mipi_dsi 1-0045: I2C read id failed: -5
[ 8.171120] mipi_dsi: (i2c_md_init) Register MIPI-DSI driver
Checking boot flags
sv@raspberrypi:~ $ cat /boot/config.txt
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
# Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
# Automatically load overlays for detected cameras
camera_auto_detect=1
# Automatically load overlays for detected DSI displays
display_auto_detect=1
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2
# Disable compensation for displays with overscan
disable_overscan=1
[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1
[all]
[pi4]
# Run as fast as firmware / board allows
arm_boost=1
[all]
enable_uart=1
dtoverlay=dwc2,dr_mode=host
dtparam=ant2
dtoverlay=reTerminal-bridge
arm_64bit=0
disable_splash=1
ignore_lcd=1
dtoverlay=vc4-kms-v3d-pi4
dtoverlay=i2c3,pins_4_5
gpio=13=pu
dtoverlay=reTerminal,tp_rotate=1
I appreciate your assistance !
Hi @beadon ,
Thanks for information!!!
- Driver(mipi_dsi) is loaded
- Driver(mipi_dsi) is FAILING.
mipi_dsi 1-0045: I2C read id failed: -5
- Loading
reTerminal-bridge
dtoverlay
- Are you using reTerminal E10-1? Can you remove reTerminal E10-1 and comment
dtoverlay=reTerminal-bridge
to check? - Do you know the version of the STM32 firmware? How to troubleshoot the black screen issue on reTerminal | Seeed Studio Wiki
No, the reTerminal E10-1 expansion is not in use, we do not plan to use it.
– /boot/config.txt line disabled, rebooted.
also commented reTerminal to check i2c. …
sv@raspberrypi:~ $ cat /boot/config.txt
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
# Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
# Automatically load overlays for detected cameras
camera_auto_detect=1
# Automatically load overlays for detected DSI displays
display_auto_detect=1
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2
# Disable compensation for displays with overscan
disable_overscan=1
[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1
[all]
[pi4]
# Run as fast as firmware / board allows
arm_boost=1
[all]
enable_uart=1
dtoverlay=dwc2,dr_mode=host
dtparam=ant2
#dtoverlay=reTerminal-bridge
arm_64bit=0
disable_splash=1
ignore_lcd=1
dtoverlay=vc4-kms-v3d-pi4
dtoverlay=i2c3,pins_4_5
gpio=13=pu
#dtoverlay=reTerminal,tp_rotate=1
Attempting to set the STM32 device into boot mode … nothing …
sv@raspberrypi:~ $ sudo i2ctransfer -y 1 w2@0x45 0x9b 0x01
Error: Sending messages failed: Remote I/O error
However, confirmed that we probably don;t need to update the STM32 based on this mapping , showing what I believe is the latest firmware , according to the guide:
sv@raspberrypi:~ $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- 19 -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- 29 -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- 38 -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- 56 -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Have now uncommented :
dtoverlay=reTerminal,tp_rotate=1
and restarted. still no screen turning on.
Hi @beadon ,
It seems that STM32 firmware is not working properly because there is 0x56 in I2C slave.
Turn reTerminal off and on, and check again with i2cdetect -y 1
to see if 0x45 is displayed.
If the situation does not change, rewrite the STM32 firmware.(see Method 2)
Have you tried to use our packaged image file directly for the Bookworm system? The screen as well as other drivers are already included in the image file.
I have tried this. Now my device won’t boot. It looks like the image provided in instructions does not make a bootable system. See screenshot.
I followed the Linux instructions.
Seeed_Seraphina please advise.
I was able to re-flash with the same image. The device came back and booted, but no screen is available.
I am checking the i2c again.
modifying the config.txt to 32-bit caused the system to not boot. no go so far. checking to make sure the correct image is used.
finally have a stable version. It is: Linux raspberrypi 5.15.32-v7l+ #1538 SMP Thu Mar 31 19:39:41 BST 2022 armv7l GNU/Linux
the i2c is a little different:
sv@raspberrypi:~ $ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- UU -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- UU -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- 56 -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
I have HDMI connected externally, but this is the only screen working, nothing onboard.
Now after applying the reTerminal2.sh , I am missing the external HDMI screen.
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
# Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
# Automatically load overlays for detected cameras
camera_auto_detect=1
# Automatically load overlays for detected DSI displays
display_auto_detect=1
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2
# Disable compensation for displays with overscan
disable_overscan=1
[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1
[all]
[pi4]
# Run as fast as firmware / board allows
arm_boost=1
[all]
enable_uart=1
dtoverlay=dwc2,dr_mode=host
dtparam=ant2
disable_splash=1
ignore_lcd=1
dtoverlay=vc4-kms-v3d-pi4
dtoverlay=i2c3,pins_4_5
gpio=13=pu
dtoverlay=reTerminal,tp_rotate=1
#dtoverlay=reTerminal-bridge
dtoverlay=i2c1,pins_2_3
Are you checking this one?
If the I2C slave of 0x45 does not appear, then there is a problem with the STM32 firmware.
Perhaps even a simple Method 1 could be used to write firmware. (Skip No.8)
Hello everyone,
We are pleased to announce that we have officially packaged the latest kernel version 6.6.20 into an image package, which includes both 64-bit and 32-bit versions. After conducting thorough testing, by flashing this image, you can resolve the issue of the LCD screen not turning on. We apologize for the delay and hope that this update can be of assistance to all of you.