> Ideally what I really want is to (a) identify devices by their serial, > without having to assign some other id to them, and (b) cope gracefully > with > any particular slave being offline (either due to being powered off in > star > topology, or manually bypassed in chain topology), mostly by ignoring the > data they're no longer producing (and passing the fact they're offline to > the higher level, so it can disable certain things). At the moment the > only > ways I can see to do (b) are to either constantly be checking > ecrt_master_get_slave (which doesn't seem like it'd scale well, and only > supports ring positions) or to deactivate/rescan/reactivate whenever the > slave_count changes (to include only online slaves in the domain); which > is > fine for the most part as most changes would occur when not "live", but it > does mean hotplugging wouldn't work. >
One thing I'm doing with my devices is reading the "error code" pdo value on my motor amps. Just before sending the pdo data I set all of the amps "error code" values to 0xFFFF. After the pdo data is returned if the value is read successfully (ie in OP/SAFE-OP) then it is no longer 0xFFFF and the slave exists. You could do similar using other PDO values as long as you use an invalid value for that parameter. > I suppose I could make a domain per slave, but that doesn't sound very > efficient. (Perhaps I'm wrong about that though.) > > > _______________________________________________ > etherlab-users mailing list > [email protected] > http://lists.etherlab.org/mailman/listinfo/etherlab-users > Regards, Graeme. _______________________________________________ etherlab-users mailing list [email protected] http://lists.etherlab.org/mailman/listinfo/etherlab-users
