Building a Relay-Powered Pi Machine
Вставка
- Опубліковано 18 бер 2024
- Just in time to be a few days late to Pi Day, I built a machine that computes the digits of pi with relays.
Music Used:
Shawl Paul - Norma Rockwell (0:01, 15:25)
Take it Slow - SefChol (3:23)
Tiptoe out the Back - Dan Lebowitz (7:02)
No Good Right - Freedom Trail Studio (9:35)
Play Song - John Daley and the 41 Players (12:11)
Love Explosion - (14:32)
Clips in Order of Appearance:
The Spigot That Streams Digits of Pi - • The Spigot That Stream... (2:24)
Calculating Pi with Real Pies - • Calculating Pi with Re... (8:30)
RainPi - Calculate Pi with Raindrops - • RainPi - Calculate Pi ... (8:32)
A really interesting formula for pi - • A really interesting f... (8:46)
Congratulations to Matt Parker and his team of human computers for calculating 139 digits of pi by hand. My machine hasn't even come close to that.
This year man has beaten the machines... - Наука та технологія
You weren't late, just super early for next year, right?
3 months early for Tau day
@@bornachor pi hour (3:14)
It's all circular logic
Is this market forecast joke about analog computing whatever big brother mesh?
Aka 100 companies will neglect the world funding their ai so you get to figure out how to make a Nas from broken blenders
@@Thegoal2.Pin our house we call that pi o'clock
Fellow Pi calculator here. I calculated Pi to 1,000 decimal places in 1981 using a polynomial expansion that converged two decimal places per iteration. Of course, it took a DEC mainframe computer a whole weekend of CPU time to do it!
And now, a cheap arduino board from China can do the same calculation in seconds (at most), can run on a battery and costs just a couple of €£$, rather than the silly money that mainframes cost.
Progress is wonderful :)
@@mattsadventureswithart5764 isnt arduino italian
@@ImXyper made in china.
@@ImXyperyeah but chinese knockoffs and clones exist
@@ImXyperyes
12:26 DRC DRC DRC DRC DRC DRC DRC DRC DRC DRC
Sending a PCB to get fabbed without running DRC first is like deploying a project on a Friday at 4 pm.
That aside, neat first PCBs!
I've only designed 2 PCBs, what's DRC?
@@TheAechBomb Design Rule Check, the software goes through each and every rule that's defined (clearance, minimum width, unconnected traces) and looks for violations. Of course, stuff like track clearance is being checked continuously during interactive routing (if you haven't purposely disabled that), but some rules do need that separate step of running DRC to be checked.
But since we're only human and tend to forget to do stuff like that, I (and many other people) have automated scripts for generating production files that also run DRC beforehand, the thinking there is if you use that instead of generating those files by hand then getting a clean DRC is a prerequisite to getting any production files.
A friend of mine produces a T-shirt that says RUN DRC with red bars like the RUN DMC logo. But it also has deliberately bad kerning and a red DRC arrow pointing out where the letters almost touch. "The perfect fit for the small intersection of electrical engineering and typography enthusiasts".
@@SianaGearz that is genius ! I'd love to have one !!! since my latest PCB run had one tiny DRC fault 😛
so glad EasyEDA doesn't let me generate gerber files without doing DRC first
Konrad Zuse invented the relay computer with the Z3 in 1942 - using 2,300 relays to perform floating point binary arithmetic with a 22-bit word length. Very cool to see this elegant implementation of a PI machine. ✨
In 1938 (introduced in 1941), but yeah. Sadly the original Z3 was destroyed in 1943 due to the war
The Z1 was a mechanical computer which operates with moving metal rods and sheets. The Z1 also implemented an ALU which could add, subtract, multiply and divide floating point numbers.
@@0106johnnyBut he rebuilt it although it's currently out of order.
Zuse wasn't the only one thinking along those lines, though. The Harvard Mark 1 was relay-based, and built not long after the Z3 (online in 1944). Among other things, it calculated how different A-bomb designs would work for the Manhattan Project.
he has blessed us with another yearly upload
As a professional electrical engineer, it’s still just as fun. Layout is my favourite part of the job.
I really appreciate the use of indicator lamps that look like they would’ve come off a period-correct telephone exchange
You could create your own punch card puncher and output digits to paper tape without a Raspberry Pi. You can use unary or "punch-card art" to output decimal digits.
no, BCD, each digit as four bits on a 4-bit-wide tape :D
PUNCH CARD UNDERTALE???!!
This is something someone could feasibly make in Minecraft. Sadly I don't have the skills needed for it as of now
Don't give me ideas :D
We have full 8 bit cpus in Minecraft
@@OmarRodriguez-vl2tq A guy made a very simplified version of Minecraft on a redstone computer in Minecraft. It's on UA-cam.
@@OmarRodriguez-vl2tq while my 4th gen i5 can not run Minecraft after certain update.
I mean, a relay would just be a piston with a redstone block on the end where an extended piston is a 1 and a nonextended is a 0.
Would love it you posted the pcb designs and schematics for this build for others to replicate. Great work!
This reminds me of a machine I was once responsible for. It was called the "Omni 2000". The Omni was a rack tester. It would check that everything was connected to what it was supposed to be connected to and that nothing was connected to anything it wasn't supposed to be connected to. The Omni had 7000 reed relays. Guess what the most common failure was... I still remember the sound of the self test, as it whizzed through all the relays. It was controlled by a PDP/8.
I don't understand why you didn't name it Omni 7000
@@soareleonard7570 I didn't name it. It was named by the company that built it. And the number of test points - and therefor relays - was an option.
8:20 - I still find it theraputic even for huge boards, its fun to make art of PCBs, something who ever assembles the kit enjoys looking at.
12:41 - It absolutely helps to look at a pcb manufactures capabilities and looking at their min spacing and rounding that up, for example JLCPCB has a min trace thickness and clearance of 0.127mm but I say go to 0.15mm, also account for whos putting it together like, is it possible the edge of the PCB is going to get damaged or a solderng iron slips and damages a trace right next to a pad, so space things apart acordingly.
3:20
"a relay is a way for a circuit to rewire itself"
that's such a beautiful way of describing relays.
Just think of the term used for it. Maybe at that moment the information will correctly 'relay' from one side of your brain to the other. ;-)
Matt Parker would absolutely LOVE this machine. Good job!
I'm not sure where you've been these last couple of years, but it's always a pleasure when you upload a video.
Science Elf once again periodically dropping an absolute banger
I suspect your sticky registers solved by gravity stems from the close physical proximity of all of the relays - the magnetic fields couple and you end up with behaviour like that. You can fix that by giving the components some distance, or adding some magnetic shielding.
You just built a pinball machine... without the pins... or the ball...
Indeed, before about the late 70s, the logic in those was basically a relay-based computer. Technology Connections has a couple videos breaking down much of the logic behind one -- as well as another one exploring an old jukebox.
Or the cabinet… or the game…
... or the 'n'.
*Machine*
@@AaronOfMpls Thanks for reminding me to watch part 2!
I love how this guy just disappears for a while then comes back to drop the most science-y thing imaginable, then making it an enjoyable experience to ride along. Keep it up!
Finally my yearly fix of the Science Elf.
Here's a great algorithm for approximating pi that may be better suited to your approach: just generate a digit at random, and if the raspberry pi detects that the digit is incorrect, it resets the relays to a clean state and starts that section over again. Don't worry, the computation is still all happening on the relays. Just a tiiiny bit of error correction. :)
Agreed.
Memory? I can live with that.
Error detection totally defeats the point. :)
@@pompeymonkey3271Error detection in itself is not the issue. It would be okay if it was internal, like asking the same relay setup or another one to compute each digit several times and compare them together. The actual defeat is using a precomputed value to control the output. If the precomputed value has an error, the output will have the same error.
Nice
@@pompeymonkey3271The memory is also a joke. Defeats the purpose completly.
@@fracapolligummala3548but what are you supposed to do about that lol? there are certain constraints that one must make concessions for, this way it can (theoretically, at least) compute 4096 digits without needing 2000 relay boards.
What's not to like?!
A machine that outputs Pie?! 😋
Looks like I have to build myself one!
Or you can buy a machine that dispenses pizza pie.
Interesting retro project. I experimented with Boolean logic, using relays, when I was in High school; circa 1966. There were no books in the library on the subject so I developed my own notation. I wanted to build a TIC-TAC-TOE playing machine with relays. I worked out all the possible games and the machine's best moves. My design was a sequential finite state machine. There is a lot of symettry in TIC-TAC-TOE, so I built a symettry translator, with a motorized wafer switch. I was not abke to get eniugh relays for the project, but my high school principle and I went on several great field trips. That year, while visiting a local college for a wrestling meet, I met a fellow who was using an IBM computer. I showed me the printout of PI that spanned over 10 large pages. That was the first time I had seen a computer.
"savoring the computation" is not something to be embarrassed about. Embrace the nerdiness. Do not shy away from it.
Great project Nicely explained Your witty banter made watching your Pi expedition all that more enjoyable
This would make a great kit I’m sure there’s a community of nerds (my self included) who would love to have this gizmo whirring on their desk Think about it
Again great video
Thanks for citing my 2021 #PiDay project.
Love your very clear explanation of how your relay computer works
I already fell asleep when your ring rang and woke me up in anxiety, leaving awake for another two hours, because my door ring sounds exactly the same...
Worth the wait. Amazing work as per usual.
There was a time long ago when all technology was powered by electromechanical relays. Even the telephone network was operated by relays. I’m glad that the technology is making a comeback.
youre by far my favorite tech channel, even if theres a long while between videos im always excited when i see a video in my sub box :)
The thumbnail shows a machine finishing the printing of PI, so apparently the Science Elf is immortal 😮
I could listen to that all day! You should upload an hour or so long video of it operating.
The transparent relay was a pretty neat thing to see, demonstrates how every step of this process is directly corresponding to flipping a switch. Also I laughed out loud when you compared a relay to a railroad switch just because I'm currently using relays to control model railroad switches.
Perfectly nerdy. Congratulations!
Pi is probably the most famous transcendental number, but the most famous number period is for sure 1.
Great idea, nice application of relay computation
i didn't understand a thing you said but it's cool
Completely useless, but utterly beautiful! I'm very impressed. And jealous of your patience and determination.
To stay analogue you could try doing the storage on ferrite memory cores. Next year maybe?
You have inspired me, a welder, to see if I can make a lawnmower engine powered abomination to calculate PI and punch it in on toilet paper or paper towels or something. I’ll keep feeding it toilet paper and god only knows how far it will go.
What does the lawnmower do? It makes carbon monoxide.
Is that legos in its construction? Yes.
Why is there a knife taped to a fan on it? Because I put it there.
How are you supposed to stop it? You don’t.
Why is that lug nut glowing? Because I said so.
How much did this cost? I don’t know but I bought most of it on Craigslist so probably cheap.
Are you sure that attaching that part with Elmer’s glue is a good idea? No.
Why? Probably.
I was waiting for the part of the video where you show the machine in operation. Sad to say I was disappointed! But you can redeem yourself, if only you would post a video featuring the machine operating, with sound, video, and no voiceover or music. Just let us experience the ambiance for a little while! Pretty please?
Now I want to see it made with beautiful tubes!
The capabilities of relays got me thinking. You could, in theory, use relays for reversible computing. A DPDT relay could implement a CSWAP gate. Set it up so that the coil takes the control signal and the two switches either pass or swap the inputs. The common pin serves as the output, and one switch will connect A on normally-closed and B on normally-open, and vice-versa for the other one.
A fun and interesting hobby and video. Especially the ding :-) Thank you for sharing. Cheers from Canada.
Something very beautiful about a relay base alu.
Wow that is awesome! I wish you had more video of it working with all the clicking, maybe you can live stream the machine working ❤
This is crazy cool. I learnt heaps. Thanks for sharing :)
Its always a good day when the science elf uploads (:
Damn, you just keep raising the bar. I love every project you have done. They are the exact kind of project I'm always thinking of doing but I never get around to do or give up mid way, so I do admire your work (maybe even envy a little lol)
This one is the kind you see in the corner of someone's room and instantly earns you respect and mega cool points. It seems we follow a similar path but you are always many steps ahead! It stills feels daunting to me to dabble with pcbs but it's been on my list for years.
Anyway, I'm glad you kept the amazing work going.
Oh, and I almost forgot. A little fact I learned a few years ago about the spigot algorithm used here is that it was discovered/invented by none other than the creator of the amazing software ffmpeg! That guy's resume must be wild.
Well done! Though I didn't understand much :D
That's incredible!
Tau mode makes me happy :)
I find a humorous irony in using an entire computer to control a pile of relays and a printer. You could have gotten away with at least a Pi Pico, I bet :)
I’ve been trying to implement spigot in Verilog for past few months and this every potential of being actually helpful
As a kid, I remember that there was a computer in the Brooklyn Children's Museum that was built out of relays. It was hard wired to play Tic Tac Toe.
Computers have been built with TL (thermionic logic), RTL, then DTL, then TTL, then ECL, and finally CMOSL, (there was also I2L). I guess you are using EML (electro-mechanical logic) which is one stage above 'stone knives and bear skins'
A truly enjoyable video. 😎
I love being reminded you exist every half year lol
Science Elf has sent gives us another gift! Thank you! ❤
Awesome video as always!!
Very cool! Now make drop-in compatible transistor versions of the boards and see at what speed you can run them!
Insane! Love it!
Really cool concept!
You do realise how big the market for that would be ?
Either complete or kit form?
Who wouldn't want one on their bench, just waiting to clatter out a printout.
Could you please make a ten hour recording of that beautiful ticking noise, please
YES PLEASE
Love relay logic stuff
Very nice. Yes I have often been fascinated with the sort of bitwise tricks that used to work back in 8 bit ML days -- e.g. 10x = 2x + 8x. Somebody up there likes us.
Now this is gonna be so cool
Relays let you make super fast carry chains, Conrad Zuse was a pioneer with this technique, back in the 1940s 🙂
Reminds me of having to implement complex fixed point math in CPLDs without multiplier blocks or RAM. Used a lot of the same binary tricks as well as some custom definitions for subtraction to reduce the logic.
could be a fun project to try this with transistors, see how fast it goes in comparison :D
Relay logic walked so.....well basically so all electronic logic could run, but it reminds me so much of a very visceral, hands-on, simple way of thinking about IP blocks in verilog on an FPGA, at least with respect to the way you've made pcbs for muxers and other logic. So cool, and deliciously clicky! 🙃
Verrrry cool!
Very cool!
Respect, dude!
I love your project, I love walnut veneer too. One tiny annoying note: Run a sanding block along the edges, and you'll smooth out those harsh transitions and it will look slick!
10:43 That is some nice pride wires you got there
Nah mate, thats the gayble
this is art
Very nice!
so awesome!
This is insane!
LOVE IT 🙌
This is an awesome video so much i must RELAY it to my friends 😂
this is super cool
This machine is so cool, but I can't unsee that the paper strip in the thumbnail is the wrong way around...
My lysdexic eyeballs totally swapped part of the video title with your channel name, giving me "Building an Elf-Powered Pi Machine."
That may not be this video, but it's a video I would totally watch should you make it.
This machine is a childhood dream😮😮😮
This video uploaded on my birthday :D
Neodinium magnet embedded and two metallic discs, one with π and one with τ so you can show off the mode.
The switching of the metal discs also done using relays.
Think about it!
even with complex boards, routing can be fun
Just discovered this channel, please give us access to the gerber files and the design of the board, or better a in-depth video! This thing is friggin awesome
12:30 RUN DRC.
Also good PCB companies used to warn you that you have a spacing violation.
Holy cow dude, impressive. Trying to break into, get to this level its just the want factor I got other stuff going on. But I was trying to just keep this laptop busy computing Pi see what happens. That must have been what lead to this video suggestion.
Neat project.
in my fathers job there is an elecro mechanical system (like 150 relays) and they are a special kind that doesnt use springs but gravity for 100% disconecting
we need a 1h asmr version of this
To avoid issues such as the short you had in your PCBs always run the DRC(design rule check) which looks for errors on your layout.
I just found it really funny that the way you did the thumbnail implies that the machine started with the LAST digit and finally ended at the first after infinite time and infinite amounts of paper and ink have been used
Thanks for pointing out the channels of Alpha Phoenix :), Matt Numbephile and Michael Penn - they are great! Mathology is also quite nice :)
a pi gadget i've always kinda wanted was a micro computer that represents pi using light and sound, features of the gadget include:
a button to calculate the next digit
a button to play back the currently stored digits
a button to swap modes
a 10x10 grid of multicolored LEDs to display pi
two modes, one that only advances only when the button is pressed, the gadget plays the full sequence when it generates the new digit, each number 0-9 being assigned one of 11 notes with the spare note going to the decimal
the second mode streams digits continuously for as long as the device is able to continue calculating new digits
the lights each decide their color based on digits of pi that stream from right to left, bottom to top, excluding the decimal, each light gets up to six digits, if a digit is not available the position is filled in with a zero
Oh hello welcome back to UA-cam