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

[ergoCubSN002] FirmwareUpdaterCore::getCanBoardsFromEth(): No CAN boards found beneath "10.0.1.1" after a successful driver init. #178

Closed
traversaro opened this issue Dec 3, 2024 · 4 comments

Comments

@traversaro
Copy link
Member

After #176, I am trying to manually update the firmware. The update works fine for AMC, MC4PLUS and EMS4, but if I try to flash the CAN boards of a given ETH board, the discover fails with error:

FirmwareUpdaterCore::getCanBoardsFromEth(): No CAN boards found beneath  "10.0.1.1"  after a successful driver init.

With @S-Dafarra we assumed this could be a problem related to the fact that the robot was not connected to the battery (and hence to the BMS), but the problem persists after we connected a battery to the robot and rebooted the boards.

@traversaro
Copy link
Member Author

It turns out that this is a known problem that already occurred in the past on other ergoCubSN*** robots. As a workaround, we switched the ergocub002-lap to have IP 10.0.1.104, and use switched to use FirmwareUpdater there, and the CAN boards were discovered correctly.

@S-Dafarra
Copy link

It turns out that this is a known problem that already occurred in the past on other ergoCubSN*** robots. As a workaround, we switched the ergocub002-lap to have IP 10.0.1.104, and use switched to use FirmwareUpdater there, and the CAN boards were discovered correctly.

Just adding that we also connected via Ethernet to the connector in the leg

@traversaro
Copy link
Member Author

traversaro commented Dec 3, 2024

It turns out that this is a known problem that already occurred in the past on other ergoCubSN*** robots. As a workaround, we switched the ergocub002-lap to have IP 10.0.1.104, and use switched to use FirmwareUpdater there, and the CAN boards were discovered correctly.

Note that this is a bit brittle, as it connected the laptop as 10.0.1.104, while ergocub-torso was also connected as the same network with the same IP address 10.0.1.104 . A more sound alternative is to assign to the laptop a different IP (for example 10.0.1.105), and then let the FirmwareUpdater load a custom configuration file firmwareupdater.ini that specifies that the 10.0.1.105 address should be used:

[DRIVERS]
ETH "10.0.1.105:3333"

@traversaro
Copy link
Member Author

It turns out that this is a known problem that already occurred in the past on other ergoCubSN*** robots. As a workaround, we switched the ergocub002-lap to have IP 10.0.1.104, and use switched to use FirmwareUpdater there, and the CAN boards were discovered correctly.

I think we can track this specific error in robotology/icub-firmware#544 that has a clearer title, as the specific issue described here was solved by a board restart and avoiding a discovery on 10.0.1.1 board, I think we can close the issue.

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

2 participants