reTerminal unable to install Raspbian 64bit and get LCD drivers to work

I am unable to get Raspbian 64bit to install with the reTerminal display drivers to operate the LCD display propertly.

Here are the things I’ve attempted:

  1. All the steps outlined in this forum topic reTerminal - blank screen after flashing OS ... again!

  2. I have installed the original 64bit reTerminal image, the display does not work

  3. I have installed Raspbian 64bit successfully so that the desktop is visible via the HDMI port and then have installed the drivers as outlined reterminal-dm-flash-OS/#install-drivers

  4. When I tried to go through the STM 32 f;ash / version upgrade process as documented at eTerminal-FAQ/#q1-how-can-i-update-the-stm32-firmware-for-reterminal-lcd the command “i2ctransfer -y 1 w2@0x45 0x9b 0x01” returns “Error: Sending messages failed: Input/output error”

  5. The command " i2cdetect -y 1" returns the following

00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 
20: -- UU -- -- -- -- -- -- -- 29 -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- 39 -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         
  1. If I flash the SenseCap Edge OS, the screen works fine, but I want a vanilla raspbian installation. reterminal-dm-sensecraft-edge-os-intro/

I’ve done about 8 flash installations so far of different raspbian images and simply cannot get the LCD screen to work by following the instructions. What would you recommend as next steps?

Hello, I have also had a lot of trouble getting the screen working.
Getting the same errors when trying to upgrade STM32 chip firmware.

I had upgraded it before so i dont think that it is the problem, but i have tried everything else.
My screen now is on but will change to static flickering and then come back in an endless loop.
There is also no touch input.
I have had screen issues with 2 different ReTerminals.
Not tried a different OS though. Interesting that it works with the SenseCap Edge OS. I will try this as it will confirm that it is a software problem over a hardware problem.

Cheers

Hello everyone,

Regarding reTerminal, we would like to inform you that our official drivers are currently not compatible with the latest 64-bit or 32-bit images provided by Raspberry Pi Imager. Additionally, Ubuntu Server is also not supported.

If you intend to use Ubuntu, we recommend opting for Ubuntu Desktop (tested and fully functional on versions 22.04). For Raspberry Pi users, it is advised not to use version 6.1 and instead stick to the previous version 5.10

Are you referring to kernel version 5.10? I downloaded and flashed this version and the system will not boot Index of /rpd_x86/images/rpd_x86-2022-07-04

can you point me to an image that will flash successfully?

It looks like you have selected a Raspberry Pi image for PC/MAC, which is why it won’t flash into the Raspberry Pi properly

You can download the image from this url:
https://downloads.raspberrypi.com/raspios_arm64/images/

In fact, kernel version 5.x works fine after flashing the driver! Here you can find the kernel version for each date:
https://downloads.raspberrypi.com/raspios_arm64/release_notes.txt

I tried the image shown in the picture, his kernel version is 5.10.92. After using driver, can successfully light up the LCD


Thanks for your reply, how can we ensure future updates will not break this?

As of now, the mentioned images can all be used with the drivers we currently provide, and this will remain unchanged for the foreseeable future.
If there are any changes, we will also notify you on Weekly Wiki as soon as possible!

@Seeed_Seraphina I’m facing the same issue

  1. Downloaded https://downloads.raspberrypi.com/raspios_arm64/images/raspios_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64.zip
  2. Installed driver; for some reason they updated my kernel too
cd /tmp
git clone https://github.com/Seeed-Studio/seeed-linux-dtoverlays --depth 1
./scripts/reTerminal.sh
  • Before: L5.10.92-v8+
  • After: 6.1.21-v8+

After reboot, still no screen.

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 thought I also try flash the display, but it won’t work:

  1. Comment line in config
  2. Reboot
  3. Test
$ i2ctransfer -y 1 w2@0x45 0x9b 0x01
Error: Sending messages failed: Remote I/O error

$ 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: -- -- -- -- -- -- -- -- 

Whatever I do, I can’t get the dislay to work again.

I’m also confused why your script would move the kernel from 5.* to 6.* even though it’s not supported. Reported this on Github here.


EDIT: Tried again

  1. Fresh image https://files.seeedstudio.com/wiki/ReTerminal/RPiOS_Images/2022-07-21-Raspbian-reTerminal-arm64/64bit-20220721T012743Z-001.zip
  2. Boot → Screen black
  3. Update firmware
$ 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: -- -- -- -- -- -- -- --

$ i2ctransfer -y 1 w2@0x45 0x9b 0x01
Error: Sending messages failed: Remote I/O error

