New reTerminal, powers up with blank screen

Hello,
I have updated my reTerminal with the latest 64bit version retrieved from this wik: FAQs for reTerminal Usage | Seeed Studio Wiki version 2022/06/20. It works perfectly, the screen lights up and I have access to the sensor data, but when I update the reTerminal via the following FaQ: FAQs for reTerminal Usage | Seeed Studio Wiki. the screen no longer lights up.
I don’t understand why, can you help me?

It seems that you haven’t installed the driver for your screen. Installing the screen driver is the most effective way to resolve the issue of the screen not lighting up.

Hello,

The note was intended to remind everyone about the additional steps required when installing a 32-bit OS, ensuring that users can use it properly.
The content related to the reTerminal series on our Wiki has been thoroughly tested and verified to be accurate. If you encounter any issues while using the reTerminal, you can find answers in our FAQ section.

We appreciate your interest in and support for our products.

Hello @Seeed_Seraphina,
When I install the OS provided in the wiki I directly have the driver to control the screen and all the reTerminal sensors, but when I update the OS it overwrites the driver and so I no longer have access to the sensor data, and the screen no longer lights up. When I install the driver manually as described in the wiki, it still doesn’t work.
The only time it works is when you install the unmodified OS, and then you have access to the screen but no longer to the sensor data and the dashboard to see the sensor data, which is a problem for me, as I bought the reTerminal for the screen and sensors.

Is there another way to update the bone provided in the wiki, without the update overwriting the driver.

Oh I see. I’ll discuss it with my colleagues.

Interesting, I am experiencing the same issue with the reTerminal as the original poster.

Attached is the log of the errors, and a repeat of the issues above.

No joy … still a blank screen.

pi@mana-controller:~ $ sudo apt install git -y
git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
git is already the newest version (1:2.30.2-1+deb11u2).
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.
Cloning into 'seeed-linux-dtoverlays'...
remote: Enumerating objects: 859, done.
remote: Counting objects: 100% (859/859), done.
remote: Compressing objects: 100% (705/705), done.
remote: Total 859 (delta 157), reused 694 (delta 124), pack-reused 0
Receiving objects: 100% (859/859), 2.15 MiB | 1001.00 KiB/s, done.
Resolving deltas: 100% (157/157), done.
pi@mana-controller:~ $ cd seeed-linux-dtoverlays

pi@mana-controller:~/seeed-linux-dtoverlays $ 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
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
pi@mana-controller:~/seeed-linux-dtoverlays $ cat /proc/cpuinfo 
processor	: 0
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 1
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 2
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 3
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

Hardware	: BCM2835
Revision	: c03141
Serial		: 10000000d3510466
Model		: Raspberry Pi Compute Module 4 Rev 1.1
pi@mana-controller:~/seeed-linux-dtoverlays $ uname -na
Linux mana-controller 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux
pi@mana-controller:~/seeed-linux-dtoverlays $ sudo ./scripts/reTerminal.sh


### Install required tool packages
Hit:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease
Hit:2 http://archive.raspberrypi.org/debian bullseye InRelease
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.

### Will compile with the latest kernel...

### Uninstall previous dkms module

------------------------------
Deleting module version: 0.1
completely from the DKMS tree.
------------------------------
Done.

------------------------------
Deleting module version: 0.1
completely from the DKMS tree.
------------------------------
Done.

------------------------------
Deleting module version: 0.1
completely from the DKMS tree.
------------------------------
Done.

------------------------------
Deleting module version: 0.1
completely from the DKMS tree.
------------------------------
Done.
removed '/boot/overlays/reTerminal.dtbo'

