oh - OK. no choo choo involved. How about a slightly different scheme. My cool scheme was a light pipe connecting the blocks as a common bus (so no electrical connection), but your need to find order counts that out. You don't need the 'up and back' scheme. you can do it with one way communication. each non "=" sign module transmits to left and receives to right. At some interval t the module transmits a 'suppress' signal. If the module doesn't see a suppress signal in, say, 3t, it transmits it's ID number followed by EOM signal. A module seeing a valid ID number retransmits it. A module seeing an EOM transmits it's ID, then the EOM. Data comes to "=" sign module nearest module first, EOM terminated, ignore the suppress messages (which might themselves be useful to suppress the "wrong" indication when nothing is plugged in). You might try to locate a cheap LED and photosensor source, that'd be way more reliable than contacts.