Firmware

cd /tmp
mkdir STM32
cd STM32/
wget https://sourceforge.net/projects/stm32flash/files/stm32flash-0.7.tar.gz
wget https://github.com/Seeed-Studio/seeed-linux-dtoverlays/releases/download/2022-05-29-reTerminal-V1.9/STM32G030F6_R2.bin
tar -xvf stm32flash-0.7.tar.gz
cd stm32flash-0.7/
make

Let’s go

./stm32flash -a 0x56 -o /dev/i2c-1
stm32flash 0.7

http://stm32flash.sourceforge.net/

Warning: Not a tty: /dev/i2c-1
Error: Failed to apply settings
Error probing interface "serial_posix"
Interface i2c: addr 0x56
Version      : 0x12
Device ID    : 0x0466 (STM32G03xxx/04xxx)
- RAM        : Up to 8KiB  (4096b reserved by bootloader)
- Flash      : Up to 64KiB (size first sector: 1x2048)
- Option RAM : 128b
- System RAM : 8KiB
Erasing flash
$ ./stm32flash -a 0x56 -w ../STM32G030F6_R2.bin -v -g 0x0 /dev/i2c-1
stm32flash 0.7

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Size         : 17000
Warning: Not a tty: /dev/i2c-1
Error: Failed to apply settings
Error probing interface "serial_posix"
Interface i2c: addr 0x56
Version      : 0x12
Device ID    : 0x0466 (STM32G03xxx/04xxx)
- RAM        : Up to 8KiB  (4096b reserved by bootloader)
- Flash      : Up to 64KiB (size first sector: 1x2048)
- Option RAM : 128b
- System RAM : 8KiB
Write to memory
Erasing memory
Wrote and verified address 0x08004268 (100.00%) Done.

Starting execution at address 0x08000000... done.
i2ctransfer -y 1 w2@0x45 0x9b 0x00
nano /boot/config.txt # uncomment overlay
reboot

Screen still black.

[    2.982220] i2c_dev: i2c /dev entries driver
[    4.358208] i2c 1-0045: Fixing up cyclic dependency with fe700000.dsi
[    4.732054] brcmstb-i2c fef04500.i2c:  @97500hz registered in polling mode
[    4.734681] brcmstb-i2c fef09500.i2c:  @97500hz registered in polling mode
[    6.431479] [DSI]i2c_md_init:
[    6.431687] [DSI]i2c_md_probe:start
[    6.449625] i2c_mipi_dsi 1-0045: I2C read id failed: -5
[    6.499005] lis3lv02d_i2c 1-0019: supply Vdd not found, using dummy regulator
[    6.518014] lis3lv02d_i2c 1-0019: supply Vdd_IO not found, using dummy regulator
[    6.616555] lis331dlh_i2c: 8 bits 3DC sensor found

Still 56:

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

EDIT

So, this is funny.

Out of options, I dissambled the device to check connections; Of course everything was just fine; Pulled-out the battery for a sec; Put it back together. Boot … Working.

Why?

Did that reset something?

 dmesg | grep "mipi_dsi\|DSI"
[    5.917948] [DSI]i2c_md_init:
[    5.918344] [DSI]i2c_md_probe:start
[    5.923940] i2c_mipi_dsi 1-0045: I2C read id: 0xc3
[    5.925653] [DSI]mipi_dsi_device:
[    5.985580] [DSI]i2c_md_probe:finished.
[    5.986348] [DSI]mipi_dsi_probe:
[    6.233156] mipi_dsi fe700000.dsi.0: failed to attach dsi to host: -517
[    6.237177] [DSI]mipi_dsi_probe:
[    6.395559] [DSI]panel_prepare:
[    8.732836] [DSI]ili9881d_prepare:
[    8.864898] [DSI]panel_enable:
[   15.040542] [DSI]panel_disable:
[   15.043957] [DSI]panel_unprepare:
[   15.101906] [DSI]panel_prepare:
[   15.160823] [DSI]ili9881d_prepare:
[   15.292868] [DSI]panel_enable:
[   15.675569] [DSI]panel_disable:
[   15.678831] [DSI]panel_unprepare:
[   15.739103] [DSI]panel_prepare:
[   15.796796] [DSI]ili9881d_prepare:
[   15.924813] [DSI]panel_enable:

$ 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: -- -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --

Hi, we still recommend you to use our 64-bit factory image. The factory image contains the required drivers and will solve the problem of the LCD not working!

Hi, that is great news, but does this mean we cannot “sudo apt update && sudo apt upgrade -y” without first putting a hold on kernel updates? Are there any other packages that will need to be held also?

