Failed to start load kernel modules and no wifi interface found

Hello,

I just purchased gopigo3 and pi 3, and followed the steps to install and connect to it. After I install the raspian for robots to a sd card (per instruction at: https://www.dexterindustries.com/howto/install-raspbian-for-robots-image-on-an-sd-card/) and found this error message “failed to start load kernel modules” (see pic attached). IMG_5526 And after I get to the desktop main interface, there’s no wifi interface found. Can you please help? Thank you.

This is the detail of the failure message:

FullSizeRender

Hi @shuaiyue29,

This is a bug with the linux kernel.
Google this error and you’ll see a couple of threads on this subject.

I have 2 questions though:

  1. What was connected to the Raspberry Pi during the boot-up process?

  2. Have you used the image found on the following page? Can you also confirm that the MD5 matched with yours?
    https://sourceforge.net/projects/dexterindustriesraspbianflavor/

Thank you!

Hi RobertLucian,

To answer your questions:

  1. I mount the Raspberry Pi to the gopigo and power it up by the power adapter. I have a wifi dongle plugged in, but don’t have any ethernet cable connected.

  2. Yes, I jused the image found in this page. I’m new to this, what is “MD5”? How can I tell if it matches?

Thank you!

Hi @shuaiyue29,

MD5 is an algorithm used for determining if a file has downloaded correctly from a source on the web.

An iso image that had “mutations” during the download process, might not run as intended on the RaspberryPi.
What we need to do is check if the MD5 code found in our zip file matches with yours.


Step I

To find our MD5 code, take a look inside the zip file (link here) that’s in 2017.06.21_Dexter_Industries_jessie.zip and see that there’s a text document which contains an MD5 string in its name. Open it up and put it some place to compare it with the other one.

md5_ours


Step II

After you extract the image from the archive, open Win32 Disk Imager and open up the image you’ve just extracted. Then, check you have MD5 selected in the Hash section and then press Generate. It’s going to take a little bit until the code is generated.

You should see something like this.

your_md5


Step III

Compare those 2 codes. If they match, then it means you have the right image.
If they don’t, then you need to redownload the zip file that contains our Raspbian For Robots image.

Fun fact: it seems like in my case, I have the right image as both codes 2ac3f4643720e51336cc7ebf2ccc143e match.


This is how I can help you.
If it still doesn’t work, then I suggest you remove the GoPiGo from the RaspberryPi and try to boot Raspian For Robots this way.


Thank you!

Hello @RobertLucian

I followed your step I thru III and found the same error. Then I also physically removed GoPiGo from the RaspberryPi and boot the Raspian for Robots with RaspberryPi only, but this error still remains.

FYI, I don’t see any issue when I boot with NOOBS from the RaspberryPi official website.

Could you think of any other ways to resolve this?

Thank you for your help.

Hello again @RobertLucian

I noticed from this link below that my Gopigo3 LED for wifi connection is never on. Do you think if this is a hardware problem or software problem?

https://www.dexterindustries.com/GoPiGo/get-started-with-the-gopigo3-raspberry-pi-robot/2-connect-to-the-gopigo-3/

Thank you!

Hi @shuaiyue29,


Few Comments

The WiFi LED is only functional for DexterOS. So the link you’ve posted here is for DexterOS and not for Raspbian For Robots.

Now, I’m not sure why your Raspbian For Robots doesn’t successfully boot. We haven’t met this issue so far, so it’s hard for us to figure out something (at this point).


Alternative

We could try another approach. Get yourself a fresh Jessie image (don’t use Stretch), boot it up and then run the following command in a terminal:
sudo curl https://raw.githubusercontent.com/DexterInd/Raspbian_For_Robots/master/update_master.sh | bash

Running this command will get you (in 30-60 seconds) a GUI image like the following one:
updating_master

Press on Update Dexter Software and let the update do its job. Afterward, reboot and update your appropriate robot in order to use it.

By the way, I haven’t look at what these guys have, but on this website, I think you can download the Jessie image:
http://gnutoolchains.com/raspberry/jessie/


Please let us know if this works for you or not.

Thank you!

The official link for the last Jessie is on the RaspberryPi.org archives

Hi @cleoqc @RobertLucian

I don’t see this error (“failed to start load kernel modules”) with this latest Jessie OS that @cleoqc pointed out . With the OS of Raspbian for Robots installed, I tried all different ways that @RobertLucian suggested but couldn’t resolve this error. Do you know what might go wrong here? Could the gopigo board be defective?
FYI, with the Raspbian for Robots OS installed, I tried the following simple test code after I fully assembled all hardware, but the gopigo wheels are not spinning at all.
image
Can I use the Jesse OS instead of the Raspbian for Robots OS to program the gopigo? What additional packages/ files/ libraries do I need to program this gopigo with python?

Hello @shuaiyue29,
You seem to be using code meant for the gopigo2 and not for the gopigo3.

You need to use
import gopigo3
Or
import easygopigo3

Hi @shuaiyue29,

I also want to make sure you’ve burned your micro SD Card with a Jessie image from the archives @cleoqc pinpointed and then you ran the suggestion I wrote in my previous reply.

Can you confirm this and also take @cleoqc suggestions into account?

Thank you!

Hi @RobertLucian @cleoqc

I still have the same issue (failed to start load kernel modules) after I did the following steps:

  1. I have reformatted and burned my micro sd card with the jessie image from the archive @cleoqc suggested
  2. Run the following command in a terminal:
    sudo curl https://raw.githubusercontent.com/DexterInd/Raspbian_For_Robots/master/update_master.sh | bash
  3. After the GUI pops up, I pressed on update dexter software and update the gopigo3 and reboot
  4. When I reboot, I still see this same failure of loading kernel (same as the error image I attached in the very first thread)
  5. I wrote the following simple python test code to test the communication to the hardware. The terminal executed the command, but the wheels are not moving at all:

import easygopigo3 as easy
import time

gpg = easy.EasyGoPiGo3()

gpg.forward()
time.sleep(2)
gpg.backward()
time.sleep(2)
gpg.stop()

I have tried the steps above twice with 2 fresh micro SD card, but this failure still exists. I’m a little frustrated, could this be a hardware issue on my gopigo3 board?

Thank you for your help

Hi @shuaiyue29,

You have followed the right steps.

Now, I think there may be a software issue with the Raspberry Pi. It isn’t the first time I encountered this kernel issue, but when I did have this problem, all I needed to do was to reburn the micro SD Card.

It “feels” as if the installation went wrong somewhere. Then again, even with our Raspbian For Robots image it didn’t work for you, which may also indicate an issue with the hardware because on my RaspberryPis it works.

Do you have a spare RaspberryPi around? It doesn’t have to be a Pi3, you can also use a Pi2 or even a Pi1. I just want to exclude the possibility of having a faulty hardware.

I’m also tagging this post with the pending label, which means our team is going to take a better look at this issue.

Thank you!

Hi @RobertLucian,

I don’t have any other Raspberry Pi board. I just re-burned a new micro SD card and used my raspberry pi 3 with other projects/ functions. The PI works fine. I agree with you that it might be a hardware issue. Since my Pi works perfectly by itself without the gopigo board mounted to it, I think the hardware issue should be at the gopigo board. What would you think? Would it be possible for you to send me another gopigo board to test and verify?

Thank you!

Hey @shuaiyue29 if you want to double check that the problem isn’t caused by the GoPiGo3, you can do the following:

  1. Re-burn an SD Card with Jessie on it.
  2. Put it in your Raspberry Pi 3.
  3. Boot it up.

If that works, you might try putting USB power on the GoPiGo3, powering up the working Pi3 and the GoPiGo3 all together.

And if that works, you can install the GoPiGo3 libraries by running this call in the command line:

sudo curl -L dexterindustries.com/update_gopigo3 | bash

Sorry about the confusion here. Thanks for working with us on this.

Hi @JohnC @RobertLucian

I purchased another brand new Raspberry Pi 3 and a new micro SD, and then

  1. re-burn the latest Jessie @cleoqc suggested in the archives to the microSD.

  2. Put it in the new pi 3

  3. boot it up and no error message during boot up at this stage yet

  4. Install the Gopigo 3 libraries by running this in the command line: sudo curl -L dexterindustries.com/update_gopigo3 | bash

  5. After 1 minute or 2, the installation completed and prompt me to reboot

  6. During the boot up, the same error message comes up (see the images below) image2

  7. I opened a terminal and run the command in the following image and the details of the failure is here:
    image1

Can you please help to address the problem?

Thanks!

Hello @shuaiyue29
My apologies for not having looked into this earlier. I made it my priority this morning.
I downloaded the file from the link I gave you, just like you did

Then I did sudo curl -L -k dexterindustries.com/update_gopigo3 | bash
The only difference here is the -k which is needed when a secure connection is expected but we want to bypass it. This should have no bearing on the end result.
After a couple of minutes I was asked to reboot and I saw the error.

I am baffled though. Doing the installation this way does not change anything at all related to kernel or systemd. Plus everything works regardless. I was able to run the GoPiGo3 examples without issues.

Does this error cause your GoPiGo3 to fail? Are the examples under /home/pi/Dexter/GoPiGo3/Software/Python/Examples work for you? (They do for me)
Note that the wheels only move when connected to batteries, usb power is not sufficient)

Sidenote: to connect to the distance sensor, you also need to run
sudo curl -L -k dexterindustries.com/update_sensors | bash
so the sensors library will get installed.

Ok, I found how to get rid of the error message:

sudo nano /etc/modules-load.d/modules.conf

and remove the line that says spi-dev
Save under the same name

then
sudo raspi-config
Choose interfacing options, then spi, and enable (it should already be enabled, we’re just making sure)

Also this error had no impact whatsoever on the Pi running GoPiGo3 or not.