-
Notifications
You must be signed in to change notification settings - Fork 122
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
LSS fastscan Slaves not responding #13
Comments
@HamedJafarzadeh did the demo - please explain to @PascalGuthof It is true that demo code explains mostly the basic setup of CanOpen library. LSS configuration is not necessary part of it. |
Okay, I understand. |
This is not related specifically to STM32 variant of the CANOpenNode and I haven't test it yet. I believe it is already implemented in the CANOpenNode, Have a look at |
Yes I know, it is canopen specific. But In case of an unconfigured Device, during the canopen_app_resetCommunication() the CO_CANopenInitPDO()-Function returns CO_ERROR_NODE_ID_UNCONFIGURED_LSS, so the whole functions ends at this point and the can-module will never start. In This case, the device can't be found in the Network. |
LSS is only enabled if you do it manually in your application. See here demo from official repo: https://github.com/CANopenNode/CANopenNode/blob/9e2e5afec1171800b1ffbdad77433c3f589e6c0b/example/main_blank.c#L139 |
@MaJerle Thats right. It's already enabled in my application. @HamedJafarzadeh did it in his demos, too. According to the documentation and LSSslave.h, Fastscan should also work out of the box. But when I start a CO_LSSmaster_IdentifyFastscan() scan with a second device, it gets stuck and returns only "CO_LSSmaster_WAIT_SLAVE". |
@CANopenNode Janez, can you please comment that one? |
I didn't test LSS with stm32, but if standard LSS works, "driver" is probably OK. Author of the LSS module is @martinwag. Maybe it is not correctly documented, but as I know, LSS fastscan in somehow simplified from that specified by standard. Fastscan should work as specified in this example. For more information please trigger issue in canopennode/canopennode. |
Meanwhile I'm able to find at least "Slave" device with one "Master" Device. The Fastscan is obviously working within CanopenNode Stack. |
|
Sorry for not participating here for so long. I have made it in the meantime. At least within CanopenNode LSS works fine. Thanks a lot. |
@PascalGuthof , could you explain please, how did you resolved this issue with LSS FastScan on CanopenNode devices? |
Hi @sokolovoleg77, basically it was the problem I described in #20. I also set the timeDifference_us (See here) to interval*10000. If the value is too small, the function does not work. |
When your device is not configured (desired NodeID = 0xFF), there is no way to configure it.
For instance in this example: If the NodeID is not valid, no can-module will be initialized. So there is no way to connect to the Device, and there is no way to configure the device per LSS, isnt it?
For my tests I comment out the return command, and I could assign a node id to the device. But with standard lss. With fastscan the Device is apparently not responding in the right way.
The text was updated successfully, but these errors were encountered: