I'm building a library called Easy CANopen and it will focus on embedded systems due to the portability. Language C.
But storing the Node ID in the Object Dictionary can be done, but I don't know if it's according to the standard, or I have free choice to modify according to the standard.
For the moment, I have put the Node ID in Identity Object
at index = 0x1018 and sub index 0x5. Is that OK according to the standard?