### Install required kernel package
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
raspberrypi-kernel is already the newest version (1:1.20230405-1).
raspberrypi-kernel-headers is already the newest version (1:1.20230405-1).
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.
W: --force-yes is deprecated, use one of the options starting with --allow instead.
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...(bad exit status: 2)
make -j4 KERNELRELEASE=6.1.21-v7l+ all KVERSION=6.1.21-v7l+...(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.1.21-v7l+ (aarch64)
Consult /var/lib/dkms/mipi_dsi/0.1/build/make.log for more information.
Can't compile with this kernel, aborting
Please try to compile with the option --compat-kernel
DKMS make.log for mipi_dsi-0.1 for kernel 6.1.21-v7l+ (aarch64)
Mon 05 Feb 2024 01:21:54 PM PST
make -C /lib/modules/6.1.21-v7l+/build M=/var/lib/dkms/mipi_dsi/0.1/build modules
make[1]: Entering directory '/usr/src/linux-headers-6.1.21-v7l+'
  CC [M]  /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.o
  CC [M]  /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.o
  CC [M]  /var/lib/dkms/mipi_dsi/0.1/build/panel-ili9881d.o
In file included from ./include/linux/types.h:6,
                 from ./include/linux/limits.h:6,
                 from ./include/linux/kernel.h:16,
                 from ./include/linux/interrupt.h:6,
                 from /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi.h:15,
                 from /var/lib/dkms/mipi_dsi/0.1/build/panel-ili9881d.c:8:
./include/uapi/linux/types.h:5:10: fatal error: asm/types.h: No such file or directory
    5 | #include <asm/types.h>
      |          ^~~~~~~~~~~~~
In file included from ./include/linux/types.h:6,
                 from ./include/linux/limits.h:6,
                 from ./include/linux/kernel.h:16,
                 from ./include/linux/interrupt.h:6,
                 from /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi.h:15,
                 from /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c:11:
./include/uapi/linux/types.h:5:10: fatal error: asm/types.h: No such file or directory
    5 | #include <asm/types.h>
      |          ^~~~~~~~~~~~~
In file included from ./include/linux/types.h:6,
                 from ./include/linux/limits.h:6,
                 from ./include/linux/kernel.h:16,
                 from ./include/linux/interrupt.h:6,
                 from /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi.h:15,
                 from /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.c:1:
./include/uapi/linux/types.h:5:10: fatal error: asm/types.h: No such file or directory
    5 | #include <asm/types.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
compilation terminated.
compilation terminated.
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.o] Error 1
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/panel-ili9881d.o] Error 1
make[1]: *** [Makefile:2012: /var/lib/dkms/mipi_dsi/0.1/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.1.21-v7l+'
make: *** [Makefile:15: all] Error 2

Hi @beadon ,

I tried modifying the driver script.
Would you like to try it? :pray:

1 Like

Hi @beadon ,

Here is the procedure and solution I have reproduced on my hands.

Procedure

  1. Flash 32-bit 2022-07-21-Raspbian-reTerminal to reTerminal.

    Update Software … Skip

  2. Version, etc before upgrade.

    /boot/issue.txt                 ... 2022-06-19
    kernel                          ... 5.15.32-v7l+ armv7l
    userland                        ... armhf
    kernel package                  ... 1:1.20220331-1
    grep arm_64bit /boot/config.txt ... (null)
    
  3. Upgrade. (apt update and upgrade)

    Error! Bad return status for module build on kernel: 6.1.21-v7+ (armv7l)
    Consult /var/lib/dkms/mipi_dsi/0.1/build/make.log for more information.
    

    /var/lib/dkms/mipi_dsi/0.1/build/make.log:

    ...
    /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c:436:12: error: initialization of  void (*)(struct i2c_client *)’from incompatible pointer type  int (*)(struct i2c_client *)’[-Werror=incompatible-pointer-types]
    ...
    
  4. Reboot.

    → Blank screen!!! :face_with_spiral_eyes:

  5. Version, etc after upgrade.

    /boot/issue.txt                 ... 2022-06-19
    kernel                          ... 6.1.21-v8+ aarch64
    userland                        ... armhf
    kernel package                  ... 1:1.20230405-1
    grep arm_64bit /boot/config.txt ... (null)
    

Problem

  1. The kernel is running at 64-bit after upgrade.
  2. The driver source code does not support kernel 6.1 in 32-bit 2022-07-21-Raspbian-reTerminal.

Solution

  1. Add arm_64bit=0 to /boot/config.txt.
  2. Reboot.
  3. Install latest reTerminal driver.
    sudo apt update
    sudo apt install git
    git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays
    cd seeed-linux-dtoverlays
    sudo ./scripts/reTerminal.sh
    
  4. Reboot.
2 Likes

Wow, Nice work!
I am AMAZED at how they (seeed) nurfed this product execution UP :-1:. 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 :slight_smile: PJ :crossed_fingers:

1 Like

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
1 Like

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. :wink:

1 Like

Thank you for confirming.
I’m glad it’s working well. :blush:

I will make a request to Seeed’s reTerminal Team. :wink:

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?

  1. Log when reTerminal2.sh is executed
  2. cat /boot/firmware/config.txt or cat /boot/config.txt
  3. lsmod | grep mipi_dsi
  4. 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.

1 Like

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.

2 Likes

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
  1. Are you using reTerminal E10-1? Can you remove reTerminal E10-1 and comment dtoverlay=reTerminal-bridge to check?
  2. Do you know the version of the STM32 firmware? How to troubleshoot the black screen issue on reTerminal | Seeed Studio Wiki