Sender | Message | Time |
---|---|---|
6 Nov 2023 | ||
PurpleLady joined the room. | 08:12:00 | |
PurpleLady | I'm more into homebrew computing and digital electronics at the moment, and more of the older stuff of that. | 08:13:58 |
PurpleLady | I've been trying to work out a TRNG (true random number generator) using digital components. I know you can drive a transistor "backward" to the breakdown voltage and then amplify the noise this gives. From there, you can use things such as Schmitt triggers, ADCs, voltage levelers, etc. Of course, you'd need to have 9-12 volts to reverse bias the transistor so that shot noise can occur. If you were building a music synthesizer, that would be fine (assuming you want to be Eurorack compliant). But if you want to build something that a phone charger can power, that would be out. | 08:18:05 |
PurpleLady | There are other things you can do if you want a TRNG. One would be to use ring oscillators. So get hex or octal inverter IC and wire an odd number of inverter channels through each other and back around in a "ring" formation. And since the IC in question would have an even number of channels, you can use the last channel as a buffer. It would remain outside of the ring. You can only use an odd number in the ring. Otherwise, you'd be creating a latch, not an oscillator. So if you use the remaining channel outside the "ring," yes, it would invert the output, but if that is the only load outside of the oscillation placed upon the circuit, it should be able to still sustain oscillation. So then, you can XOR the outputs of 2+ ring oscillators (of different lengths, such as 5 and 7 channels). You'd have both the pseudorandom effect of beating 2 frequencies together and the drift/aliasment of that, but also the drift and skew of using unregulated oscillators. | 08:28:19 |
PurpleLady | If you were making a Pierce oscillator for a system clock (instead of using an oscillator "can" of the frequency you need), you'd only use a single channel (only good at maybe up to 30-35 MHz if using DIP packages), but you'd use loading capacitors, resistors, and a crystal. This tank/loading circuitry is to slow the oscillator. | 08:32:22 |
PurpleLady | Then once you get your random bits, you'd need a way to make them useful. So use a shift register to build bytes (or whatever size you need). After that, you could use a whitener of sorts. You could use the VN algorithm (10 = 1, 01 = 0, and skip 00 and 11, and make the comparisons non-overlapping). That is somewhat inefficient as it wastes some of your entropy, but it is a way to make a more balanced set. But you don't need to do that. You could get another shift register (at least 1 more bit than you need) and XNOR the top 2 bits, feeding that back into the "serial-in" input. So that is a linear feedback shift register algorithm. Then you can XOR/XNOR/ADD the parallel lines of the true random and the pseudo-random shift registers. | 08:39:19 |
PurpleLady | Then you'd have a random unsigned or signed integer based on however you interpret the result. | 08:41:14 |
@falk:zeh.eu.com left the room. | 08:42:32 | |
PurpleLady | Of course, instead of and LFSR, one could use a ROM and a counter. Put an even, scrambled table in the ROM with balanced periods. That would not be truly random, but it would be no worse than LFSR. That is just combinational logic generating the same table each time. So the counter chips drive the address lines and point to a different "random" number. Now, what if you want to use a seed? Just add a number to it for the entire period. thus the spacings are the same, but using different number. Now, to make that seem more random, have a way to back up the state of your counters between powerings. So if you use NVRAM, the last address counter value and the addition offset can be backed up and restored for the next boot. So the user's behavior can add to the randomness. | 08:49:34 |
PurpleLady | I'm sorry if I ran someone off. That was not my intent. | 08:49:51 |
PurpleLady | * Of course, instead of an LFSR, one could use a ROM and a counter. Put an even, scrambled table in the ROM with balanced periods. That would not be truly random, but it would be no worse than LFSR. That's just combinational logic generating the same table each time. So the counter chips drive the address lines and point to a different "random" number. Now, what if you want to use a seed? Just add a number to it for the entire period. thus the spacings are the same, but using different numbers. To make that seem more random, have a way to back up the state of your counters between powerings. So if you use NVRAM, the last address counter value and the addition offset can be backed up and restored for the next boot. So the user's behavior can add to the randomness. | 22:16:03 |
10 Nov 2023 | ||
PurpleLady | What would be good to cover? I think it may be time to consolidate. | 10:00:53 |
PurpleLady | There are various electronics rooms and several are just the admin and maybe just me. | 16:52:03 |
11 Nov 2023 | ||
protocall7 | I've noticed the same, ##analog is also dead. I don't think you did anything to run anyone off btw. TRNG idea sounds cool, but it's a bit over my head so I don't have any feedback haha. Consolidation might not be a horrible idea. I certainly miss the amount of people and interaction in #sparkfun and ##electronics on freenode IRC years ago | 17:45:29 |
PurpleLady | And this room has no mods/admins. | 19:11:25 |
14 Nov 2023 | ||
KhazAkar joined the room. | 06:05:42 | |
@vancha112:matrix.org changed their profile picture. | 21:00:19 | |
17 Nov 2023 | ||
@ilya-epifanov:matrix.org left the room. | 23:12:36 | |
20 Nov 2023 | ||
chargeitall joined the room. | 17:01:53 | |
chargeitall | Can semiconductors from household appliances such as breast pumps, fridges, and washing machines be used for military purposes? Is this claim far-fetched? | 17:14:29 |
PurpleLady | I don't think most breast pumps would have semiconductors. I don't know too many refrigerators that would need semiconductors either. As for washing machines, maybe. | 17:22:30 |
protocall7 | Guess it would depend on the semiconductor and the military purpose. Something generic like a logic gate could show up in just about anything. A microcontroller could be programmed to do anything as well. As far as whether or not consumer appliances would use "military spec" parts as far as temperature range, shock and vibration, etc... not sure, maybe? | 17:46:12 |
chargeitall | I was referring to removing chips from household devices, reprogramming them with new software, and using them for military purposes such as avionics, GPS, etc. | 20:12:53 |
21 Nov 2023 | ||
PurpleLady | Unless the items have like FPGAs in them, the "reprogramming" part doesn't sound likely. | 00:12:21 |
26 Nov 2023 | ||
berlinuxer | military specs expexts more robustness, of course. e.g. the temperature-range is wider than for industrial- or consumer-usage. i really doubt, that you will find a IC with mil-spec in household-devices | 13:51:00 |
1 Dec 2023 | ||
waitforthe joined the room. | 18:36:39 | |
waitforthe | Download circuitmotor.jpg | 20:44:39 |
waitforthe | hi i got a question. here is a picture of my circuit, why is the motor still spining despite not triggered by the pir sensor output (3.3v). transistor is 2n2222. 3v motor 1.5A max draw. 12v power supply. | 20:44:42 |
waitforthe | the pir sensor actually ampliflies the rpms of the motor but the motor still contains a baseline rpm. i thought it should be zero power unless triggered by the transistor | 20:47:01 |
waitforthe | if i remove the motor, it works fine with the led albeit larger resistor | 20:47:42 |