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

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:

Well the flash procedure with two wires from GPIO pins was a bit cumbersome, but I got success reported . Anyway, I just succeeded by following the instructions on SEEED reTerminal display stm32 stuck in boot mode
INCLUDING the part where you have to remove the battery (!). Before that it didn’t work. So in addition to all other advice that is filling these blog pages and for which I am grateful, that is apparently what you have to do:
Remove and replace the battery.

Hi there,
Well that does make some sense to me, the config must be stored in NV ram and battery backed up.
GL :slight_smile: PJ

After about a week the touch panel has stopped functioning again. I am unable to re-flash to solve the problem now as it is in operation. I just get the following when i run dmesg

[445626.334732] i2c-bcm2835 fe804000.i2c: i2c transfer timed out

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.

1 Like