I decided to look at the frequency distribution of values you get by using analogRead() on a floating (unconnected) analog pin.
But what if you build your seed from the LSBs of 32 consecutive reads?
Feed the data through this...http://www.fourmilab.ch/random/
Results99.5% of the 1 million values were distributed between just 38 values out of 1024 possible values. Hmmm.... does not seem to be a wide "seed" range by any means Comments / Thoughts welcome.
I did extensive research on this and essentially debunked this claim made by Arduino.
I did a Chi-squared test on about 7k data points and it passed with flying color using the revised myanalogRead() provided in that thread. The distribution is also quite uniform.
Depending on what the analog pin receives the result will be more or less random.
Thus, the lsb approach. It actually doesn't rely on the randomness of a signal on the adc pin, but the randomness of the last digit returned by the adc process. You can tie the pin to a known voltage (Vcc or ground), yet the adc's lsb is unstable.
It actually doesn't rely on the randomness of a signal on the adc pin...
the inherent issue with the analogRead() call, well documented in a separate thread.