Error : "the module is excluded"


#1

Hi !

When I try the command : robot.module.firmware_revision. The error “module module_name is excluded” appears. And when I try to access the data, they are always zero. However I updated the firmware in 0.5.1 version.

My USB module is in Rev 0.2.1 but all other module are in Rev 0.2.0.

Can you help me :slightly_smiling_face: ?

Thanks,


#2

Hi @Theo,

Welcome to the Luos community. I just reproduce your setup to get your bug.
I use a 0.0.2 USB shield on a 0.2.1 L0 board loaded with the 0.5.1 firmware revision and a potentiometer with a 0.2.0 L0 board with the 0.5.1 firmware revision. I run my test using pyluos 1.1.

The only error I have is the firmware revision number.
Another difference in my picture is the text after the robot object creation. We noticed that on some windows computers, it seems to be a Jupyter display bug. Don’t worry this display bug is just display.

For your knowledge, a module can be excluded if he don’t receive or take to many time to manage one of your command. Some specific variables read, such as firmware_revision, have to send a command to the module to get the value.
On the contrary, some others such as rot_position don’t have to send any command, pyluos receive automatically updates of this value.
So, looking at your rot_position value pyluos never receive any update from your potentiometer as if he crashed just after detection.

This is really strange. Do you have other modules working with your Usb module?
If yes, the problem probably come from your potentiometer, but I can’t say if its a software or an hardware problem for now.

@Didbo seems to have quite similar trouble using 0.02 USB shield on a 0.2.0 L0 board loaded with the 0.5.1 firmware revision and a Dynamixel V1 board loaded with 0.5.1 firmware revision linked with an AX-12 motor.
@Didbo do you have any insight about that?

I gona fix the 0.5.1 release today, I lets you know when it’s done.


#3

@Theo, @Didbo I just recompile and republish the 0.5. 1 firmware revision.
Can you try this new one : https://github.com/Luos-Robotics/module_binaries/releases/tag/V0.5.0

I run the same test with this fixed release :

@Theo can you update your 2 modules and give me the result of your test please?


#4

Thanks for your welcome and for your answer. Now I understand better how work the module.

My Usb module work fine with button module, controlled motor module and light module. But I have the same problem above with the other module (Imu, potentiometer, distance, RGB led).

I updated the firmware of my usb module and my potentiometer with your last version, but they are still under 0.5.0 version on jupyter. Maybe I update the firmware wrongly. Could help if I send you the .dfu files?

By the way, the link for upgrading firmware on your github page https://github.com/Luos-Robotics/module_binaries/releases/tag/V0.5.0 show Error 404.


#5

To be sure I just re-download and re-flash my potentiometer module and it’s working. Yes please send me your DFU file by mail.


#6

Hi!
I updated with the new releases of firmware 0.5.1
With an USB module rev 0.2.0, Led and GPIO seem to work fine. It was not a very long or stressfull test.
All modules answer now “0.5.1” when revision is asked.

But, the module DxlV1 still get excluded with a “dead_module” message … sad :wink:


#7

Weird:
Just tryed to use Potentiometer with a DxlV1 on USB. All 3 modules Rev 0.2.0, firmware 0.5.1 .
And I didnt get any exclusion while playing with them.

It was still running fine after I ‘hot-unplug’ the potentiometer.
But after a “connect” message to obtain a new route, the DxlV1 has been excluded after a few commands.


Potentiometer type has changed from previous firmware: Was “Potentiometer” , now is “Angle”.
Perhaps it’s why you get ‘Unknown’ with an old version of pyluos.
Off topic: It should be fine to have a documentation ( or better: json ) describing each module type and inputs/ouputs )


#8

If I understand the potentiometer module seems to “fix” the dynamixel issue ! I have to test it, thank you for this lead.

Really good catch ! @Theo : Your pyluos revision is probably out of date. Can you try updating it using :
pip install pyluos --upgrade

Yes it’s planned. We are currently working on module firmware revision 0.6.0 and this new revision will manage binaries transmission over the Json for big data transmission. We will probably update Gate documentation to explain Json structure with this revision.

@Theo, we are waiting for your results :wink: .


#9

My pyluos revision is already up to date :confused:
I send you my DFU files by mail !


#10

Hi Theo,

Your DFU files were corrupted for some reasons. We are trying to find why they were generated that way. I suppose you followed the instructions from this page of the documentation.
Please check the following steps:

  • Have you checked that you filled the correct addresses? (Vendor and Product ID, Version, Address)
  • Do you use Windows or Mac?

Thanks


#11

Yes, I followed this instructions, and I filled the correct addresses.
I use Windows.
Your dfu files sent by mail work well ! Thank you :grinning:
It means that it’s just an upgrading problem. Maybe I can try to reinstall the Dfu manager?


#12

The files you sent us are lighter than the ones we sent you back (~300o vs. ~25ko). That means the problem may be in generating the file from binaries more than in the upgrading. We have the version 3.0.6, which is working with us. You can check your version, try to generate again a DFU file from binaries and check its size, and if it doesn’t work try to reinstall it.
Keep us updated


#13

I tried to reinstall the software, by the way on this page, there is no link to the firmware download page.
Now my dfu files have the good size and everything work well.

Thank you very much for the help and your fast answers ! :grinning:


#14

There is actually a link on this page (even 2), but they are not quite visible, we will change that. Thanks for the feedback