Or would we just have to manually update any individual packages that an updated application may require? If so, this will be very time consuming to identify.

Are there updated drivers being worked on? Currently due to the need for the device to function, i have the most updated Raspbian OS installed and all of my services are functioning, but none of the functionallity of the reTerminal, i may as well just have used a CM4 IO board and not purchased the reTerminal at all.

We have made new updates to the drivers. We tested them yesterday, and as expected, the LCD can be used after installing the driver.


Maybe you can try again.

Hi, this is great news that you have updated the drivers! I have performed the following steps

sudo rm -r seeed-linux-dtoverlays
git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays
cd seeed-linux-dtoverlays
sudo ./scripts/reTerminal.sh

And get this

### Install required tool packages
Hit:1 http://security.debian.org/debian-security bullseye-security InRelease
Hit:2 http://deb.debian.org/debian bullseye InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Hit:4 https://download.docker.com/linux/debian bullseye InRelease
Hit:5 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).
0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.

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

### Uninstall previous dkms module

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

### 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).
0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.
W: --force-yes is deprecated, use one of the options starting with --allow instead.
KBUILD: /lib/modules/6.1.21-v8+/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-v8+ all KVERSION=6.1.21-v8+....(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.1.21-v8+ (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-v8+ (aarch64)
Wed 15 Nov 22:27:00 GMT 2023
make -C /lib/modules/6.1.21-v8+/build M=/var/lib/dkms/mipi_dsi/0.1/build modules
make[1]: Entering directory '/usr/src/linux-headers-6.1.21-v8+'
  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
/tmp/ccM4ooTB.s: Assembler messages:
/tmp/ccM4ooTB.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/ccM4ooTB.s:189: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:197: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE2:'
/tmp/ccM4ooTB.s:313: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/ccM4ooTB.s: Error: .size expression for tp_poll_func does not evaluate to a constant
/tmp/ccM4ooTB.s: Error: .size expression for tp_init does not evaluate to a constant
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.o] Error 1
make[2]: *** Waiting for unfinished jobs....
during RTL pass: cse1
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c: In function ‘i2c_md_probe’:
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c:379:1: internal compiler error: g with gen_split_1639 (aarch64-sve2.md:620)

  379 | }
      | ^
output_964Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-10/README.Bugs> for instructions.
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.o] Error 1
/tmp/cc7gc9gO.s: Assembler messages:
/tmp/cc7gc9gO.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/cc7gc9gO.s:1665: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:1672: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/cc7gc9gO.s:1722: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952c02],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s:1766: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13953282],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_set_dsi does not evaluate to a constant
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_get_modes does not evaluate to a constant
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-v8+'
make: *** [Makefile:15: all] Error 2

This is the log file.

pi@fac-reterminal:~/seeed-linux-dtoverlays $ cat /var/lib/dkms/mipi_dsi/0.1/build/make.log
DKMS make.log for mipi_dsi-0.1 for kernel 6.1.21-v8+ (aarch64)
Wed 15 Nov 22:27:00 GMT 2023
make -C /lib/modules/6.1.21-v8+/build M=/var/lib/dkms/mipi_dsi/0.1/build modules
make[1]: Entering directory '/usr/src/linux-headers-6.1.21-v8+'
  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
/tmp/ccM4ooTB.s: Assembler messages:
/tmp/ccM4ooTB.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/ccM4ooTB.s:189: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:197: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE2:'
/tmp/ccM4ooTB.s:313: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/ccM4ooTB.s: Error: .size expression for tp_poll_func does not evaluate to a constant
/tmp/ccM4ooTB.s: Error: .size expression for tp_init does not evaluate to a constant
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.o] Error 1
make[2]: *** Waiting for unfinished jobs....
during RTL pass: cse1
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c: In function ‘i2c_md_probe’:
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c:379:1: internal compiler error: g with gen_split_1639 (aarch64-sve2.md:620)

  379 | }
      | ^
output_964Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-10/README.Bugs> for instructions.
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.o] Error 1
/tmp/cc7gc9gO.s: Assembler messages:
/tmp/cc7gc9gO.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/cc7gc9gO.s:1665: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:1672: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/cc7gc9gO.s:1722: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952c02],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s:1766: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13953282],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_set_dsi does not evaluate to a constant
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_get_modes does not evaluate to a constant
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-v8+'
make: *** [Makefile:15: all] Error 2
pi@fac-reterminal:~/seeed-linux-dtoverlays $ cat /var/lib/dkms/mipi_dsi/0.1/build/make.log
DKMS make.log for mipi_dsi-0.1 for kernel 6.1.21-v8+ (aarch64)
Wed 15 Nov 22:27:00 GMT 2023
make -C /lib/modules/6.1.21-v8+/build M=/var/lib/dkms/mipi_dsi/0.1/build modules
make[1]: Entering directory '/usr/src/linux-headers-6.1.21-v8+'
  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
