>Here is an untested and not completely thought out idea: > >Lets say you use 16F84s and you have a random number generating routine >that generates numbers between 0 and 49 and you set aside 7 bytes(56 bits) >of EEPROM to use in the negotiating sequence. Each bit in this 7 bytes >would represent a number from 0-49 (bit 0, bit 1...bit 49), the upper 6 >bits would be ignored. > >Each pic would be programmed like this: > >1.) Clear the 7 bytes of EEPROM and initialize random generator. > >2.) Pick a random number N (from 0 to 49). Check to see if the >corresponding bit in the 7 byte file is set. If it is set, pick another N, >if not procede. > How do you generate a random number? - if all PICs are identical, any of the normal algorithms will generate the same number! The only way I can think of to do it would be to time the (long prescaled) WDT to a few uS (not too hard), and hope the difference between the RC WDT osc characteristics due to temp/voltage are sufficiently different.