In my project there is a Master node which is always present and multiple hot-plugged Slave nodes. I use LSS and NMT to control the joining process of the Slaves. After a Slave join the network the Master will scan their TPDO and RPDO objects using the SDO and should create corresponding Slave's shadow SDO objects in its own Object Dictionary and create coresponding TPDO and RPDO. I'm using MULTIPLE_OD flag so the data is already stored on the heap and initiated using the static OD helper function....