Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues with Ubuntu running on reTerminal #28

Open
lakshanthad opened this issue Aug 26, 2021 · 65 comments
Open

Issues with Ubuntu running on reTerminal #28

lakshanthad opened this issue Aug 26, 2021 · 65 comments
Assignees

Comments

@lakshanthad
Copy link
Contributor

lakshanthad commented Aug 26, 2021

The following are issues when running Ubuntu on reTerminal.

  1. reTerminal cannot reboot from Ubuntu. It gets stuck and the "SYS LED" stays turned ON

  2. When reTerminal is powered off and powered back on, mipi LCD driver is not loaded. Need to do the following steps every time I turn on reTerminal

  • sudo modprobe -r mipi_dsi
  • sudo modprobe mipi_dsi
  • sudo systemctl restart systemd-logind
  1. Accelerometer is not loaded on boot. Need to load the accelerometer manually by:
  • sudo modprobe lis331dlh-i2c
  1. Sometimes when you type password in Ubuntu Desktop log in screen, the "Enter" button doesnt work and it is not possible to log in to Ubuntu.

The above has been tested after installing Ubuntu Server, installing reTerminal drivers and installing Ubuntu Desktop

@bigbearishappy
Copy link
Member

OK,we will fix this in the future.And I will let you know if there is progress.

@bigbearishappy
Copy link
Member

bigbearishappy commented Sep 2, 2021

Hi, lakshanthad.
I have find a new way to install the ubuntu with desktop on reterminal.
After these steps. your question 1 and 2 will be fixed. Util now, the question 3 and 4 is still there.
Here is the detail steps:
1 download the Ubuntu Server for raspberrypi
https://ubuntu.com/download/raspberry-pi/thank-you?version=20.04.3&architecture=server-arm64+raspi

2 flash the CM4 with Raspberry Pi Imager

3 update the kernel to 5.10.17
3.1 download the kernel and kernel-header (wget ...)
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel-headers_1.20210303-1_arm64.deb
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20210303-1_arm64.deb
3.2 install the deb file (sudo dpkg -i ...)
PS: when you install the raspberrypi-kernel_1.20210303-1_arm64.deb.
It will failed in the first time.the log says can not fine bcm2711-rpi-4-b.dtb in /etc//flash-kernel/dtbs/.
just copy bcm2711-rpi-4-b.dtb to /etc//flash-kernel/dtbs/ and then install the kernel again.
3.3 change the running kernel to 5.10.17
cd /boot/
cp vmlinuz-5.4.0-1028-raspi vmlinuz-5.4.0-1028-raspi.bak
cp kernel8.img vmlinuz-5.4.0-1028-raspi
sudo update-initramfs -u
sync
reboot
3.4 check if the kernel version changed to 5.10.17

4 install seeed-linux-dtoverlay driver
4.1 prepare work
cp /boot/firmware/bcm2711-rpi-cm4.dtb /boot/firmware/bcm2711-rpi-cm4.dtb.bak
cp /boot/bcm2711-rpi-cm4.dtb /boot/firmware/
cd /boot/
cp bcm2711-rpi-cm4.dtb dtbs/5.4.0-1028-raspi/./
rm dtb
ln -s dtbs/5.4.0-1028-raspi/./bcm2711-rpi-cm4.dtb dtb
rm dtb-5.4.0-1028-raspi
ln -s dtbs/5.4.0-1028-raspi/./bcm2711-rpi-cm4.dtb dtb-5.4.0-1028-raspi
cp bcm2711-rpi-cm4.dtb dtbs/5.10.17-v8+/./
rm dtb-5.10.17-v8+
ln -s dtbs/5.10.17-v8+/./bcm2711-rpi-cm4.dtb dtb-5.10.17-v8+

apt install build-essential
git clone https://github.com/Seeed-Studio/seeed-linux-dtoverlays.git
4.2 compile and install
cd seeed-linux-dtoverlay
make all_rpi
make install_rpi
4.3 additonal setup
4.3.1 modify the config.txt
add the following code into /boot/firmware/config.txt
#-------------------------------------------
dtoverlay=vc4-fkms-v3d
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
#------------------------------------------
4.3.2 copy the dtoverlay to the right directory
cp /boot/overlays/reTerminal.dtbo /boot/firmware/overlays/reTerminal.dtbo

4.3.3 modify the reTerminal-overlay.dts and compile it again.
add follow code into reTerminal-overlay.dts to disable the hdmi0 and hdmi1:

    fragment@8 {
            target = <&hdmi0>;
            __overlay__  {
                    status = "disabled";
            };
    };

    fragment@9 {
            target = <&hdmi1>;
            __overlay__  {
                    status = "disabled";
            };
    };

make all_rpi
cp reTerminal-overlay.dtbo /boot/firmware/overlays/reTerminal.dtbo

5 install the ubuntu-desktop
apt install ubuntu-desktop

reboot and enjoy the ubuntu with desktop.

@Pillar1989
Copy link
Member

@bigbearishappy can we use one shell script to reach this goal ?

@bigbearishappy
Copy link
Member

@bigbearishappy can we use one shell script to reach this goal ?

of course.I'll do it later.

@lakshanthad
Copy link
Contributor Author

waiting for a one shell script and I will test it. Thank you

@Kuuchuu
Copy link

Kuuchuu commented Sep 14, 2021

Waiting as well. Reterminal is completely unusable at the moment, as the supplied raspbian image breaks after updating, and the drivers don't install at all on Ubuntu Arm. I tried the steps listed above but they would not work on my hardware, couldn't get past step 3.3

@lakshanthad
Copy link
Contributor Author

Hi @Kuuchuu ,
We have updated the RPi OS image for reTerminal and it fixes the isssue of causing black screen on system update. Please flash it to your reTerminal.
https://wiki.seeedstudio.com/reTerminal-FAQ/#q2-how-can-i-flash-raspberry-pi-os-which-is-originally-shipped-with-reterminal
The next reTerminal batch will be shipped with this image.
Also, I will test the above Ubuntu installation and let you know.

@falense
Copy link

falense commented Sep 24, 2021

3 update the kernel to 5.10.17
3.1 download the kernel and kernel-header (wget ...)
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel-headers_1.20210303-1_arm64.deb
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20210303-1_arm64.deb
3.2 install the deb file (sudo dpkg -i ...)
PS: when you install the raspberrypi-kernel_1.20210303-1_arm64.deb.
It will failed in the first time.the log says can not fine bcm2711-rpi-4-b.dtb in /etc//flash-kernel/dtbs/.
just copy bcm2711-rpi-4-b.dtb to /etc//flash-kernel/dtbs/ and then install the kernel again.
3.3 change the running kernel to 5.10.17
cd /boot/
cp vmlinuz-5.4.0-1028-raspi vmlinuz-5.4.0-1028-raspi.bak
cp kernel8.img vmlinuz-5.4.0-1028-raspi
cp bcm2711-rpi-cm4.dtb dtbs/5.10.17-v8+/./
rm dtb-5.10.17-v8+
ln -s dtbs/5.10.17-v8+/./bcm2711-rpi-cm4.dtb dtb-5.10.17-v8+
sudo update-initramfs -u
sync
reboot
3.4 check if the kernel version changed to 5.10.17

I tried this on a Ubuntu server 20 armhf (32bit). I ended up with an unbootable image. @lakshanthad Did you get it to work?

@lakshanthad
Copy link
Contributor Author

@Sondree Still my colleague is working on a fix for this. I will mention it here once it's fixed.

@TheBrinkOfTomorrow
Copy link

TheBrinkOfTomorrow commented Sep 24, 2021

Having same issue here. I initially tried 21.04 server, and then switched to 20.04.03 after finding this Github issue...
The Seeed-Studio wiki should be updated to reflect status of this issue; otherwise I imagine lots of people wasting their time and/or getting frustrated with the product.