/tmp/ccM4ooTB.s: Assembler messages:
/tmp/ccM4ooTB.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/ccM4ooTB.s:189: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/ccM4ooTB.s:197: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE2:'
/tmp/ccM4ooTB.s:313: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/ccM4ooTB.s: Error: .size expression for tp_poll_func does not evaluate to a constant
/tmp/ccM4ooTB.s: Error: .size expression for tp_init does not evaluate to a constant
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/touch_panel.o] Error 1
make[2]: *** Waiting for unfinished jobs....
during RTL pass: cse1
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c: In function ‘i2c_md_probe’:
/var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.c:379:1: internal compiler error: g with gen_split_1639 (aarch64-sve2.md:620)

  379 | }
      | ^
output_964Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-10/README.Bugs> for instructions.
make[2]: *** [scripts/Makefile.build:250: /var/lib/dkms/mipi_dsi/0.1/build/mipi_dsi_drv.o] Error 1
/tmp/cc7gc9gO.s: Assembler messages:
/tmp/cc7gc9gO.s:3: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:10: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE1:'
/tmp/cc7gc9gO.s:1665: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].align 2'
/tmp/cc7gc9gO.s:1672: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952b02],%3.0b[%4].LPFE3:'
/tmp/cc7gc9gO.s:1722: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13952c02],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s:1766: Error: operand 1 must be a SIMD vector element -- `ins %0.0b[0x13953282],%3.0b[%4].align 3'
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_set_dsi does not evaluate to a constant
/tmp/cc7gc9gO.s: Error: .size expression for ili9881d_get_modes does not evaluate to a constant
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-v8+'
make: *** [Makefile:15: all] Error 2

Is it that i should be on a different kernel version?

Hi,

Still the same issue 5 months later.
If i reinstall the OS to the seeed studio OS i will lose all my config, and even then it will only work until I sudo apt update && apt upgrade.

Hi @tasman ,

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

Hello Takashi,
The install on 2023-12-05-raspios-bookworm-armhf.img.xz worked well.
Screen working, even showing less artifacts than when it has briefly worked before.
However, after a update and reboot it still shows up black

Version Info:
Linux fac-reterminal 6.1.0-rpi7-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.63-1+rpt1 (2023-11-24) aarch64

Thanks.

Should i have not updated? I used the --keep-kernel flag on install, how do i prevent kernel upgrades from update commands such as apt upgrade?

Hi @tasman ,
Thanks for trying it.
Please let me know so I can try to reproduce it here as well.

  1. What exactly did you do “after an update”? (Run “sudo apt upgrade”?)
  2. It looks like the kernel is running on aarch64. Can you add arm_64bit=0 to /boot/firmware/config.txt and reboot?

FYI
I create the issue.

Hello, apologies for the late reply.

It seems i was using the wrong image for 64bit.

I installed
2023-12-05-raspios-bookworm-arm64.img.xz
Install reTerminal driver (https://github.com/matsujirushi/seeed-linux-dtoverlays/blob/main/README_reTerminal_RasPiOS.md#install-script)

./scripts/reTerminal.sh
reboot
apt update
apt upgrade
reboot

The kernel is upgraded and the screen is showing.

I repeated this process twice as after the first time, there was a point where the touch panel stopped working, even rebooting would not get it to respond (screen still on, just no TP).
After repeating the above steps, it happened again but was fine after a reboot and hasn’t happened again.

Thank you very much!

1 Like

I’m happy for all of you who has successfully revived your reTerminal. I reflashed the STM32 according to instructions elsewhere, then performed the steps described by @tasman. Still blackness on both screen and HDMI. ssh still works, so I guess I will continue the struggle…

I think dmesg is trying to tell me something:

[ 6.642370] mipi_dsi 1-0045: I2C read id failed: -5

Hi there,
From lurking I think the I2C address you flashed is WRONG, that’s what it is dmesg too.
Run I2c scanner, what do you get? change it , then reflash again is working AFAIK, which ain’t much. I want to get one but I see a lot of people had issue’s with these things. seems like too much trouble.
HTH
GL :slight_smile: PJ :crossed_fingers: