This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[SOLVED] Raspbian bug kills Moitessier HAT systems after upgrading to kernel 4.19.118
#11
Same result here.
First I thought that this workaround doesn't work for me as I already had manually built Moitessier kernel module for 4.19.118 kernel before this release and might had broken something. But apparently I'm not the only one having issues with new release. Now I'm wondering if anyone succeeded to install new driver with workaround...
Anyways, as far as manually built driver works fine with i2c-gpio commented out in /boot/config.txt I decided to leave it as is until next release of kernel and/or driver...
Reply
#12
Same result here. I hope this gets fixed soon.
Reply
#13
Are you updating the kernel after step 4? doing so you will overwrite the fix. Kernel should be updated before step 4. Obviously this is not clear in the instructions.
Reply
#14
(2020-06-30, 09:54 AM)Sailoog Wrote: Are you updating the kernel after step 4? doing so you will overwrite the fix. Kernel should be updated before step 4. Obviously this is not clear in the instructions.

I'm running 4.19.118 and followed "Senario 1" sequence without explicit forced kernel reinstall after step 4. Tryed it for a couple of times, but result was the same.

Update:
Made another attempt and found what the issue is. Moitessier package instalation does fail on step 10. Then on step 11 bugfix script attepts to do 'sudo apt-get upgrade', which in order attempts to finish unfinished (failed) installation of Moitessier package and fails, causing the bugfix script to exit (line 111) before actually copying  fixed i2c-gpio.dtbo to /boot/overlays
If I manually do the copying 'sudo cp moitessier/dtbo/i2c-gpio_bug_fix_4.19.118.dtbo /boot/overlays/i2c-gpio.dtbo' after step 11 and before step 12, then everything works just fine.
Reply
#15
Here are the steps I followed exactly:

1. Re-image my SD card with Openplotter Moitessier HAT.
2. Run through initial setup but do not update RP at the end.
3. Install Wifi drivers.
4. Update all OP Apps.
5. Install MCS App.
6. Reboot.
7. Download and install moitessier_4.19.118_2.0.1_armhf.deb, which fails at the end.
8. Run: sudo moitessier/scripts/bug_fix_kernel_4.19.118 moitessier/dtbo/i2c-gpio_bug_fix_4.19.118.dtbo
9. Reboot.

My Pi will not reboot after that. If the instruction are not clear, and I'm doing something wrong, then please fix the instructions. If I've followed the instructions correctly, then there must be a problem. Could the MCS app be causing the bug fix to fail?
Reply
#16
(2020-06-30, 10:53 AM)serh11 Wrote:
(2020-06-30, 09:54 AM)Sailoog Wrote: Are you updating the kernel after step 4? doing so you will overwrite the fix. Kernel should be updated before step 4. Obviously this is not clear in the instructions.

I'm running 4.19.118 and followed "Senario 1" sequence without explicit forced kernel reinstall after step 4. Tryed it for a couple of times, but result was the same.

Update:
Made another attempt and found what the issue is. Moitessier package instalation does fail on step 10. Then on step 11 bugfix script attepts to do 'sudo apt-get upgrade', which in order attempts to finish unfinished (failed) installation of Moitessier package and fails, causing the bugfix script to exit (line 111) before actually copying  fixed i2c-gpio.dtbo to /boot/overlays
If I manually do the copying 'sudo cp moitessier/dtbo/i2c-gpio_bug_fix_4.19.118.dtbo /boot/overlays/i2c-gpio.dtbo' after step 11 and before step 12, then everything works just fine.


Interesting !
The description of the error coincides with my experience.
I will test the solution later


(2020-06-30, 12:32 PM)jamieFL Wrote: Here are the steps I followed exactly:

1. Re-image my SD card with Openplotter Moitessier HAT.
2. Run through initial setup but do not update RP at the end.
3. Install Wifi drivers.
4. Update all OP Apps.
5. Install MCS App.
6. Reboot.
7. Download and install  moitessier_4.19.118_2.0.1_armhf.deb, which fails at the end.
8. Run: sudo moitessier/scripts/bug_fix_kernel_4.19.118 moitessier/dtbo/i2c-gpio_bug_fix_4.19.118.dtbo
9. Reboot.

My Pi will not reboot after that.  If the instruction are not clear, and I'm doing something wrong, then please fix the instructions.  If I've followed the instructions correctly, then there must be a problem.  Could the MCS app be causing the bug fix to fail?

can it be up to rpi-eeprom?
I updated this. We all want the same thing? Smile
Boot from SSD ....
Reply
#17
pi@openplotter:~/Downloads $ sudo dpkg -i moitessier_4.19.118_2.0.1_armhf.deb
(Lese Datenbank ... 102217 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von moitessier_4.19.118_2.0.1_armhf.deb ...
Entpacken von moitessier (2.0.1) über (2.0.1) ...

******************************************************************************************
Running post remove... (upgrade)
******************************************************************************************


******************************************************************************************
Nothing to do
******************************************************************************************

moitessier (2.0.1) wird eingerichtet ...

******************************************************************************************
Running post install...
******************************************************************************************

/etc/systemd/system/moitessier.shutdown.service

******************************************************************************************
File /etc/systemd/system/moitessier.shutdown.service deleted.
******************************************************************************************

[Unit]
Description=Moitessier Shutdown

[Service]
ExecStart=/home/pi/moitessier/scripts/system_shutdown
Restart=always

[Install]
WantedBy=multi-user.target

******************************************************************************************
Setting up interfaces...
******************************************************************************************

moitessier: setting up /etc/modules
i2c-dev

******************************************************************************************
Updating HAT firmware...
******************************************************************************************


******************************************************************************************
This script is used to flash the STM32 microcontroller on the Moitessier HAT.

One of the following options can be applied:
-r : Will load the latest firmware release from the remote repository https://github.com/mr-rooney/moitessier-firmware.git.
The firmware will be located in "./fw/application.binary".
-s : Specifies the firmware that should be used.
This option requires the path + filename as parameter
-f : Forces the Raspberry Pi to shutdown after firmware update. A shutdown + power cycle
is required only for virgin Moitessier HATs without any firmware.

Note: Options -s and -r must not be applied at the same time!!
******************************************************************************************


******************************************************************************************
Determining I2C GPIO device
******************************************************************************************


******************************************************************************************
I2C GPIO device: i2c-7
******************************************************************************************


******************************************************************************************
The firmware file "application.binary" is used for the update
******************************************************************************************


******************************************************************************************
Terminating running processes...
******************************************************************************************


******************************************************************************************
"kplex" not running
******************************************************************************************


******************************************************************************************
"gpsd" not running
******************************************************************************************


******************************************************************************************
"opencpn" killed
******************************************************************************************


******************************************************************************************
"node" killed
******************************************************************************************


******************************************************************************************
WARNING!!

Module "moitessier" is loaded, we will unload to gain access to the required GPIO pins.
******************************************************************************************

INFO: Unloading "moitessier".
...................................

******************************************************************************************
Flashing firmware.
******************************************************************************************

stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Warning: Not a tty: /dev/i2c-7
Error probing interface "serial_posix"
Interface i2c: addr 0x41

GPIO sequence start
setting gpio 18 to 1... OK
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 17 to 1... OK
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 18 to 0... OK
delay 100000 us
delay 100000 us
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 18 to 1... OK
delay 100000 us
delay 100000 us
GPIO sequence end

size = 131072
Version : 0x10
Device ID : 0x0442 (STM32F030xC/F09xxx)
- RAM : Up to 32KiB (6144b reserved by bootloader)
- Flash : Up to 128KiB (size first sector: 2x2048)
- Option RAM : 16b
- System RAM : 8KiB
Write to memory
Erasing memory
Wrote and verified address 0x08020000 (100.00%) Done.

Starting execution at address 0x08000000... done.

GPIO sequence start
delay 100000 us
delay 100000 us
setting gpio 17 to 0... OK
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 18 to 1... OK
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 18 to 0... OK
delay 100000 us
delay 100000 us
delay 100000 us
setting gpio 18 to 1... OK
GPIO sequence end



******************************************************************************************
FIRMWARE UPDATE SUCCESSFULL!!!
******************************************************************************************


******************************************************************************************
Installation succeeded. Rebooting system...
******************************************************************************************
Reply
#18
nebosa,

How did you get it to work? Did it actually work?
Reply
#19
yes, but still far away from USB Boot.
What have I done ?
I followed Method 2.
I have to test it myself again Smile

Installation process - scenario 2

Turn on the Pi and boot
sudo apt update
sudo apt upgrade

Download the Moitessier package
Install the Moitessier package
dpkg -i xxxxxxxxxx
Install the bug fix: sudo moitessier / scripts / bug_fix_kernel_4.19.118


sudo cp moitessier/dtbo/i2c-gpio_bug_fix_4.19.118.dtbo /boot/overlays/i2c-gpio.dtbo
(Thanks @ serh11)
Reboot the Pi


finished

BUT

You probably don't get the kernel version for the usb boot (without SD).
For this you need a current eeprom / kernel version 5.x which is again not compatible with Moitessier HAT.

I keep testing ....
Reply
#20
(2020-06-30, 07:44 PM)nebosa Wrote: yes, but still far away from USB Boot.
There is always an option to build the driver for kernel 5.x from sources...
Something like this:
git clone https://github.com/mr-rooney/moitessier.git
cd moitessier
git submodule update --init --recursive
cd modules/moitessier
make all KDIR=/lib/modules/4.19.118-v7l+/build/
This needs to be adjusted for your kernel version, and it needs kernel headers installed and there might be other dependencies.
Of course there is a risk of incompatibility with another version of kernel, but this is another story...
If everything goes well with kernel module, then you'll need a set of userspace applications for your kernel version, I suspect that symbolic links to 4.19.118 versions of applications would be just fine, but if not, then they can be bluit in a similar way to the kernel module...
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)