Is there a reason the driver package is focused on kernel 5.10.17? [e.g. is it since that's what raspbian uses]?

20.04.3 LTS HWE is now based on the 5.11.x kernel series. It would make much more sense if we could use that... or even better, make it work with default kernel of 21.04 and next month's 21.10...

@bigbearishappy
Copy link
Member

3 update the kernel to 5.10.17
3.1 download the kernel and kernel-header (wget ...)
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel-headers_1.20210303-1_arm64.deb
http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20210303-1_arm64.deb
3.2 install the deb file (sudo dpkg -i ...)
PS: when you install the raspberrypi-kernel_1.20210303-1_arm64.deb.
It will failed in the first time.the log says can not fine bcm2711-rpi-4-b.dtb in /etc//flash-kernel/dtbs/.
just copy bcm2711-rpi-4-b.dtb to /etc//flash-kernel/dtbs/ and then install the kernel again.
3.3 change the running kernel to 5.10.17
cd /boot/
cp vmlinuz-5.4.0-1028-raspi vmlinuz-5.4.0-1028-raspi.bak
cp kernel8.img vmlinuz-5.4.0-1028-raspi
cp bcm2711-rpi-cm4.dtb dtbs/5.10.17-v8+/./
rm dtb-5.10.17-v8+
ln -s dtbs/5.10.17-v8+/./bcm2711-rpi-cm4.dtb dtb-5.10.17-v8+
sudo update-initramfs -u
sync
reboot
3.4 check if the kernel version changed to 5.10.17

I tried this on a Ubuntu server 20 armhf (32bit). I ended up with an unbootable image. @lakshanthad Did you get it to work?

you origin kernel is 32bit.but the kernel and kernel header you download is 64bit.you can flash a 64bit image or download the 32bit kernel and kernel header and then retry it .

@falense
Copy link

falense commented Sep 25, 2021 via email

@lakshanthad
Copy link
Contributor Author

lakshanthad commented Oct 11, 2021

Hello everyone,

Now there is a workaround to install Ubuntu on reTerminal. Please follow the steps below:

  1. Download and flash the Ubuntu Server image on reTerminal:
    https://ubuntu.com/download/raspberry-pi/thank-you?version=20.04.3&architecture=server-arm64+raspi
  2. wget https://files.seeedstudio.com/wiki/ReTerminal/ubuntu/script1.sh
  3. wget https://files.seeedstudio.com/wiki/ReTerminal/ubuntu/script2.1.sh
  4. chmod +x script1.sh script2.1.sh
  5. sudo ./script1.sh
  6. sudo reboot
  7. sudo ./script2.1.sh
  8. sudo reboot

Finally, enjoy the Ubuntu Desktop on reTerminal!

Please try it and let us know your experience.

@falense
Copy link

falense commented Oct 11, 2021

Am I reading this right? You disable hdmi support to make it work on ubuntu?

@lakshanthad
Copy link
Contributor Author

lakshanthad commented Oct 11, 2021

Yes, you are right. If we don't disable HDMI, the LCD on reTerminal cannot work. We are finding a fix for this.

@falense
Copy link

falense commented Oct 11, 2021

Thanks for the clarification. I will try it out on Ubuntu. I hope you get HDMI working

@PhilippeLibioulle
Copy link

ok, it works with Ubuntu 21.04 and built-in LCD . By default, it boots in "portrait" mode but it is easy to switch to landscape mode (Settings, Display, Built-in display, ...). However, external HDMI screen is gone...

@Kuuchuu
Copy link

Kuuchuu commented Nov 2, 2021

Running Script 2 fails @lakshanthad :

ubuntu@ubuntu:~$ sudo ./script2.sh
Cloning into 'seeed-linux-dtoverlays'...
remote: Enumerating objects: 2513, done.
remote: Counting objects: 100% (854/854), done.
remote: Compressing objects: 100% (600/600), done.
remote: Total 2513 (delta 485), reused 574 (delta 239), pack-reused 1659
Receiving objects: 100% (2513/2513), 3.27 MiB | 3.69 MiB/s, done.
Resolving deltas: 100% (1262/1262), done.
  DTC     overlays/rpi/grove-led-overlay.dtbo
overlays/rpi/grove-led-overlay.dts:33.3-32: Warning (label_is_string): /__overrides__:label: property is not a string
overlays/rpi/grove-led-overlay.dts:30.3-31.26: Warning (gpios_property): /__overrides__:gpio: property size (22) is invalid, expected multiple of 4
  DTC     overlays/rpi/2xMCP2517FD-overlay.dtbo
overlays/rpi/2xMCP2517FD-overlay.dts:93.25-102.15: Warning (spi_bus_reg): /fragment@5/__overlay__/can@1: SPI bus unit address format error, expected "0"
  DTC     overlays/rpi/tpm-spi-slx9670-overlay.dtbo
  DTC     overlays/rpi/lis331dlh-overlay.dtbo
  DTC     overlays/rpi/bma456-i2c1-overlay.dtbo
  DTC     overlays/rpi/2xMCP2518FD-spi0-overlay.dtbo
overlays/rpi/2xMCP2518FD-spi0-overlay.dts:59.25-68.15: Warning (spi_bus_reg): /fragment@4/__overlay__/can@0: SPI bus unit address format error, expected "1"
overlays/rpi/2xMCP2518FD-spi0-overlay.dts:70.25-78.15: Warning (spi_bus_reg): /fragment@4/__overlay__/can@1: SPI bus unit address format error, expected "0"
  DTC     overlays/rpi/reTerminal-overlay.dtbo
Error: overlays/rpi/reTerminal-overlay.dts:239.3-25 Properties must precede subnodes
FATAL ERROR: Unable to parse input tree
make[1]: *** [Makefile:217: overlays/rpi/reTerminal-overlay.dtbo] Error 1
make: *** [Makefile:156: all_rpi] Error 2
install 2xMCP2517FD-overlay.dtbo /boot/overlays/2xMCP2517FD.dtbo
install 2xMCP2518FD-spi0-overlay.dtbo /boot/overlays/2xMCP2518FD-spi0.dtbo
install bma456-i2c1-overlay.dtbo /boot/overlays/bma456-i2c1.dtbo
install grove-led-overlay.dtbo /boot/overlays/grove-led.dtbo
install lis331dlh-overlay.dtbo /boot/overlays/lis331dlh.dtbo
cp: cannot stat 'reTerminal-overlay.dtbo': No such file or directory
make[2]: *** [Makefile:46: install] Error 1
make[1]: *** [Makefile:227: install_arch] Error 2
make: *** [Makefile:164: install_rpi] Error 2

I'm using the image "ubuntu-21.04-preinstalled-server-arm64+raspi.img.xz"

@AIWintermuteAI
Copy link
Contributor

Can confirm, same result for ubuntu-20.04.3-preinstalled-server-arm64+raspi
It seems that switching to earlier commit does the trick (acfdbcf)
image
@bigbearishappy did something go wrong when changing DTS recently?

@AIWintermuteAI
Copy link
Contributor

The screen however stays off after this.

@lakshanthad
Copy link
Contributor Author

@Kuuchuu @AIWintermuteAI The link for script 2 has been updated.

#28 (comment)

@Kuuchuu
Copy link

Kuuchuu commented Nov 5, 2021

The screen fails to continue to work after doing a system upgrade to Ubuntu 21.10. Rerunning the script after the update does not fix it, and waiting to run both scripts after a fresh install and immediate upgrade do not get it working either.
Any ideas?

@fastsystem
Copy link

Hello.

Following the comments below, I installed Ubuntu and the screen was successful.

#28 (comment)
#28 (comment)

However, the F1, F2, F3 and OK buttons are not working.

According to the following SDK:
https://github.com/Seeed-Studio/Seeed_Python_ReTerminal

I think it is because there is no "gpio_keys" event in the OS event area. Is there any solution?

There was only "seeed-tp" in the event.
ss 2022-01-20 11 39 48

@Pillar1989
Copy link
Member

@lakshanthad please support this issue

@lakshanthad
Copy link
Contributor Author

Hello @fastsystem,

Could you please edit the file "/boot/firmware/config.txt" and replace the line which says "dtoverlay=reTerminal" with the following:

dtoverlay=reTerminal,addr=0x20,mcp23008,tp_rotate=1

@fastsystem
Copy link

Hello @lakshanthad,

I changed it, but it didn't change.

dtoverlay=reTerminal,tp_rotate=1
    ↓
dtoverlay=reTerminal,addr=0x20,mcp23008,tp_rotate=1

スクリーンショット 2022-01-25 9 54 48

show dmeg
スクリーンショット 2022-01-25 9 53 46

@bigbearishappy
Copy link
Member

Hello @lakshanthad,

I changed it, but it didn't change.

dtoverlay=reTerminal,tp_rotate=1
    ↓
dtoverlay=reTerminal,addr=0x20,mcp23008,tp_rotate=1
スクリーンショット 2022-01-25 9 54 48

show dmeg スクリーンショット 2022-01-25 9 53 46

Can you show the output of command: i2cdetect -y 1?
if you can see the device 0x20. Add "dtoverlay=reTerminal,addr=0x20,mcp23008,tp_rotate=1" is ok.
if you can see the device 0x38. Just add "dtoverlay=reTerminal,tp_rotate=1"
if you can't see both of them. please check your hardware.

@fastsystem
Copy link

Hello @bigbearishappy,

"ll /dev/i2c*" was empty.
So I installed "raspi-config" on ubuntu and enabled I2C.

スクリーンショット 2022-01-25 13 43 05

As you can see from the picture, since 0 x 38 is valid, we use "dtooverlay = reTerminal,tp_rotate=1".

"dmesg" looks like gpio_keys still has errors.
The actual key does not work either.

スクリーンショット 2022-01-25 13 43 21

@bigbearishappy
Copy link
Member

Hello @bigbearishappy,

"ll /dev/i2c*" was empty. So I installed "raspi-config" on ubuntu and enabled I2C.

スクリーンショット 2022-01-25 13 43 05

As you can see from the picture, since 0 x 38 is valid, we use "dtooverlay = reTerminal,tp_rotate=1".

"dmesg" looks like gpio_keys still has errors. The actual key does not work either.

スクリーンショット 2022-01-25 13 43 21

As we can see from the output of sudo i2cdetect -y 1.
The IO extend chip's kernel driver is working fine now.
But some thing wrong with the kernel driver gpio_keys.
It show the log: Unable to get irq number for GPIO 0, error -6.
Here is the source code of this error log

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 5, 2022

Hello @Chick92,

I have tested with Ubuntu 21.10 according to this wiki, and the LCD comes up now. The LCD did not work before because LCD did not support the new kernel 5.15. Now it works after this pr.

However, there is a new issue now.

Steps to reproduce

  1. Once booted after following the instructions above, the LCD would show up in incorrect orientation
  1. Navigate to Settings > Displays and change Orientation to Portrait
  1. Cannot apply the changes. Error message saying that "Changes cannot be Applied. This could be due to hardware limitations"

@bigbearishappy Could you please help look into this problem?

Thank you.

Best Regards,
Lakshantha

@bigbearishappy
Copy link
Member

Hello @Chick92,

I have tested with Ubuntu 21.10 according to this wiki, and the LCD comes up now. The LCD did not work before because LCD did not support the new kernel 5.15. Now it works after this pr.

However, there is a new issue now.

Steps to reproduce

  1. Once booted after following the instructions above, the LCD would show up in incorrect orientation
2. Navigate to `Settings > Displays` and change **Orientation** to **Portrait** 3. Cannot apply the changes. Error message saying that "Changes cannot be Applied. This could be due to hardware limitations" @bigbearishappy Could you please help look into this problem?

Thank you.

Best Regards, Lakshantha

It should be the same issue with the IMU.I am trying to fix it.

@lakshanthad
Copy link
Contributor Author

Thank you @bigbearishappy . Looking forward to the fix.

@lakshanthad
Copy link
Contributor Author

The issue is there, even after this commit:
fc79013

The above commit only fixes for RPi OS.

Best Regards,
Lakshantha

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 5, 2022

I have found a workaround.

Add the following inside "~/.config/monitors.xml" and reboot the reTerminal

<monitors version="2">
  <configuration>
    <logicalmonitor>
      <x>0</x>
      <y>0</y>
      <primary>yes</primary>
      <monitor>
        <monitorspec>
          <connector>DSI-1</connector>
          <vendor>unknown</vendor>
          <product>unknown</product>
          <serial>unknown</serial>
        </monitorspec>
        <mode>
          <width>720</width>
          <height>1280</height>
          <rate>60.000</rate>
        </mode>
      </monitor>
      <transform>
        <rotation>right</rotation>
      </transform>
    </logicalmonitor>
  </configuration>
</monitors>

The LCD comes back in correct orientation:

However, there is one problem. The onscreen keyboard is not visible on the login page. I had to connect an external keyboard to enter the password and login.

I have also tried without adding the above "monitors.xml" file and executing the following:

ubuntu@ubuntu:~$ xrandr --output DSI-1 --rotate left
warning: output DSI-1 not found; ignoring

But it does not seem to work.

@Chick92
Copy link

Chick92 commented May 11, 2022

Can confirm the updated kernel stuff works on Ubuntu 20.04.
On 20.04 there is no need to add the above to the xml file, changing the display settings to "portrait left" works fine.

@Chick92
Copy link

Chick92 commented May 13, 2022

Bluetooth not working, but fixed with sudo apt-get install pi-bluetooth. Might be worth adding to the install script.

I've backed up my Ub20 image before i've added the stuff i need to it, if anybody wants it give me a shout. It's about 3 gig though so not sure where best to host it. Not managed to get network manager working properly and am relying on manually editing netplan config files, e.g editing the config for wifi and leaving eth as dhcp

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 17, 2022

Can confirm the updated kernel stuff works on Ubuntu 20.04. On 20.04 there is no need to add the above to the xml file, changing the display settings to "portrait left" works fine.

That is great! Could you please try Ubuntu 21.04 also and confirm with my findings?

Thanks

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 17, 2022

Bluetooth not working, but fixed with sudo apt-get install pi-bluetooth. Might be worth adding to the install script.

I've backed up my Ub20 image before i've added the stuff i need to it, if anybody wants it give me a shout. It's about 3 gig though so not sure where best to host it. Not managed to get network manager working properly and am relying on manually editing netplan config files, e.g editing the config for wifi and leaving eth as dhcp

Could you please list all the problems you faced with Ubuntu 20.04?

Thanks

@Chick92
Copy link

Chick92 commented May 18, 2022

Problems on Ubuntu 20 -

Bluetooth driver not installed - sudo apt-get install pi-bluetooth

network manager unavailable. This is because Ubuntu server uses netplan, so and the desktop environment is then loaded on top of that. I disabled the config from the raspberry pi imager as per the instructions in /etc/netplan/50******* can't remember the file name but it starts with 50, and also deleted the file contents as it had the same SSID name, and created another cinfig file 10***** something something with a config for dhcp wifi and static ethernet as per my needs.

The touch screen isn't brilliant, seems considerably less precise than the raspberry pi os version

On / off button doesn't work

Accelerometer not tested

Not really a problem, but not sure how to tag the function keys to something, althoguh this info is probably available somewhere.

If I can remember any other issues i'll post here.

I'll try and test Ub21 for you, but it's not compatible with my use case and i'm away on business for a few weeks as of this friday.

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 31, 2022

Not really a problem, but not sure how to tag the function keys to something, althoguh this info is probably available somewhere.

For this, open /boot/firmware/config.txt and add dtoverlay=reTerminal,key<number>=<hex_value>

where number is from 0-3 which corresponds to F1,F2,F3,O

For example:
"dtoverlay=reTerminal,key0=0x25"

You can refer here for key codes:
https://github.com/torvalds/linux/blob/master/drivers/staging/unisys/visorinput/visorinput.c#L124-L237
Note that the values in the list are in decimal. You need to convert this value into hexadecimal and add to the above code.

Finally, reboot reTerminal

@lakshanthad
Copy link
Contributor Author

lakshanthad commented May 31, 2022

However, there is one problem. The onscreen keyboard is not visible on the login page. I had to connect an external keyboard to enter the password and login.

Now the onscreen keyboard works at login for Ubuntu Server 21.10. I only found a couple of other issues.

Accelerometer and light sensor are not loaded at boot. However they can be manually loaded by:

  • sudo modprobe lis331dlh-i2c
  • sudo modprobe als_ltr30x

@Chick92
Copy link

Chick92 commented Jun 6, 2022

Hmmm, it would seem Ub20 isn't stable after all. After reboot screen is blank / black. reflashed my last working image, which works fine until reboot and then same functionality.

I adjusted some network settings and installed ROS, that's about it.

I've tried the following via an ssh connection:

sudo modprobe -r mipi_dsi
sudo modprobe mipi_dsi
sudo systemctl restart systemd-logind

but get the following - modprobe: FATAL: Module mipi_dsi not found.

I'll roll back to my previous version without ROS and the netwroking changes, and see if the problems persist. If so i'll probably give up with it and either find some way to make use of Raspberry pi os or just scrap the unit and go with an android tablet.

@Chick92
Copy link

Chick92 commented Aug 5, 2022

I'd given up on this, as the device owuld only work for a few hours and then when booted, the screen doesn't work.

I decided to give it a go so reinstalled everything (the updates now allow the instructions from https://wiki.seeedstudio.com/reTerminal-FAQ/#q10-how-can-i-install-ubuntu-on-reterminal to work fine).

I then used the desktopify scripts to properly install and configure network manager (otherwise the ethernet is unmanaged and must be configured via netplan scripts).

The device worked fine accros reboots, with ethernet plugged in or unplugged, with wifi on or off.

Then today, i took it into the office and the screen is blank. Same issue as before when I gave up.

The dmesg output is below.

Any ideas?

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd083]
[ 0.000000] Linux version 5.4.0-1066-raspi (buildd@bos02-arm64-068) (gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)) #76-Ubuntu SMP PREEMPT Mon Jun 27 11:02:52 UTC 2022 (Ubuntu 5.4.0-1066.76-raspi 5.4.192)
[ 0.000000] Machine model: Raspberry Pi Compute Module 4 Rev 1.0
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created CMA memory pool at 0x0000000020000000, size 256 MiB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] On node 0 totalpages: 1012736
[ 0.000000] DMA zone: 3792 pages used for memmap
[ 0.000000] DMA zone: 0 pages reserved
[ 0.000000] DMA zone: 242688 pages, LIFO batch:63
[ 0.000000] DMA32 zone: 12032 pages used for memmap
[ 0.000000] DMA32 zone: 770048 pages, LIFO batch:63
[ 0.000000] percpu: Embedded 32 pages/cpu s92312 r8192 d30568 u131072
[ 0.000000] pcpu-alloc: s92312 r8192 d30568 u131072 alloc=32*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[ 0.000000] Detected PIPT I-cache on CPU0
[ 0.000000] CPU features: detected: EL2 vector hardening
[ 0.000000] CPU features: kernel page table isolation forced ON by KASLR
[ 0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[ 0.000000] ARM_SMCCC_ARCH_WORKAROUND_1 missing from firmware
[ 0.000000] CPU features: detected: Spectre-BHB
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 996912
[ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 smsc95xx.macaddr=E4:5F:01:3E:2E:FD vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 net.ifnames=0 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc quiet splash plymouth.ignore-serial-consoles quiet splash
[ 0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] software IO TLB: mapped [mem 0x37400000-0x3b400000] (64MB)
[ 0.000000] Memory: 3583672K/4050944K available (11772K kernel code, 1284K rwdata, 4324K rodata, 4096K init, 1080K bss, 205128K reserved, 262144K cma-reserved)
[ 0.000000] random: get_random_u64 called from kmem_cache_open+0x3c/0x3e8 with crng_init=0
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] ftrace: allocating 39441 entries in 155 pages
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] GIC: Using split EOI/Deactivate mode
[ 0.000000] arch_timer: cp15 timer(s) running at 54.00MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xc743ce346, max_idle_ns: 440795203123 ns
[ 0.000006] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns
[ 0.000220] Console: colour dummy device 80x25
[ 0.000244] printk: console [tty1] enabled
[ 0.000298] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=216000)
[ 0.000315] pid_max: default: 32768 minimum: 301
[ 0.000531] LSM: Security Framework initializing
[ 0.000583] Yama: becoming mindful.
[ 0.000677] AppArmor: AppArmor initialized
[ 0.000905] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 0.000959] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 0.001032] *** VALIDATE tmpfs ***
[ 0.001678] *** VALIDATE proc ***
[ 0.002158] cgroup: Disabling memory control group subsystem
[ 0.002332] *** VALIDATE cgroup1 ***
[ 0.002343] *** VALIDATE cgroup2 ***
[ 0.003659] ASID allocator initialised with 32768 entries
[ 0.003878] rcu: Hierarchical SRCU implementation.
[ 0.006028] EFI services will not be available.
[ 0.006899] smp: Bringing up secondary CPUs ...
[ 0.007878] Detected PIPT I-cache on CPU1
[ 0.007936] CPU1: Booted secondary processor 0x0000000001 [0x410fd083]
[ 0.009048] Detected PIPT I-cache on CPU2
[ 0.009087] CPU2: Booted secondary processor 0x0000000002 [0x410fd083]
[ 0.010133] Detected PIPT I-cache on CPU3
[ 0.010170] CPU3: Booted secondary processor 0x0000000003 [0x410fd083]
[ 0.010323] smp: Brought up 1 node, 4 CPUs
[ 0.010333] SMP: Total of 4 processors activated.
[ 0.010344] CPU features: detected: 32-bit EL0 Support
[ 0.010355] CPU features: detected: CRC32 instructions
[ 0.018201] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[ 0.018210] CPU: All CPU(s) started at EL2
[ 0.018259] alternatives: patching kernel code
[ 0.020231] devtmpfs: initialized
[ 0.030455] Enabled cp15_barrier support
[ 0.030480] Enabled setend support
[ 0.030899] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.030921] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[ 0.038331] pinctrl core: initialized pinctrl subsystem
[ 0.038973] DMI not present or invalid.
[ 0.039659] NET: Registered protocol family 16
[ 0.042335] DMA: preallocated 1024 KiB pool for atomic allocations
[ 0.042353] audit: initializing netlink subsys (disabled)
[ 0.042624] audit: type=2000 audit(0.040:1): state=initialized audit_enabled=0 res=1
[ 0.043184] cpuidle: using governor ladder
[ 0.043226] cpuidle: using governor menu
[ 0.043713] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.044028] Serial: AMBA PL011 UART driver
[ 0.047382] bcm2835-mbox fe00b880.mailbox: mailbox enabled
[ 0.060198] raspberrypi-firmware soc:firmware: Attached to firmware from 2021-11-18 16:16, variant start
[ 0.064209] raspberrypi-firmware soc:firmware: Firmware hash is d9b293558b4cef6aabedcc53c178e7604de90788
[ 0.099826] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[ 0.099841] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[ 0.099851] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.099861] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[ 0.110438] bcm2835-dma fe007000.dma: DMA legacy API manager, dmachans=0x1
[ 0.113619] iommu: Default domain type: Translated
[ 0.114967] SCSI subsystem initialized
[ 0.115233] libata version 3.00 loaded.
[ 0.115478] usbcore: registered new interface driver usbfs
[ 0.115523] usbcore: registered new interface driver hub
[ 0.115574] usbcore: registered new device driver usb
[ 0.115994] pps_core: LinuxPPS API ver. 1 registered
[ 0.116003] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti giometti@linux.it
[ 0.116022] PTP clock support registered
[ 0.116296] EDAC MC: Ver: 3.0.0
[ 0.117602] NetLabel: Initializing
[ 0.117612] NetLabel: domain hash size = 128
[ 0.117619] NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO
[ 0.117699] NetLabel: unlabeled traffic allowed by default
[ 0.118670] clocksource: Switched to clocksource arch_sys_counter
[ 0.217703] *** VALIDATE bpf ***
[ 0.218036] VFS: Disk quotas dquot_6.6.0
[ 0.218126] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.218249] *** VALIDATE ramfs ***
[ 0.218275] *** VALIDATE hugetlbfs ***
[ 0.219102] AppArmor: AppArmor Filesystem Enabled
[ 0.229103] thermal_sys: Registered thermal governor 'fair_share'
[ 0.229109] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.229119] thermal_sys: Registered thermal governor 'step_wise'
[ 0.229128] thermal_sys: Registered thermal governor 'user_space'
[ 0.229135] thermal_sys: Registered thermal governor 'power_allocator'
[ 0.229674] NET: Registered protocol family 2
[ 0.230187] IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear)
[ 0.232994] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
[ 0.233038] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
[ 0.233233] TCP bind hash table entries: 32768 (order: 7, 524288 bytes, linear)
[ 0.233716] TCP: Hash tables configured (established 32768 bind 32768)
[ 0.233950] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
[ 0.234005] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
[ 0.234246] NET: Registered protocol family 1
[ 0.234286] NET: Registered protocol family 44
[ 0.234304] PCI: CLS 0 bytes, default 64
[ 0.234615] Trying to unpack rootfs image as initramfs...
[ 1.008717] Freeing initrd memory: 34372K
[ 1.010445] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 counters available
[ 1.010699] kvm [1]: IPA Size Limit: 44 bits
[ 1.011620] kvm [1]: vgic interrupt IRQ1
[ 1.011855] kvm [1]: Hyp mode initialized successfully
[ 1.014153] Initialise system trusted keyrings
[ 1.014202] Key type blacklist registered
[ 1.014454] workingset: timestamp_bits=46 max_order=20 bucket_order=0
[ 1.021239] zbud: loaded
[ 1.023395] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 1.024431] fuse: init (API version 7.31)
[ 1.024537] *** VALIDATE fuse ***
[ 1.024550] *** VALIDATE fuse ***
[ 1.047159] Key type asymmetric registered
[ 1.047169] Asymmetric key parser 'x509' registered
[ 1.047215] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 242)
[ 1.047400] io scheduler mq-deadline registered
[ 1.051978] GPIO line 507 (ant1) hogged as output/low
[ 1.053312] GPIO line 511 (ant2) hogged as output/high
[ 1.055001] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[ 1.055021] brcm-pcie fd500000.pcie: No bus range found for /scb/pcie@7d500000, using [bus 00-ff]
[ 1.055072] brcm-pcie fd500000.pcie: MEM 0x0600000000..0x0603ffffff -> 0x00f8000000
[ 1.055123] brcm-pcie fd500000.pcie: IB MEM 0x0000000000..0x00ffffffff -> 0x0400000000
[ 1.374692] brcm-pcie fd500000.pcie: link down
[ 1.438828] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[ 1.441581] iproc-rng200 fe104000.rng: hwrng registered
[ 1.442102] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB)
[ 1.442981] gpiomem-bcm2835 fe200000.gpiomem: Initialised: Registers at 0xfe200000
[ 1.443346] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 1.570799] loop: module loaded
[ 1.573614] spi-bcm2835 fe204000.spi: could not get clk: -517
[ 1.575603] tun: Universal TUN/TAP device driver, 1.6
[ 1.576297] bcmgenet fd580000.ethernet: failed to get enet clock
[ 1.576313] bcmgenet fd580000.ethernet: GENET 5.0 EPHY: 0x0000
[ 1.576330] bcmgenet fd580000.ethernet: failed to get enet-wol clock
[ 1.576345] bcmgenet fd580000.ethernet: failed to get enet-eee clock
[ 1.576366] bcmgenet: Skipping UMAC reset
[ 1.646765] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus
[ 1.647620] PPP generic driver version 2.4.2
[ 1.647897] usbcore: registered new interface driver lan78xx
[ 1.647958] usbcore: registered new interface driver smsc95xx
[ 1.647997] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 1.648024] ehci-pci: EHCI PCI platform driver
[ 1.648079] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 1.648096] ohci-pci: OHCI PCI platform driver
[ 1.648133] uhci_hcd: USB Universal Host Controller Interface driver
[ 1.648249] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 1.648570] dwc_otg: FIQ enabled
[ 1.648578] dwc_otg: NAK holdoff enabled
[ 1.648585] dwc_otg: FIQ split-transaction FSM enabled
[ 1.648595] Module dwc_common_port init
[ 1.649100] mousedev: PS/2 mouse device common for all mice
[ 1.649585] i2c /dev entries driver
[ 1.653287] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[ 1.653489] device-mapper: uevent: version 1.0.3
[ 1.653782] device-mapper: ioctl: 4.41.0-ioctl (2019-09-16) initialised: dm-devel@redhat.com
[ 1.657858] sdhci: Secure Digital Host Controller Interface driver
[ 1.657862] sdhci: Copyright(c) Pierre Ossman
[ 1.658094] mmc-bcm2835 fe300000.mmcnr: could not get clk, deferring probe
[ 1.658288] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.659072] ledtrig-cpu: registered to indicate activity on CPUs
[ 1.659174] hidraw: raw HID events driver (C) Jiri Kosina
[ 1.659875] vchiq: vchiq_init_state: slot_zero = (ptrval)
[ 1.662123] drop_monitor: Initializing network drop monitor service
[ 1.662567] NET: Registered protocol family 10
[ 1.681743] Segment Routing with IPv6
[ 1.681802] NET: Registered protocol family 17
[ 1.681891] Key type dns_resolver registered
[ 1.682265] registered taskstats version 1
[ 1.682295] Loading compiled-in X.509 certificates
[ 1.683738] Loaded X.509 cert 'Build time autogenerated kernel key: 31516a808b485fc7acb1b9cc2bdc2a45f85b6954'
[ 1.684926] Loaded X.509 cert 'Canonical Ltd. Live Patch Signing: 14df34d1a87cf37625abec039ef2bf521249b969'
[ 1.686104] Loaded X.509 cert 'Canonical Ltd. Kernel Module Signing: 88f752e560a1e0737e31163a466ad7b70a850c19'
[ 1.686108] blacklist: Loading compiled-in revocation X.509 certificates
[ 1.686159] Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing: 61482aa2830d0ab2ad5af10b7250da9033ddcef0'
[ 1.686363] Key type ._fscrypt registered
[ 1.686367] Key type .fscrypt registered
[ 1.704610] cryptd: max_cpu_qlen set to 1000
[ 1.717467] Key type big_key registered
[ 1.735825] Key type encrypted registered
[ 1.735837] AppArmor: AppArmor sha1 policy hashing enabled
[ 1.735857] ima: No TPM chip found, activating TPM-bypass!
[ 1.735876] ima: Allocated hash algorithm: sha1
[ 1.735897] ima: No architecture policies found
[ 1.735926] evm: Initialising EVM extended attributes:
[ 1.735929] evm: security.selinux
[ 1.735932] evm: security.SMACK64
[ 1.735935] evm: security.SMACK64EXEC
[ 1.735938] evm: security.SMACK64TRANSMUTE
[ 1.735940] evm: security.SMACK64MMAP
[ 1.735943] evm: security.apparmor
[ 1.735946] evm: security.ima
[ 1.735949] evm: security.capability
[ 1.735952] evm: HMAC attrs: 0x1
[ 1.739780] uart-pl011 fe201000.serial: cts_event_workaround enabled
[ 1.739838] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 15, base_baud = 0) is a PL011 rev2
[ 1.744605] printk: console [ttyS0] disabled
[ 1.744636] fe215040.serial: ttyS0 at MMIO 0x0 (irq = 17, base_baud = 62500000) is a 16550
[ 1.755016] printk: console [ttyS0] enabled
[ 1.755348] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[ 1.757927] mmc-bcm2835 fe300000.mmcnr: mmc_debug:0 mmc_debug2:0
[ 1.757933] mmc-bcm2835 fe300000.mmcnr: DMA channel allocated
[ 1.801641] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[ 1.803161] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1.804681] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1.807412] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[ 1.808932] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1.821688] mmc0: SDHCI controller on fe340000.emmc2 [fe340000.emmc2] using ADMA
[ 1.823368] of_cfs_init
[ 1.823442] of_cfs_init: OK
[ 1.828526] Freeing unused kernel memory: 4096K
[ 1.842319] Checked W+X mappings: passed, no W+X pages found
[ 1.842324] Run /init as init process
[ 1.849643] random: fast init done
[ 1.865180] mmc1: new high speed SDIO card at address 0001
[ 1.886318] mmc0: new DDR MMC card at address 0001
[ 1.886925] mmcblk0: mmc0:0001 BJTD4R 29.1 GiB
[ 1.887202] mmcblk0boot0: mmc0:0001 BJTD4R partition 1 4.00 MiB
[ 1.887528] mmcblk0boot1: mmc0:0001 BJTD4R partition 2 4.00 MiB
[ 1.887687] mmcblk0rpmb: mmc0:0001 BJTD4R partition 3 4.00 MiB, chardev (238:0)
[ 1.889073] mmcblk0: p1 p2
[ 1.900976] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[ 1.904291] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[ 1.904318] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[ 2.316716] usb_phy_generic phy: phy supply vcc not found, using dummy regulator
[ 2.327483] snd_pcm_dmaengine: Unknown symbol snd_pcm_format_physical_width (err -2)
[ 2.327503] snd_pcm_dmaengine: Unknown symbol snd_pcm_hw_constraint_integer (err -2)
[ 2.327509] snd_pcm_dmaengine: Unknown symbol snd_pcm_period_elapsed (err -2)
[ 2.463695] brcmstb-i2c fef04500.i2c: @97500hz registered in polling mode
[ 2.464701] brcmstb-i2c fef09500.i2c: @97500hz registered in polling mode
[ 2.538621] mcp230xx: probe of 1-0038 failed with error -121
[ 2.540407] dwc2 fe980000.usb: fe980000.usb supply vusb_d not found, using dummy regulator
[ 2.540466] dwc2 fe980000.usb: fe980000.usb supply vusb_a not found, using dummy regulator
[ 2.547635] pca953x 1-0038: 1-0038 supply vcc not found, using dummy regulator
[ 2.548725] pca953x 1-0038: using no AI
[ 2.551756] pca953x 1-0038: interrupt support not compiled in
[ 2.556873] gpio-keys gpio_keys: Unable to get irq number for GPIO 0, error -6
[ 2.591874] [drm] Initialized v3d 1.0.0 20180419 for fec00000.v3d on minor 0
[ 2.600238] dwc2 fe980000.usb: DWC OTG Controller
[ 2.600258] dwc2 fe980000.usb: new USB bus registered, assigned bus number 1
[ 2.600285] dwc2 fe980000.usb: irq 21, io mem 0xfe980000
[ 2.600448] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
[ 2.600455] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.600459] usb usb1: Product: DWC OTG Controller
[ 2.600464] usb usb1: Manufacturer: Linux 5.4.0-1066-raspi dwc2_hsotg
[ 2.600468] usb usb1: SerialNumber: fe980000.usb
[ 2.600794] hub 1-0:1.0: USB hub found
[ 2.600824] hub 1-0:1.0: 1 port detected
[ 2.898676] usb 1-1: new high-speed USB device number 2 using dwc2
[ 3.106796] usb 1-1: New USB device found, idVendor=0424, idProduct=2514, bcdDevice= b.b3
[ 3.106802] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.107162] hub 1-1:1.0: USB hub found
[ 3.107208] hub 1-1:1.0: 4 ports detected
[ 3.394671] usb 1-1.3: new low-speed USB device number 3 using dwc2
[ 3.454671] i2c-bcm2835 fe205600.i2c: i2c transfer timed out
[ 3.460432] rtc-pcf8563 3-0051: pcf8563_write_block_data: err=-110 addr=0e, data=03
[ 3.468207] rtc-pcf8563 3-0051: pcf8563_probe: write error
[ 3.473801] rtc-pcf8563: probe of 3-0051 failed with error -5
[ 3.474695] usb 1-1.3: device descriptor read/64, error -32
[ 3.666674] usb 1-1.3: device descriptor read/64, error -32
[ 3.858679] usb 1-1.3: new low-speed USB device number 4 using dwc2
[ 3.938665] usb 1-1.3: device descriptor read/64, error -32
[ 4.130664] usb 1-1.3: device descriptor read/64, error -32
[ 4.242782] usb 1-1-port3: attempt power cycle
[ 4.717907] crng init done
[ 4.717914] random: 7 urandom warning(s) missed due to ratelimiting
[ 4.762671] raid6: neonx8 gen() 3170 MB/s
[ 4.810681] raid6: neonx8 xor() 2830 MB/s
[ 4.858686] raid6: neonx4 gen() 2654 MB/s
[ 4.870674] usb 1-1.3: new low-speed USB device number 5 using dwc2
[ 4.906678] raid6: neonx4 xor() 2196 MB/s
[ 4.954655] raid6: neonx2 gen() 2282 MB/s
[ 5.002659] raid6: neonx2 xor() 2003 MB/s
[ 5.050682] raid6: neonx1 gen() 1865 MB/s
[ 5.098667] raid6: neonx1 xor() 1648 MB/s
[ 5.146655] raid6: int64x8 gen() 1655 MB/s
[ 5.194671] raid6: int64x8 xor() 1220 MB/s
[ 5.242655] raid6: int64x4 gen() 1425 MB/s
[ 5.290663] raid6: int64x4 xor() 970 MB/s
[ 5.306666] usb 1-1.3: device not accepting address 5, error -32
[ 5.338663] raid6: int64x2 gen() 1165 MB/s
[ 5.386681] raid6: int64x2 xor() 862 MB/s
[ 5.390666] usb 1-1.3: new low-speed USB device number 6 using dwc2
[ 5.434681] raid6: int64x1 gen() 930 MB/s
[ 5.482688] raid6: int64x1 xor() 666 MB/s
[ 5.482691] raid6: using algorithm neonx8 gen() 3170 MB/s
[ 5.482695] raid6: .... xor() 2830 MB/s, rmw enabled
[ 5.482698] raid6: using neon recovery algorithm
[ 5.486520] xor: measuring software checksum speed
[ 5.522654] 8regs : 5943.000 MB/sec
[ 5.562652] 32regs : 6779.000 MB/sec
[ 5.602654] arm64_neon: 6122.000 MB/sec
[ 5.602658] xor: using function: 32regs (6779.000 MB/sec)
[ 5.604563] async_tx: api initialized (async)
[ 5.769791] Btrfs loaded, crc32c=crc32c-generic
[ 5.806684] usb 1-1.3: device not accepting address 6, error -32
[ 5.812941] usb 1-1-port3: unable to enumerate USB device
[ 6.115068] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 6.570238] systemd[1]: System time before build time, advancing clock.
[ 6.603697] systemd[1]: Inserted module 'autofs4'
[ 6.660463] systemd[1]: systemd 245.4-4ubuntu3.15 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=hybrid)
[ 6.661170] systemd[1]: Detected architecture arm64.
[ 6.739284] systemd[1]: Set hostname to .
[ 7.343940] systemd[1]: Created slice system-modprobe.slice.
[ 7.345248] systemd[1]: Created slice system-serial\x2dgetty.slice.
[ 7.346320] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[ 7.347330] systemd[1]: Created slice User and Session Slice.
[ 7.347629] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ 7.353446] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[ 7.353619] systemd[1]: Reached target User and Group Name Lookups.
[ 7.353671] systemd[1]: Reached target Slices.
[ 7.353717] systemd[1]: Reached target Swap.
[ 7.354016] systemd[1]: Listening on Device-mapper event daemon FIFOs.
[ 7.354405] systemd[1]: Listening on LVM2 poll daemon socket.
[ 7.354639] systemd[1]: Listening on multipathd control socket.
[ 7.356640] systemd[1]: Listening on Syslog Socket.
[ 7.356978] systemd[1]: Listening on fsck to fsckd communication Socket.
[ 7.357180] systemd[1]: Listening on initctl Compatibility Named Pipe.
[ 7.357825] systemd[1]: Listening on Journal Audit Socket.
[ 7.358178] systemd[1]: Listening on Journal Socket (/dev/log).
[ 7.358613] systemd[1]: Listening on Journal Socket.
[ 7.359107] systemd[1]: Listening on Network Service Netlink Socket.
[ 7.359494] systemd[1]: Listening on udev Control Socket.
[ 7.359799] systemd[1]: Listening on udev Kernel Socket.
[ 7.363624] systemd[1]: Mounting Huge Pages File System...
[ 7.367925] systemd[1]: Mounting POSIX Message Queue File System...
[ 7.372902] systemd[1]: Mounting Kernel Debug File System...
[ 7.377438] systemd[1]: Mounting Kernel Trace File System...
[ 7.383320] systemd[1]: Starting Journal Service...
[ 7.388623] systemd[1]: Starting Set the console keyboard layout...
[ 7.393653] systemd[1]: Starting Create list of static device nodes for the current kernel...
[ 7.398388] systemd[1]: Starting Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling...
[ 7.398572] systemd[1]: Condition check resulted in Load Kernel Module drm being skipped.
[ 7.398869] systemd[1]: Condition check resulted in OpenVSwitch configuration for cleanup being skipped.
[ 7.401789] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
[ 7.401942] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
[ 7.409176] systemd[1]: Starting Load Kernel Modules...
[ 7.414064] systemd[1]: Starting Remount Root and Kernel File Systems...
[ 7.420262] systemd[1]: Starting udev Coldplug all Devices...
[ 7.425678] systemd[1]: Starting Uncomplicated firewall...
[ 7.432401] systemd[1]: Mounted Huge Pages File System.
[ 7.433735] systemd[1]: Mounted POSIX Message Queue File System.
[ 7.434865] systemd[1]: Mounted Kernel Debug File System.
[ 7.435866] systemd[1]: Mounted Kernel Trace File System.
[ 7.440828] systemd[1]: Finished Create list of static device nodes for the current kernel.
[ 7.444947] systemd[1]: Finished Uncomplicated firewall.
[ 7.466410] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 7.474938] systemd[1]: Finished Remount Root and Kernel File Systems.
[ 7.476732] systemd[1]: Condition check resulted in Rebuild Hardware Database being skipped.
[ 7.476882] systemd[1]: Condition check resulted in Platform Persistent Storage Archival being skipped.
[ 7.480859] systemd[1]: Starting Load/Save Random Seed...
[ 7.485987] systemd[1]: Starting Create System Users...
[ 7.504425] systemd[1]: Finished Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling.
[ 7.514178] systemd[1]: Finished Load/Save Random Seed.
[ 7.517023] lp: driver loaded but no devices found
[ 7.538023] systemd[1]: Finished Create System Users.
[ 7.543478] systemd[1]: Starting Create Static Device Nodes in /dev...
[ 7.544070] systemd[1]: Started Journal Service.
[ 7.549078] ppdev: user-space parallel port driver
[ 7.570198] systemd-journald[430]: Received client request to flush runtime journal.
[ 7.589659] systemd-journald[430]: File /var/log/journal/80bde9640d654be4aaea6c0fc94a9262/system.journal corrupted or uncleanly shut down, renaming and replacing.
[ 8.155855] rpivid-mem feb00000.hevc-decoder: rpivid-hevcmem initialised: Registers at 0xfeb00000 length 0x00010000
[ 8.156061] rpivid-mem feb10000.rpivid-local-intc: rpivid-intcmem initialised: Registers at 0xfeb10000 length 0x00001000
[ 8.156222] rpivid-mem feb20000.h264-decoder: rpivid-h264mem initialised: Registers at 0xfeb20000 length 0x00010000
[ 8.156377] rpivid-mem feb30000.vp9-decoder: rpivid-vp9mem initialised: Registers at 0xfeb30000 length 0x00010000
[ 8.219732] mc: Linux media interface: v0.10
[ 8.280957] videodev: Linux video capture interface: v2.00
[ 8.292637] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.293094] vc_sm_cma: module verification failed: signature and/or required key missing - tainting kernel
[ 8.307841] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[ 8.307851] [vc_sm_connected_init]: start
[ 8.314986] [vc_sm_connected_init]: installed successfully
[ 8.338542] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.352386] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.358222] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.359157] bcm2835-isp bcm2835-isp: bcm2835_isp_get_supported_fmts: port has more encoding than we provided space for. Some are dropped.
[ 8.373766] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.377152] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev/video13
[ 8.377538] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /dev/video14
[ 8.377966] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /dev/video15
[ 8.378255] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/video16
[ 8.378270] bcm2835-isp bcm2835-isp: Register output node 0 with media controller
[ 8.378285] bcm2835-isp bcm2835-isp: Register capture node 1 with media controller
[ 8.378291] bcm2835-isp bcm2835-isp: Register capture node 2 with media controller
[ 8.378296] bcm2835-isp bcm2835-isp: Register capture node 3 with media controller
[ 8.378424] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp
[ 8.420432] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[ 8.420462] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[ 8.439772] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[ 8.439795] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[ 8.445642] : bcm2835_codec_get_supported_fmts: port has more encoding than we provided space for. Some are dropped.
[ 8.493203] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[ 8.493225] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[ 8.540979] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 8.555240] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 8.650925] brcmfmac: F1 signature read @0x18000000=0x15264345
[ 8.666918] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 8.678789] usbcore: registered new interface driver brcmfmac
[ 8.791975] Bluetooth: Core ver 2.22
[ 8.792120] NET: Registered protocol family 31
[ 8.792125] Bluetooth: HCI device and connection manager initialized
[ 8.792142] Bluetooth: HCI socket layer initialized
[ 8.792148] Bluetooth: L2CAP socket layer initialized
[ 8.792210] Bluetooth: SCO socket layer initialized
[ 8.902478] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 8.917591] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Nov 1 2021 00:37:25 version 7.45.241 (1a2f2fa CY) FWID 01-703fd60
[ 9.021477] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[ 9.473070] alua: device handler registered
[ 9.476080] emc: device handler registered
[ 9.479113] rdac: device handler registered
[ 10.243752] audit: type=1400 audit(1641790601.671:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/man" pid=755 comm="apparmor_parser"
[ 10.243773] audit: type=1400 audit(1641790601.671:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_filter" pid=755 comm="apparmor_parser"
[ 10.243785] audit: type=1400 audit(1641790601.671:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_groff" pid=755 comm="apparmor_parser"
[ 10.252527] audit: type=1400 audit(1641790601.679:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/tcpdump" pid=754 comm="apparmor_parser"
[ 10.255796] audit: type=1400 audit(1641790601.683:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/cups-browsed" pid=759 comm="apparmor_parser"
[ 10.264598] audit: type=1400 audit(1641790601.691:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ippusbxd" pid=760 comm="apparmor_parser"
[ 10.265378] audit: type=1400 audit(1641790601.691:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="libreoffice-senddoc" pid=761 comm="apparmor_parser"
[ 10.289047] audit: type=1400 audit(1641790601.715:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=763 comm="apparmor_parser"
[ 10.290329] audit: type=1400 audit(1641790601.715:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=763 comm="apparmor_parser"
[ 10.298863] audit: type=1400 audit(1641790601.727:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="libreoffice-soffice" pid=756 comm="apparmor_parser"
[ 10.595693] systemd-journald[430]: Failed to read journal file /var/log/journal/80bde9640d654be4aaea6c0fc94a9262/user-1000.journal for rotation, trying to move it out of the way: Device or resource busy
[ 15.777549] uart-pl011 fe201000.serial: no DMA platform data
[ 16.480065] kauditd_printk_skb: 40 callbacks suppressed
[ 16.480071] audit: type=1400 audit(1659693943.974:52): apparmor="DENIED" operation="capable" profile="/usr/sbin/cups-browsed" pid=923 comm="cups-browsed" capability=23 capname="sys_nice"
[ 16.820853] bcmgenet: Skipping UMAC reset
[ 16.823434] bcmgenet fd580000.ethernet: configuring instance for external RGMII
[ 16.824287] bcmgenet fd580000.ethernet eth0: Link is Down
[ 16.882548] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[ 20.930814] bcmgenet fd580000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 20.930851] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 21.787145] Bluetooth: HCI UART driver ver 2.3
[ 21.787157] Bluetooth: HCI UART protocol H4 registered
[ 21.787162] Bluetooth: HCI UART protocol BCSP registered
[ 21.787243] Bluetooth: HCI UART protocol LL registered
[ 21.787248] Bluetooth: HCI UART protocol ATH3K registered
[ 21.787281] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 21.787444] Bluetooth: HCI UART protocol Intel registered
[ 21.787580] Bluetooth: HCI UART protocol Broadcom registered
[ 21.787614] Bluetooth: HCI UART protocol QCA registered
[ 21.787618] Bluetooth: HCI UART protocol AG6XX registered
[ 21.787648] Bluetooth: HCI UART protocol Marvell registered
[ 21.889973] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 21.889982] Bluetooth: BNEP filters: protocol multicast
[ 21.889995] Bluetooth: BNEP socket layer initialized
[ 21.908735] NET: Registered protocol family 38
[ 27.834778] Bluetooth: RFCOMM TTY layer initialized
[ 27.834806] Bluetooth: RFCOMM socket layer initialized
[ 27.834826] Bluetooth: RFCOMM ver 1.11

@Chick92
Copy link

Chick92 commented Aug 16, 2022

Perhaps you should remove any reference to ubuntu support in your marketing material, since as though A) it quite clearly doesn't work, and B) you're not actively doing anything about it not working.

@chbarg
Copy link

chbarg commented Aug 30, 2022

@Chick92 : I second that
Having Ubuntu running on these devices will open several markets, especially companies that would prefer to have full Linux on the devices.

@chbarg
Copy link

chbarg commented Aug 30, 2022

@lakshanthad maybe Seeed can create a guide like:

  • Download Ubuntu from Canonical
  • run command 1
  • run command 2
  • etc
  • etc

The critical part is to start from the version of Ubuntu for ARM coming directly from Canonical.
Using an image from Seeed would render the guide out of date unless Seeed is willing to constantly updating it.
One example: the RockPi boards are nice, but the images are not up to date.
Another example: the Seeed mini router may be a viable product for my application since I do not depend on Seeed to keep it running.

@alduxvm
Copy link

alduxvm commented Dec 12, 2022

I can confirm that following the instructions from @lakshanthad using ubuntu server 20.04.5 LTS 64bits works, and just the screen is in portrait mode, but after changing it it will work.

The next issue is that upon the first reboot, the hdmi was enabled again, so the LCD screen does not work... is there a workaround for that?

Also, pressing the function keys, gives mes ASD for each of keys.

@kyle-inv-disco
Copy link

The following are issues when running Ubuntu on reTerminal.

  1. reTerminal cannot reboot from Ubuntu. It gets stuck and the "SYS LED" stays turned ON
  2. When reTerminal is powered off and powered back on, mipi LCD driver is not loaded. Need to do the following steps every time I turn on reTerminal
  • sudo modprobe -r mipi_dsi
  • sudo modprobe mipi_dsi
  • sudo systemctl restart systemd-logind
  1. Accelerometer is not loaded on boot. Need to load the accelerometer manually by:
  • sudo modprobe lis331dlh-i2c
  1. Sometimes when you type password in Ubuntu Desktop log in screen, the "Enter" button doesnt work and it is not possible to log in to Ubuntu.

The above has been tested after installing Ubuntu Server, installing reTerminal drivers and installing Ubuntu Desktop

You can create a daemon at boot like I have that looks for runlevel 5 and modprobes to get Ubuntu booting the display every time.

@kyle-inv-disco
Copy link

!/bin/bash

GUI_TARGET_RUNLEVEL=5

while : ; do
current_runlevel=$(/sbin/runlevel | awk '{ print $2 }')

if [ "$current_runlevel" -eq "$GUI_TARGET_RUNLEVEL" ]; then
    echo "Target runlevel $GUI_TARGET_RUNLEVEL reached."
    break
else
    echo "Current runlevel is $current_runlevel. Waiting for target runlevel $GUI_TARGET_RUNLEVEL..."
fi

sleep 5

done
modprobe -r mipi_dsi
sleep 5
modprobe mipi_dsi
startx

@marshallmassengill
Copy link

@lakshanthad - Is there a method that works for Ubuntu 20.04.5? I have not been able to make this work. Getting the black screen at best or compile-time errors for the modules.

@chbarg
Copy link

chbarg commented Oct 25, 2023

Watch out ! Updating the Raspbian OS on the reTerminal results in a blank screen. I have not found a reliable solution.
Both Ubuntu and Raspbian do not work well on the reTerminal.

@chbarg
Copy link

chbarg commented Oct 25, 2023

@lakshanthad - Is there a method that works for Ubuntu 20.04.5? I have not been able to make this work. Getting the black screen at best or compile-time errors for the modules.

I gave up with Ubuntu on reTerminal. And now even Raspbian is failing.

@marshallmassengill
Copy link

I got 22.04 to work:
git clone --depth 1 https://github.com/Seeed-Studio/seeed-linux-dtoverlays
there is a reTerminal.sh script in the scripts folder there that worked for me. I then just needed to adjust the frame buffer with
echo 1 | sudo tee /sys/class/graphics/fbcon/rotate_all
That probably needs to be changed for X support but I'm not worried about that at the moment.

That being said... I would really like 20.04 for ROS1 support. I am digging into other options for building out what I need but getting a workable solution for 20.04 would be ideal.

@franzos
Copy link

franzos commented Nov 9, 2023

Watch out ! Updating the Raspbian OS on the reTerminal results in a blank screen. I have not found a reliable solution. Both Ubuntu and Raspbian do not work well on the reTerminal.

Facing the same issue; Literally just broke.

Edit:

For the future:

  1. Make image before updates
  2. Install drivers with ./scripts/reTerminal.sh --keep-kernel

This should help avoid breakage.

@lpbellier
Copy link

Hey is this issue still open?

@marshallmassengill
Copy link

Yes.

@matsujirushi
Copy link
Contributor

matsujirushi commented Jan 26, 2024

When reTerminal is powered off and powered back on, mipi LCD driver is not loaded. Need to do the following steps every time I turn on reTerminal

I fixed this issue.
It's in my repository.
https://github.com/matsujirushi/seeed-linux-dtoverlays/blob/main/README_reTerminal2.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests