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

This CanOpenNode Library is totally out of date #537

Open
pirupic opened this issue Aug 29, 2024 · 9 comments
Open

This CanOpenNode Library is totally out of date #537

pirupic opened this issue Aug 29, 2024 · 9 comments

Comments

@pirupic
Copy link

pirupic commented Aug 29, 2024

I have the feeling that this CanOpenNode library is not linked to the CanOpenNode project so the library is totally out of date compared to the original one.

It is a pity, we are missing all the important improvements and updates.

@CANopenNode
Copy link
Owner

I don't understand the issue. Did you check git history? What is wrong?

@pirupic
Copy link
Author

pirupic commented Aug 30, 2024

I am Sorry for my comment it was an error

I wanted to post in this repository,
https://github.com/CANopenNode/CanOpenSTM32
It is the repository for the STM32 microcontrollers
the library seems to be a copy, not a link to the CanOpenNode lIbrary.
I though I was posting on that forum.

Sorry Again

@CANopenNode
Copy link
Owner

No problem. CanOpenSTM32 is currently poorely maintained. It is not updated to the latest version. Recently CANopenNode changed a lot - rewritten to follow some misra rules and reformatted. But it should not be hard to update CanOpenSTM32 to the latest version anyway.

As I know, CanOpenSTM32 is not in so bad condition. Latest maintainer added much, but is currently not very active. Is I know, main problem is still with CANsend with larger bus load.

I wish, I have more time to fix things in CanOpenSTM32 too.

@RoxerRN
Copy link

RoxerRN commented Sep 5, 2024

Hi guys,

Just to let you know that I managed to set up a board with an stm32f303 with CAN and another board with STM32u599 and canfd.

I used the CanOpenSTM32 and the last version of CanOpenNode, it worked out of the box without any troubles.

But can you please elaborate a bit concerning the problems with the large bus load on stm32 ?

@CANopenNode
Copy link
Owner

Did you run CANFD and message larger than 8 bytes? Driver would need to be implemented for that. PDO should be already able to handle long CANFD messages.

I didn't check STM32 driver. There are complains when several TPDOs are used. I suspect driver, cansend, tx interrupt. STM32 have 3 hw cantx buffers, driver uses 3, as I know. But I would recommend using only one, as I did with PIC32. There is no need to use three, it just adds complexity and problems.

@mlout
Copy link
Contributor

mlout commented Sep 10, 2024

Just to let you know that I managed to set up a board with an stm32f303 with CAN and another board with STM32u599 and canfd.

I used the CanOpenSTM32 and the last version of CanOpenNode, it worked out of the box without any troubles.

I can confirm the latest CANopenNode also works using a STM32F3DISCOVERY board (which also uses the STM32F303).
I have added a PR to update CANopenNode in the repository and add an example project for the above mentioned board (CANopenNode/CanOpenSTM32#73)

@RoxerRN
Copy link

RoxerRN commented Sep 27, 2024

Did you run CANFD and message larger than 8 bytes? Driver would need to be implemented for that. PDO should be already able to handle long CANFD messages.

I didn't check STM32 driver. There are complains when several TPDOs are used. I suspect driver, cansend, tx interrupt. STM32 have 3 hw cantx buffers, driver uses 3, as I know. But I would recommend using only one, as I did with PIC32. There is no need to use three, it just adds complexity and problems.

No I didn't run can FD by now I just used regular CAN 2.0B with a CAN FD peripheral of the STM32 and it worked out of the box. But it's planned, I will implement the FD driver.

About the mailbox I modified STM32CanOpenNode driver to use only 1 mailbox for sending and it work well with multiple PDO.

Now I struggle with the SDO client, it work but sometime SDO are not sent and I get a timeout, I suspect problems with the CANsend or CANreiceive function (maybe problem with RX mailbox in the driver? ).

Do you have some insights about the SDO client ?

@CANopenNode
Copy link
Owner

@RoxerRN
Copy link

RoxerRN commented Oct 11, 2024

Hi Janez, you are right SDO client work very well now. The error encounter was due to a misbehaving node, the bus was overload because of too frequent sdo access. Thank you for your answer.

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

4 participants