Building Custom Pinball Machines
Kantert, Jan (jab)
How to build a pinball machine? We introduce you to all basics and explain the different options for hardware and software. As an example, we show images of our own custom pinball machine.
 I don't know how about you, but whenever I start playing a new game, I know I'm in trouble. I usually get really excited playing all kinds of games because I like to win. I play a card game with some other guys. We were aiming at the same pile of cards and we hit each other's arms really hard. It gets even worse when I play the pinball machine. You know that feeling when you see those milliseconds when the ball gets closer and closer to the flippers. You have no chance of hitting the ball and keeping it in the game. But you keep trying and push those buttons really hard trying to keep the ball in the game. Then you hurt your fingers and punch the machine. Anyone who knows that feeling? I'm glad I'm not the only one. How cool would it be to have your own custom pinball machine? One where you can pick out your favorite LEDs, build your own design and everything. Lucky for you, we have someone here who has built his own pinball machine and who can tell you exactly what you can do. He's a computer scientist. He's actually doing his PhD in computer science. One of his favorite hobbies is pinball machines. He uses this experience again, playing pinball machines to learn more about manufacturing hardware, game design and real-time software. I'm pretty sure if you're loud enough now, he'll show us some pictures of his own pinball machine. I'll give you an impression of what your own machine could look like. Please welcome and give a warm round of applause to Jaap. Thanks. Good afternoon everybody. My name is Jan Kantot. I actually started building my own pinball machine about one and a half years ago. I'll tell you about that. This talk will be mostly pictures, a few bullet points and this will be basically our outline today. We start with game design. How do you want your game to look? What kind of toys and mechanics do you want in there? Then how to control those mechanics? Which electronics do we need to control them? How to drive the electronics with software? Then theoretically, now how this works and then we actually do the hard stuff, building all the parts for it. At the end, I got a small lessons learned. If we have time, I got a video of our machine actually running a game. You may ask some questions if you like. Let's start with what is pinball. This is a pinball. It weights 80 grams and it's 27 millimeters diameter. If you want, I will give some to the audience. Just to give you a feeling how hard a pinball is and just hang it around. Not everybody had it yet, but you will notice that this is actually heavier than you actually thought. Pinball is about shooting this nice ball around in a machine. It's actually a machine with all the consequences. I'm a computer scientist, so I'm not used to mechanics and all the stuff. I know a little bit of electronics, but yeah, mechanics are new to me. Let's start at the beginning. Small warning. Inside the pinball machine, there are high voltages. Just turn them off before touching them maybe. Then you get coils and they can hurt you. If you drive them incorrectly, they will also burn. They can also burn down your house. This is an expensive hobby and it takes a lot of time and effort. Maybe consult with your girlfriend or a better half before. If you find with this, then let's go. I met with a friend and we actually decided we want to build a pinball machine. At first we were drunk and the next day we still remembered it and we thought, how could it be? I made these beautiful drawings here. For God's sake, they are no longer in the artwork. We wanted to make a machine for two players, not one player, but two players. A head-to-head pinball machine, one player fighting against the other player. We wanted to be good with those evils. This is obviously evil and this is maybe good. We selected a theme. Then some artwork. We got the better artwork later. Then we wanted some medieval theme for the music. Then we also picked the general color scheme. You have to have a lot of decisions for mechanics, for graphics. You want to make sure that you don't have to redo everything at the end. We also picked colors. In our case it's more blue for the good side and black and red for the bad side or from the evil side. The girlfriend of my friend, who I'm doing, is a teacher. We started with this. It's a full-size playfield here. That's the kitchen table. We started off moving around parts. How should the layout look? You have to do one basic decision at the beginning. Do you want to have a standard body or a white body machine? The standard body machine is 50 centimeters or 20 inches. The white body machine is about 25 inches or 60 centimeters. That's a general decision. If you closely look at different pinball machines, they play quite differently. Even if it's only 10 centimeters, it plays differently. We decided to go with a standard size. Then we started with the standard lower third. The standard lower third is sling shots here, some flipper fingers here, trough in the bottom, and the ball is shot here. That's very common on nearly every machine. There are some pop bumpers here and some colorful ramps here. That's how we started off. We started to imagine the layout and which toys we want, and basically which mechanics we need to achieve the effects we want to have. Then we designed a little bit more and came up with this. This is actually our first design for the lights. Where should the lights be? We drew this on paper. It's pretty similar to the machine at the end. Not quite, you will see later. Just plan ahead. Changing stuff later with real mechanics or hardware is general expensive. That's even worse than in software. Late changes are just a lot of effort. Do them early if you can. Next, we did a wide wood. A wide wood is a name for a prototype play field. Usually it's done with wood, but we decided to go a little bit lighter. We used foam core. It's basically a foam with two paper plates on top and on the bottom. You can cut them with exciter knives. You can hot glue them. It's really cool. You can use gaffer tape everywhere. We built up this and we were creative. We tried a lot of stuff, ripped stuff off and put it together differently. Just to see how it feels good. Then we went sophisticated and designed it in a CAD program. The play field looks like this. Let me walk you through this machine. The players are here and on the other side. Those play fields are identical besides the artwork. We got two flipper fingers here. We got slingshots here, which push the ball away. We got the shooter here, but the shooter doesn't go into the play field like in most machines. Instead, the shooter goes over to the other side. The ball comes back here and stops here. Here's a post which stops the ball. Then we release the ball from here into the play field. After we released one, we shoot another one there. Once you lose a ball, you instantly get a new one. It's just a flow machine. There's no stop and flow. There's just flow. You always got a ball until you lost. Then we got some ramps. Two of them, this goes over to the other play field. It's a little bit hard to see here, but there's another one. The center ramp here also goes over to the other side. It comes back here from the other side. Here's a lock. This can keep three balls. Once you're under attack from the other side, there's a certain mode which you can achieve. Then it will release up to three balls from this lock. Then you got this nice star here that will be some kind of bash toys or figure. On one side an angel on the other side some kind of demon. You can shoot them. There's a drop target in front and a target to actually attack it. Then we got one loop ramp here which comes from here. You shoot it from the right flipper finger. It goes back over this wire ramp to the left flipper finger. We got the same on the right side, a ramp here which goes here and to the right. You basically can shoot from here to this side. It comes back on the left side. You can shoot from the left side to the right and it comes back to the right side. You can switch the flipper fingers if you like. There's an orbit here which goes into a kicker. This can hold the ball for a second and then release it into the pop bumpers here. You can also shoot the orbit from the other side and it goes around the orbit. It comes back. We got a scoop. It shoots just to the ramp. That's the basic layout. We came up with this after playing with Fumkor and trying a few revisions. Imagine we got this in a CAD program. What do we need to actually build this? It turns out we need mechanics because the ball won't move on its own, at least not for very long. The standard third is basically four parts. It's flipper fingers. This is a cut drawing here. You will see a nice picture in a minute. You've got slingshots. You've got a trough which keeps the balls and ejects balls. You've got a launcher which launches the ball into the play field. That was our first build. This is Fumkor again. This is not real wood. Fumkor is 10 mm thick. The standard play field in Pimbo machines is 13 mm thick. It's an unusual size in Germany or in Europe in general because it's inch. For most mechanics, it works fine. In the lower third, it works. For some mechanics, you just have to put another 3 mm below. Otherwise, they will just stick out too much from the play field. This is a trough from below. It keeps the balls. This is a flipper finger. Those are slingshots from below. This is from above. These are two blade switches. This is the kicker. It kicks the ball here. Those are the flipper fingers. The flipper bats on the upper side. The trough collects the ball here. It drains there and ejects here. The launcher just ejects to the play field. That was our first build. The trough, in case you want to know how this works, it's pretty simple. Basically, the best flipper mechanics are always simple. They work better if they are simple. It got multiple ball positions. They just rolled down into the trough. There are two rails on the bottom. For every ball, there is one switch to eject. There is a ball. It basically counts the ball here. When a new one drains, once it sits on the switch, the ball drains. It has a coil here, which ejects the ball out to the shooter. There is a special jam position. There is also an optocontact to detect this. It's very usual that the ball just comes back. It's mechanic. It's not 100% reliable. You then want to pull this coil a little bit less. Otherwise, both balls will go out. So that just the upper one kicks out. This is how it looks in our machine. This is a trough from above, with at least two balls. This is the kicker. Usually, there is a spring, which you can pull to manually launch the ball. In this case, we only got an auto launcher. The machine will feed balls to the other side. It would be bad if you can keep the balls away from the other player. This is also a little bit more reliable. We switched those mechanics. We had another one before. Then we got some more mechanics we needed. It's very basic. You can find those in nearly every Pimbo machine. This is a vertical upkicker or a scoop. This is a scoop, but it's also a vertical upkicker, depending on the naming. It's a vertical upkicker if it kicks it up to a ramp. It's a scoop if it kicks it back to the play field, and it's a kicker if it doesn't fully go in. So basically, those are all the same, just with three different names. They work by having a switch like this. Just to notice that there's a ball and a coil. You can see the shaft here, which just kicks the ball out. Here it actually falls in. There's also a switch and it shoots the ball into the ramp. It can also just pull the coil less, and it will go back to the play field. It also works. Then we got pop bumpers. Very, very common mechanics, with nice noises of the machine. That's how they look from above, and this is how they look from below. Basically, this is a switch. Plastic, this actually moves here. This shaft here, which triggers the switch. It's kind of complicated, but it works fairly well. Then you got this coil, which pulls down this metal ring here, which pushes the ball away. Very common mechanics, you can buy them, and usually they work pretty fine. Here you can see that we glued another 3 mm of foam here. Otherwise, the switches would just not fit at all. But this still works on foam core, so no need to make wood so far. For prototypes, it's really, really good. I would totally recommend it, but there are other opinions. Some people say, well, no, just do it in wood initially, but I would recommend foam core. Then you got some other mechanics. This is simple, this is just a blade switch with some green plastic on top. This is a lot of targets, and you can see them everywhere in the machine. And you got job targets. Job target is a plastic shaft here, and once you hit it, it goes down with spring. There's a switch to detect this, and a coil, this one, which just can pull it up again to reset it in software at the end. Those are very typical mechanics you can see in a lot of machines. We got one special mechanic, which is basically a diverter. I showed you this play field before, and what happens if one player constantly drains balls? Then at some point, there will be no balls at the other side. So we need some mechanic to balance the troughs. This is done by this nice mechanic here. This is basically a diverter. It's a flap, it's a flap, and we shoot the ball over, and we can just enable a coil, which is below here, which will push the flap up, and the ball will just jump over, and then it drains on the trough below, basically. In the normal case, if we just drop in here, and we will hold it with this post, which we go up, so this is basically a lock, which temporarily locks the ball, and once we need it, we will release it. This is the other lock, which is fed from the ramp in the middle, so it comes over from the other side. Oh, sorry, it comes from here. And then we got three positions with optos here, and again a post, which can just go up, and hold the balls, and we can release them even one by one, so we don't have to release all of them. So, where do you get those mechanics? So obviously you could take a machine and just strip them out. It will work, and it's probably also the cheapest way to do it. But those will be old mechanics, and you have to clean them, and so on, and not everything may be available. So it might be better to just buy them, and it turns out that's totally possible for most mechanics. Just check out the manuals of the machine, where the mechanic you like is in, and there are part numbers, and you can just order them. In general, it's good to order assemblies, which are just a collection of parts, because usually, for example, a flipper finger, that's 50 into 20 parts, and if you order them separately, that will be expensive very, very quickly. So order assemblies if possible, and there is one shop which actually sells those mechanics, and they build them on their own, also for very old mechanics. So look what they have. It's usually a good idea to just check what they have, and those are very well priced, usually, it's Pimbo live, and you can also write them an email, and if you're lucky, they will build the mechanic for you. They will, yeah, it takes half a year, and then we have it. Have it. Then there's Marcos specialties. They got everything, like really everything, but usually only one or two, and old stuff, but they got, I don't know, maybe 10,000 parts, so they got really everything, and it's either a high price, usually. Then you can go to your stern distributor, if it's a recent stern machine, that's the largest Pimbo manufacturer, and they sell replacement parts, it's usually not that expensive, but it takes a lot of time to get those, and sometimes some effort, but I guess they will even produce those parts if you want to buy them. So those are your options. You can also build mechanics like we did on the DeVerter, but I showed you the third revision, so that took some effort to make it reliable, because that's sometimes not easy, at least not for a computer scientist like me. So now we got mechanics, and we bought them, and while they're in there, and yeah, now we need to control them, and I'm working on an open source project, which is called the Mission Pimbo framework, and it's a framework which can control all those mechanics. So you can say, well, there's a flipper mechanic, this is a button, and this is the coil, enable it, and it will do all the magic in the background. So it contains a lot of building blocks. It works on Windows, Mac, Linux, and for example, Raspberry Pi, which is also Linux, but with some special limitations. Then you need a Pimbo control system, which usually interfaces with USB to your computer, and there are three major ones, it's Fast Pimbo, Multimorphic, P-Rock, and the Open Pimbo project, which is actually Open Hardware, and this is a little bit basic, but also works. It's also the cheapest option. I got them all here, so if you want to have a look later, just come by and you can show them. And then you need, obviously, a Pimbo machine. You can retrofit an old one, you can build your new one, whatever you like. Then you need driver boards, those usually come with this control system, and even in traditional machines, they're typically separated from the CPU, because those are the boards where the power is actually, which even may burn in some machines or cause damage. Then you have those FATs, which drive the coils, and those sometimes burn, for example. If you've got a charge in your coil, then those might burn and you have to replace them. They also got input protection, so your CPU won't burn once you connect your input to coil power, for example. So you can buy those, or you can build the Open Pimbo project hardware, which looks like this. So that's the cheapest option, basically. This is basically 40 bucks. But you have to solder it on your... Yeah, then obviously you have to wire it up. This is how this looked for standard low third. Those are the control boards here. And yeah, you'll think enough wires, because coils carry a lot of current, at least initially, so don't take too thin wires, otherwise they will just burn away. Yeah. Then, yeah, I talked a lot about coils, so I figured I need one slide about coils. They use basically everywhere, because they're cheap, they're reliable, and they're fast. For example, you could use a servo, but it will go out and it takes a lot of time, and it's expensive compared to a coil. So usually they're driven this way, that they initially pulse for 5 to 20 milliseconds, something, and then they're hooked with PWM. So they enable for 1 millisecond, disable for 6 milliseconds, enable for 1, and so on. Because otherwise you won't have enough power. For example, if you want to kick a ball, you need a lot of acceleration in the beginning, so you need a lot of current there. So usually they got an impedance of 4 to 8 ohms, a little bit less, so they carry a lot of current, and they can burn, obviously. So if you just connect them to your PSU, they will burn, usually. That's why it's important that you PWM them. And do not, unless you know what you're doing, do not just enable coils. They will burn. Try it once, but do not do it in your Qimo machine. And they can hurt you. They actually have a lot of force. So you probably all tried the ball by now. It can shoot this ball pretty fast, and it can also shoot your fingers, for example. And that will hurt, I can tell you. Then you want to know where the ball is, actually. And this is done by switches. So there are two traditional approaches here. One is those blade switches, the simplest, and most reliable switch, basically ever made. And this will basically always work. You can have a target here, you can have a button here. If it's possible, they usually go with those switches. And in newer machines, they're also those micro switches, usually from Cherry, like in your keyboard. And, for example, with this custom blade here. So this goes through the play field, and this is basically a roll over switch. If the ball rolls along there, it will notice it. And the control system, we get this pulse and tell the software about it. Then we got optos, I showed you some before. So the most common ones are those. Those are the Williams or Stern optos. They're about 13 millimeters thick, so you need a lot of space here. And we forgot about that, or we didn't actually know in the beginning. And a lot of places, we didn't have 13 millimeters. So we needed to come up with another solution. So we 3D printed this part, which is a side LED. This is 1.6 millimeters. And you see it connected here to a 1 millimeter steel ramp. This was the first design. So it worked pretty well in the beginning. But then it turned out vibrations are bad for this. And it clips through the hole here, but it's not enough. Sometimes they will just fly off. So we redesigned it like this, so that the LED goes in from here. And you can screw them into the ramp. So we cut threads there, and then you can screw them in. That was the final design, but it took some iterations. So now you know, and you can do better, hopefully. Next is we needed to connect those optos to the control board. This is a control board here for the inputs. And we designed those breakout boards here. One for power for the current limiting resistor. Because every opto is basically an LED, and you need this current limiting resistor. And you don't want to solder them into the line for every single opto. So we designed those breakout boards, and one for the receiver side. You could just crimp those receiver sides here, but then you could never disconnect it again, because there are two wires from the opto, and they go down. And then you got eight optos on this bank of this control board. And this is on the bottom, and the optos on the top. You will never be able to disconnect it. So we went with those small connectors, and then you can pull them out. And then we needed lights, and today everybody wants RGB, right? You know, those blinker light people, it's borrowing if it's just one color. So you got two types of lights, basically those insert lights, which are basically those things here, which are plastic and light below. And you got general illumination, GIs, which are below the rails and everything on the side, just to light the play feed from the side. And we used those nice Christmas lights for the general illumination, and those WS2812 LEDs, which come in this nice package here, to screw them from below. We did another play field, which is FUNCORE again, just for the lights, just to test light shows, and we didn't build it in our actual prototype. So next you need new display. So there are different options that you can use an LCD display if you like. But then you need higher definition graphics, and it gets a lot of, it costs a lot of effort in game design and graphics rendering and video rendering. And those small displays, which are basically dmd.metrics displays, they only have 128x32 pixels, so it's a lot easier to make graphics for them. So we went with those. And because we're head to head, we need two of them, so this is in software, you got the two dmds, and one is on every side. And this is actually an LED matrix, which we bought. And this can then actually show the same thing, which is shown here and so forth. Then you use power. And usually in older machines, you have 70 to 80 volts with those nice transformers here. But nowadays, I would recommend switching power supply with 48 volts. They work fine, and you can buy those for 50, 60 bucks. We went with the old one because three years ago they weren't readily available when we bought those. Then you need 12 volts for switches on the play field and 5 volts for all your lights. So if you go with serial LEDs like we did, you need a lot of power on the 5 volts. So we went with an ATX power supply, but there are cheaper options for this. And we went with the transformer, but switching power supply would be better probably. Then, now you got all the basics. So now you know everything to do it on your own. But we didn't actually build much. So let's get started with this. You need a play field, which is, as I mentioned, 13 millimeters thick. And at the end, it's Baltic birch. And it's sanded to 30 millimeters. Because if you glue in those inserts, then you have to sand it down. You can decide between standard and white body. And you can make it between 1 meter 6 and 1 meter 16 long. But it doesn't matter much. As I mentioned before, the width actually matters. It feels a lot slower if it's wider. I showed you the prototype in Fungor. And another option would be to hand root it in wood. And the final version would be, you would do it with a CNC machine. And just as a reminder, that was the first machine we built in Fungor. Even the ramps, everything is Fungor here. Works fine. Sometimes you just have to re-hot glue stuff. Because this ball is heavy. It will shoot off stuff. But yeah, it's just Fungor and it can fix everything. And then we went more professional. And we used a CNC machine to build a play field. This is actually where we cut our play field. Took about 15 minutes roughly. But at a professional manufacturer, there's one in Germany actually, which does play fields. And he did this for us. Yeah, then afterwards you usually glue the inserts. And you sand it flat. And you print it and at the end there's coating. It's like car coating. But a lot more layers. And you probably do not want to do this on your own. Unless you're a professional painter or something. Then maybe. But otherwise you do not want to do this. At least we decided not to. This is how the wood version looked. So we didn't do inserts at the beginning because it's expensive with all the coating. So we took the simple version and just built the same play field again with wood. So it looks a lot cleaner now. So this is all the lower side with all the electronics. And this is the upper side with the ramps. And next. So we're currently doing a next version, which we hope to have finished for Congress here. But it's not finished yet. It will be finished in January. But this is the CAD drawing basically with also insert where they should go. And this is actually how it's done. That's a nice robot which can glue the insert for you. At least if you do more than maybe 10 play fields. So for professional machines it's done with a robot. It just sucks the insert here and just puts it down and then it's glued. We did some artwork with Photoshop. My colleague is actually called Philip. Photoshop Philip. It's probably a German joke but still works. Yeah, this is what you came up with. It's not a final version but I think you get the idea. This is probably too light. This may be too dark at some point. It's too much contrast between the two. But you get the idea. This is obviously the evil side. But the inserts are the same. And obviously the holes for the mechanics are the same. Just different print and software will just drive it differently. So now you know we need all the hard stuff. So like metal. So let's build some rails. So at the edge of the play field there are those rails. Because if you shoot the orbit the boy should slide around and not just go to the top and fall down. So those are typically made of steel. And we initially just got two millimeters steel band from Amazon. It was pretty cheap. And then we braced screws to it. That's what you can see here. It just braced screws so it doesn't look pretty. But it worked for a long time. And later we lasered them. I can show you in a minute. This is when we mounted this handmade prototype rails. And we had them for quite some time. They worked pretty well. Afterwards I designed them in cart again with a sheet metal tool with all those nice ledges here. And then we basically unrolled them for this. And this is what our manufacturer sent us five weeks later. And then we bent them by hand. It's one millimeter steel. Stainless steel. And this is how one rail looked like. Unfortunately they don't have a nice picture without the ramps on top. But I think you get the idea. This is just the rail around the orbit here. And it has some nice ledges where you can screw it to the play field. Yeah, so next we need some ramps. So you get different options for ramps. One is plastic. You can just 3D print them. But they are large. It takes a lot of time and probably filament. But it works. If you want you can do this. Later you would typically deep draw them. It's also doable at home. And a lot of people do it. We didn't. We went with metal. It should be solid. And so first we actually cut them by hand. And at the end we lasered them again. And you get wire ramps which you usually use where metal ramp would just hide too much stuff of your play field. So those coming down from the top, those are wire ramps. And you can weld them again or you can weld or brass them. So this is again the ramp setup. So those will be wire ramps because this will hide too much of the play field. You just want to see the inserts and the nice artwork below. And this will be steel ramps basically. So first we went again with a CAD program and then we did this nice prototype out of cardboard. And you may laugh. But this works. For some times until this flies away here because the ball hits it. Until that point it will work. But for prototyping it's fine. Just put them in there, hot glue them and it will work. Then we cut them by hand. Doesn't look pretty. But it worked even better. Especially it was faster there. And then we went more professional. So the bottom one was a handmade one. And the top one was the professionally made one. Which we didn't bend by hand because we missed to cut them here. Then we did it again. And like a lot of things we did a lot of iterations. So we currently do the fourth iteration of our ramps. The third iteration of the play field. And the fourth iteration of the rails also. So this is what we did next. This again is what we got from our manufacturer. We just lasered out the bending slots. So you can bend them at home with a small bench. And that's what we did. And then it looked like this. We got everything twice. Because two sides and then you have to build everything twice. Should have thought about that earlier. But well, you learn from your mistakes. And then that were our ramps basically. And there will be a new version next year. So yeah. Then we did rail ramps. And we decided to go with pressing. With a silver hard load. It's in German. Press alloy. I think it's in English. And you just use a torch and put the silver to the metal. And then it connects. And it's pretty stable. So we didn't manage to break it until now. So it's easier to break it here than break this. So that's pretty okay. This works. I mean, it doesn't look perfect. So it works for quite some time and we still have them. And this is actually before with all those foam core ramps. And afterwards with wood and all the rear ramps. And the wire ramps here. So you see that we still have a lot of foam core here and hot glue and. Gaffer tape for just connecting stuff because you need latches everything everywhere and you need holes to screw stuff. And you tend to forget this. And we didn't we didn't notice until we got this that steel v4a steel is actually really hard. And you cannot easily just just just drill a hole. It would just go and then it won't look pretty anymore. So we just went, well, let's let's do it again. Put in all the holes and do a new revision with all the mistakes you made and fix them in an extra vision. So now you notice that there's a lot of open space like here and what the ball will do it will just fall in and then stay there. And since there's no mechanic to put it to push it out, well, it will stay there forever. And that's the problem. At least if you put the glass on top. But but it's not good. So usually you got plastics and in the beginning, yeah, just put them out of foam core like everything and hot glue them. And then we went to the 3d printing. That's what you look at what you can see here. And then as usual, let's face reality and there's always something missing. So there's some manufacturing tolerances at the REMS some tolerances when you ban the the REMS. And yeah, even if you just screw stuff, everything has tolerances. So make sure just to cut a little bit of here and leave the latch here. And yeah, yeah, and then we did it again. So like everything you learn from from doing it. So credit prototype everything. If you if you can laser it out from from cardboard, we didn't have a laser. So laser would be will be handy. So just laser it out from cardboard and try it out. It would save you a lot of time. Then it's software. I talked about the mission PIM off framework. And basically it's a framework written in Python. It's Python three. You can install it via PIP just PIP install MPF and mission PIM off framework. And then it's basically installed. You need working open GL open GL and SDL to. So that's why we listed the Raspberry Pi before because the Raspberry Pi only has this EGL this limited mobile open GL implementation. So we support Windows Linux, Mac OS and the Raspberry Pi. And it's this framework has two processes. One game process was actually runs also logic. And a media controller process, which renders all the graphics, plays the videos because you're you're your game should be pretty real time. I mean, it's not not important that everything reacts inside one millisecond in the game framework. Because whatever it actually does is it pushes the rules into this hardware controller. So it says, well, if this fitter flipper button is hit here, pulls this coil for 15 milliseconds. So the hardware will take care of that. But still, if if I hit the target, the game needs to say, well, now light this light and this shouldn't be, I don't know, two seconds. The player will notice everything over, I don't know, 50 to 100 milliseconds. So this should be pretty real time. And the media controller stuff usually is not very real time. So loading a video may block everything involving IO on the disk may block. And this also renders the DMD, which is connected to the game process again. So we send events to the media controller, it renders the DMD, we get that out of OpenGL, and then we send it back and then we send it to the hardware. Because if you you do not want to do everything pixel wise, so we actually render an impact video on an OpenGL viewport and just get the right pixels for the DMD. Just to make it easier for a developer. This is the general sequence, how the software works. It launches initial startup initialize everything. Then you got an attract mode where you flash all the lights and tell the player, well, give me a coin, play me. And when the player does as a game start sequence, where usually some sounds play, the ball starts. The player does something, the ball ends and this repeats until the player has no more balls. Then the game ends. In our case, we got 30 lives, so you can lose 30 balls on every side and whoever loses 30 balls first will lose. A little bit different, but we just overloaded some classes here and then this mechanics work. This is how software side works. You got the virtual DMD here, you got the state of your devices in your software here and you got the rectangle ones are switches. You can click them and they activate virtually and the round ones are lights actually. So you can see your light shows and you can play with all the switches. But when here and then the software knows that it's here and it will carry on with this. It has some limited simulation like if the ball goes here and this coil fires, it knows that it goes to the play field for example. So that's what it does. And those are our two play fields. We lay out it then not head by head, but next to each other just because it better fits the screen. So this is how this actually works from a hardware perspective. You got the computer which connects to the LED controller which next via serial to the LEDs. The DMDs are our USB, the controller board are our USB. Then we got a lot of node boards which just basically just break out boards for the coils and switches which you mount below the play field in modern machines. And then you connect the switches and up those and coils to those node boards. This is a general hardware architecture there. This is how it looks in reality. Our game runs here, transformer, the control system and some mechanics and the LEDs connect to those nice fade candy boards from other fruit. We needed a cabinet and we do everything in form core so we did this in form core too. This is a CAD model actually how it's supposed to look. This is how it actually looked. There's some foil on the glass but it's actually, believe me, it's glass. This is our back box which is different from normal machines. It's just up on top so you can see your opponent. Mostly this DMD is more for the observers. Most players do not look at the DMD during the game because especially in our game where you always have a ball, you don't have time to look up. Otherwise we packed up. We did sound. I did this so it's, well, it's music. But if you seriously listen to most machines, the background sound is so simple. It repeats after 20 seconds and it's simple. So it works. It may improve in the future. That's why I won't play it now but you can play it at home if you like. Then you need to play sound. So we built our professional sound system with a $60 China amp and a large subwoofer like every car has. So it's actually car audio stuff because it's cheap. This is about $90. We got basically one speaker on every side and the DMD will go here. It's from the back box from the bottom and this is the cabinet from top. That plays pretty fine. It's loud enough. It's nice. So what does it all cost? And it turns out this is pretty expensive. Our machine just takes this by two because we got everything twice. Somebody should have told us. And this is basically just for the final version. So a play field including print and everything is between 800 and 1000 euros. If you go to some manufacturer and let them produce it for you. The cabinet including prints is about 500 to 2000. For a normal cabinet you can just buy one and then print it. For our cabinet as I showed you that won't work because of head to head. But usually I would buy it. Then the control system depending on which one you choose. A commercial one or this homemade one. It's between 200 and 800 euros including a PC. You got some electronics depending on if you got silver or golden wires. And what strengths and what PSU. 100 to 500 euros. And then you got the mechanics and it really depends on which mechanics you buy. If you got more mechanics it will be obviously more expensive. But between 1000 and 2000 euros for just the mechanics. This is the part which would really be a lot cheaper if you produced maybe 1000 machines. This will be maybe a tenth. We can do it. We have to buy basically replacement parts. That's why it's expensive. Then metal and plastic parts depending on how many you do and how many you buy. 200 to 800. And the typical retail price of a normal machine is 8000 to 10,000 euros. Recently a little bit more. And then you can see that this quickly adds up. But building a machine is not actually very cost efficient. If you fucked in your time then never. So we got some lessons learned before I show you a nice video of our machine at the end. General manufacturing is hard and expensive and it takes a lot of time actually. You go to a manufacturer say well I want to build this and they say well yeah we can do it in eight weeks you get it. And yeah I mean as an hobbyist it's fine probably because I do not have unlimited time to build my machine. But still I have to wait a lot of time then. Have everything in cut if possible and it's nice to notice that parts hit each other before building them. Because then hmm okay which one do we throw away. Happens I mean most most of the times it's hard to fix. Then what we learned is the shot width though if you do a ramp it should be between 5 and 10 centimeters. A ball is 27 millimeters in diameter so theoretically they will work already. But practically you will never hit it. So 5 to 10 is your range. Above 10 it's far too easy and you always make the shot and below 5 it's really really hard. Then prevent jumps prevent jumps because if the ball jumps it will go somewhere and then it gets stuck. I mean it will get stuck anyway everywhere. If it can it will at some time. So do not make ramps like this. The ball will just go on and just fly over the ramp. Yeah you learn that by prototyping. And finally for me as a computer scientist you cannot fix physics and software. So yeah that's basically it. So our current playfield one of them looks this from below. So this is all the electronics now add all the lights and then it's full. And so there's not a lot of space left. This is how it looks from top. So one player here one player there. Here with Fungor decals. And yeah now we'll show video and at the same time take some Q&A. So thanks for listening. Yeah. So you saw here one was released. And the next new one came. Any questions? Now is your chance. Yes. Give me the mic. You said you had two computers basically one doing all the mechanical stuff and one controlling the whole playfield and the displays and stuff. But in your price calculation you already you also had the third system like control system for 200 to 800 euros. What's that playing a part. The 200 to 800 are your PC like a Raspberry Pi and your control system. This is basically just the the node boards and the controller board. It will cost us the amount. Then you are the electronics which are the cables and the power supply. And maybe the lights. Yeah. If you are too much hot glue. Do you have a question from our online viewers. Yes we do. The internet wants to know or states that pinball machines have been around for a long time and aside from modern like manufacturing technologies or like planning and building with cat and cam. Making things easier have actually have gameplay mechanics been modernized over the years. That's right. I mean. The difference between old machines and car machines is that the rules are much deeper. So before it was just shoot this target 20 times and every time you get score. And the main objective was just to get an extra ball or extra credit sometimes. And in modern machines is like shoot this one five times and we flash this insert there then shoot this one. And then the other player gets a ball and you get a nice animation and insert here lights up and you can start another mode. Basically a mission is a mode is a mode in a pinball machine. So the rules are a lot a lot deeper in modern machines and that's basically because we have better CPUs in our machines. A question over there. Well first of all thank you very much this is totally awesome. Thanks. Obviously the physicalness of the machine that's that's great. Did you ever consider simulating not on a piece I mean to build a real scale model and project CG render and project the entire game instead of building the mechanics. There's there's virtual pinball. And you can play all the old games to just take a 42 inch TV and put it into a cabinet actually fits. And at some buttons you can you can buy this for I don't know about one thousand bucks. And then you can do this. And there's actually one machine which is some somewhere in between which is called the P3 and actually has a TV on in the play field. But it has real flipper fingers on top and play the flipper fingers on top of the of the of the TV. And then there's the upper third like this part and you can swap those so you actually can swap your games. It's still on development but I think you can preorder it like like you can preorder everything five years in advance and pinball. But eventually it will be made and I actually played it. It's pretty fun but it's it's different a little bit because the contrast is different here you got the light which actually emits light and and there you got the whole play field is slide up because of the background light. And the ball is looking somehow black if it goes on top of the TV but still it's a nice machine. Thanks. Question over there. Okay. Any more questions. Now it's your chance. Could you go up to the microphone please. You start on the left side. I think this is the first two player pinball machine I've heard of. Do you think this could become a trend if your machine is fun to play. Well they're actually two or maybe three machines. So they're a lot smaller but they're from 1990 around about so they're no longer produced for 25 years but they still exist. And they do not have deep roots. The problem with our machine is actually that it's really really large. Basically long. It's two meter long and you need basically three or four meters room for this. So you need a long wall on your living room or somewhere where you can put it. So this will be a problem in the market probably. So maybe we could make 100 machines and sell them. I don't know but probably not a thousand. So I don't think it will be totally mainstream. Okay we have time for two short questions. Yes. How are you handling the tilting of a machine because I imagine it's quite difficult for a two player machine. Yeah we got two accelerometers on every side. So actually because you tilt them on your side and then you can measure the acceleration there and then you can see the direction actually. If it goes this way then you can see that the player on this side tilted it actually. And we just remove life. That's easy and if you tilt too much then you will have no more life. Okay last question. Could you give us a time frame from first idea to the first game you actually were able to play? We started last year in April so it's one and a half years roughly. And we were able to play before Congress so I think in August, September somewhere after camp definitely. But mostly because all this ordering stuff took about three months. And my colleague Philip he did all this sourcing and stuff and getting stuff from Canada and the US and getting it through customs. And it took a lot of time. So when we actually got this stuff and we had everything the first build on Filmcore. I did the software before and then we connected and it just worked after two or three days so that was pretty fast. But you could just shoot the ball up and it comes down and shoot it up again. It's not that much fun. Sorry we cannot hear you without a microphone. So you talk about the dimensions. Only if it's a short question. The shortest. You talk about the dimension but what about the inclination of the field itself? It's basically six and a half degrees so you can go between six and seven. But standard is six and a half. And it just worked best. Okay thank you very much. Thank you.
 I don't know how about you, but whenever I start playing a new game, I know I'm in trouble.  I usually get really excited playing all kinds of games because I like to win.  I play a card game with some other guys.  We were aiming at the same pile of cards and we hit each other's arms really hard.  It gets even worse when I play the pinball machine.  You know that feeling when you see those milliseconds when the ball gets closer and closer to the flippers.  You have no chance of hitting the ball and keeping it in the game.  But you keep trying and push those buttons really hard trying to keep the ball in the game.  Then you hurt your fingers and punch the machine.  Anyone who knows that feeling?  I'm glad I'm not the only one.  How cool would it be to have your own custom pinball machine?  One where you can pick out your favorite LEDs, build your own design and everything.  Lucky for you, we have someone here who has built his own pinball machine and who can tell you exactly what you can do.  He's a computer scientist. He's actually doing his PhD in computer science.  One of his favorite hobbies is pinball machines.  He uses this experience again, playing pinball machines to learn more about manufacturing hardware, game design and real-time software.  I'm pretty sure if you're loud enough now, he'll show us some pictures of his own pinball machine.  I'll give you an impression of what your own machine could look like. Please welcome and give a warm round of applause to Jaap.  Thanks.  Good afternoon everybody. My name is Jan Kantot.  I actually started building my own pinball machine about one and a half years ago.  I'll tell you about that. This talk will be mostly pictures, a few bullet points and this will be basically our outline today.  We start with game design.  How do you want your game to look? What kind of toys and mechanics do you want in there?  Then how to control those mechanics?  Which electronics do we need to control them?  How to drive the electronics with software?  Then theoretically, now how this works and then we actually do the hard stuff, building all the parts for it.  At the end, I got a small lessons learned.  If we have time, I got a video of our machine actually running a game.  You may ask some questions if you like.  Let's start with what is pinball. This is a pinball.  It weights 80 grams and it's 27 millimeters diameter.  If you want, I will give some to the audience.  Just to give you a feeling how hard a pinball is and just hang it around.  Not everybody had it yet, but you will notice that this is actually heavier than you actually thought.  Pinball is about shooting this nice ball around in a machine.  It's actually a machine with all the consequences.  I'm a computer scientist, so I'm not used to mechanics and all the stuff.  I know a little bit of electronics, but yeah, mechanics are new to me.  Let's start at the beginning.  Small warning.  Inside the pinball machine, there are high voltages.  Just turn them off before touching them maybe.  Then you get coils and they can hurt you.  If you drive them incorrectly, they will also burn.  They can also burn down your house.  This is an expensive hobby and it takes a lot of time and effort.  Maybe consult with your girlfriend or a better half before.  If you find with this, then let's go.  I met with a friend and we actually decided we want to build a pinball machine.  At first we were drunk and the next day we still remembered it and we thought, how could it be?  I made these beautiful drawings here.  For God's sake, they are no longer in the artwork.  We wanted to make a machine for two players, not one player, but two players.  A head-to-head pinball machine, one player fighting against the other player.  We wanted to be good with those evils.  This is obviously evil and this is maybe good.  We selected a theme.  Then some artwork.  We got the better artwork later.  Then we wanted some medieval theme for the music.  Then we also picked the general color scheme.  You have to have a lot of decisions for mechanics, for graphics.  You want to make sure that you don't have to redo everything at the end.  We also picked colors.  In our case it's more blue for the good side and black and red for the bad side or from the evil side.  The girlfriend of my friend, who I'm doing, is a teacher.  We started with this.  It's a full-size playfield here.  That's the kitchen table.  We started off moving around parts.  How should the layout look?  You have to do one basic decision at the beginning.  Do you want to have a standard body or a white body machine?  The standard body machine is 50 centimeters or 20 inches.  The white body machine is about 25 inches or 60 centimeters.  That's a general decision.  If you closely look at different pinball machines, they play quite differently.  Even if it's only 10 centimeters, it plays differently.  We decided to go with a standard size.  Then we started with the standard lower third.  The standard lower third is sling shots here, some flipper fingers here, trough in the bottom, and the ball is shot here.  That's very common on nearly every machine.  There are some pop bumpers here and some colorful ramps here.  That's how we started off.  We started to imagine the layout and which toys we want,  and basically which mechanics we need to achieve the effects we want to have.  Then we designed a little bit more and came up with this.  This is actually our first design for the lights.  Where should the lights be?  We drew this on paper.  It's pretty similar to the machine at the end.  Not quite, you will see later.  Just plan ahead.  Changing stuff later with real mechanics or hardware is general expensive.  That's even worse than in software.  Late changes are just a lot of effort.  Do them early if you can.  Next, we did a wide wood.  A wide wood is a name for a prototype play field.  Usually it's done with wood, but we decided to go a little bit lighter.  We used foam core.  It's basically a foam with two paper plates on top and on the bottom.  You can cut them with exciter knives.  You can hot glue them.  It's really cool.  You can use gaffer tape everywhere.  We built up this and we were creative.  We tried a lot of stuff, ripped stuff off and put it together differently.  Just to see how it feels good.  Then we went sophisticated and designed it in a CAD program.  The play field looks like this.  Let me walk you through this machine.  The players are here and on the other side.  Those play fields are identical besides the artwork.  We got two flipper fingers here.  We got slingshots here, which push the ball away.  We got the shooter here, but the shooter doesn't go into the play field like in most machines.  Instead, the shooter goes over to the other side.  The ball comes back here and stops here.  Here's a post which stops the ball.  Then we release the ball from here into the play field.  After we released one, we shoot another one there.  Once you lose a ball, you instantly get a new one.  It's just a flow machine.  There's no stop and flow.  There's just flow.  You always got a ball until you lost.  Then we got some ramps.  Two of them, this goes over to the other play field.  It's a little bit hard to see here, but there's another one.  The center ramp here also goes over to the other side.  It comes back here from the other side.  Here's a lock.  This can keep three balls.  Once you're under attack from the other side, there's a certain mode which you can achieve.  Then it will release up to three balls from this lock.  Then you got this nice star here that will be some kind of bash toys or figure.  On one side an angel on the other side some kind of demon.  You can shoot them.  There's a drop target in front and a target to actually attack it.  Then we got one loop ramp here which comes from here.  You shoot it from the right flipper finger.  It goes back over this wire ramp to the left flipper finger.  We got the same on the right side, a ramp here which goes here and to the right.  You basically can shoot from here to this side.  It comes back on the left side.  You can shoot from the left side to the right and it comes back to the right side.  You can switch the flipper fingers if you like.  There's an orbit here which goes into a kicker.  This can hold the ball for a second and then release it into the pop bumpers here.  You can also shoot the orbit from the other side and it goes around the orbit.  It comes back.  We got a scoop.  It shoots just to the ramp.  That's the basic layout.  We came up with this after playing with Fumkor and trying a few revisions.  Imagine we got this in a CAD program.  What do we need to actually build this?  It turns out we need mechanics because the ball won't move on its own,  at least not for very long.  The standard third is basically four parts.  It's flipper fingers.  This is a cut drawing here.  You will see a nice picture in a minute.  You've got slingshots.  You've got a trough which keeps the balls and ejects balls.  You've got a launcher which launches the ball into the play field.  That was our first build.  This is Fumkor again.  This is not real wood.  Fumkor is 10 mm thick.  The standard play field in Pimbo machines is 13 mm thick.  It's an unusual size in Germany or in Europe in general because it's inch.  For most mechanics, it works fine.  In the lower third, it works.  For some mechanics, you just have to put another 3 mm below.  Otherwise, they will just stick out too much from the play field.  This is a trough from below.  It keeps the balls.  This is a flipper finger.  Those are slingshots from below.  This is from above.  These are two blade switches.  This is the kicker.  It kicks the ball here.  Those are the flipper fingers.  The flipper bats on the upper side.  The trough collects the ball here.  It drains there and ejects here.  The launcher just ejects to the play field.  That was our first build.  The trough, in case you want to know how this works,  it's pretty simple.  Basically, the best flipper mechanics are always simple.  They work better if they are simple.  It got multiple ball positions.  They just rolled down into the trough.  There are two rails on the bottom.  For every ball, there is one switch to eject.  There is a ball.  It basically counts the ball here.  When a new one drains,  once it sits on the switch,  the ball drains.  It has a coil here,  which ejects the ball out to the shooter.  There is a special jam position.  There is also an optocontact to detect this.  It's very usual that the ball just comes back.  It's mechanic.  It's not 100% reliable.  You then want to pull this coil a little bit less.  Otherwise, both balls will go out.  So that just the upper one kicks out.  This is how it looks in our machine.  This is a trough from above,  with at least two balls.  This is the kicker.  Usually, there is a spring,  which you can pull to manually launch the ball.  In this case, we only got an auto launcher.  The machine will feed balls to the other side.  It would be bad if you can keep the balls away from the other player.  This is also a little bit more reliable.  We switched those mechanics.  We had another one before.  Then we got some more mechanics we needed.  It's very basic.  You can find those in nearly every Pimbo machine.  This is a vertical upkicker or a scoop.  This is a scoop,  but it's also a vertical upkicker,  depending on the naming.  It's a vertical upkicker if it kicks it up to a ramp.  It's a scoop if it kicks it back to the play field,  and it's a kicker if it doesn't fully go in.  So basically, those are all the same,  just with three different names.  They work by having a switch like this.  Just to notice that there's a ball and a coil.  You can see the shaft here, which just kicks the ball out.  Here it actually falls in.  There's also a switch and it shoots the ball into the ramp.  It can also just pull the coil less,  and it will go back to the play field.  It also works.  Then we got pop bumpers.  Very, very common mechanics,  with nice noises of the machine.  That's how they look from above,  and this is how they look from below.  Basically, this is a switch.  Plastic, this actually moves here.  This shaft here, which triggers the switch.  It's kind of complicated, but it works fairly well.  Then you got this coil,  which pulls down this metal ring here,  which pushes the ball away.  Very common mechanics, you can buy them,  and usually they work pretty fine.  Here you can see that we glued another 3 mm of foam here.  Otherwise, the switches would just not fit at all.  But this still works on foam core,  so no need to make wood so far.  For prototypes, it's really, really good.  I would totally recommend it,  but there are other opinions.  Some people say, well, no, just do it in wood initially,  but I would recommend foam core.  Then you got some other mechanics.  This is simple, this is just a blade switch  with some green plastic on top.  This is a lot of targets,  and you can see them everywhere in the machine.  And you got job targets.  Job target is a plastic shaft here,  and once you hit it, it goes down with spring.  There's a switch to detect this,  and a coil, this one,  which just can pull it up again  to reset it in software at the end.  Those are very typical mechanics  you can see in a lot of machines.  We got one special mechanic,  which is basically a diverter.  I showed you this play field before,  and what happens if one player constantly drains balls?  Then at some point, there will be no balls  at the other side.  So we need some mechanic to balance the troughs.  This is done by this nice mechanic here.  This is basically a diverter.  It's a flap, it's a flap,  and we shoot the ball over,  and we can just enable a coil, which is below here,  which will push the flap up,  and the ball will just jump over,  and then it drains on the trough below, basically.  In the normal case, if we just drop in here,  and we will hold it with this post, which we go up,  so this is basically a lock,  which temporarily locks the ball,  and once we need it, we will release it.  This is the other lock,  which is fed from the ramp in the middle,  so it comes over from the other side.  Oh, sorry, it comes from here.  And then we got three positions with optos here,  and again a post, which can just go up,  and hold the balls, and we can release them  even one by one, so we don't have to release all of them.  So, where do you get those mechanics?  So obviously you could take a machine and just strip them out.  It will work, and it's probably also the cheapest way to do it.  But those will be old mechanics,  and you have to clean them, and so on,  and not everything may be available.  So it might be better to just buy them,  and it turns out that's totally possible for most mechanics.  Just check out the manuals of the machine,  where the mechanic you like is in,  and there are part numbers, and you can just order them.  In general, it's good to order assemblies,  which are just a collection of parts,  because usually, for example, a flipper finger,  that's 50 into 20 parts,  and if you order them separately,  that will be expensive very, very quickly.  So order assemblies if possible,  and there is one shop which actually sells those mechanics,  and they build them on their own, also for very old mechanics.  So look what they have.  It's usually a good idea to just check what they have,  and those are very well priced, usually, it's Pimbo live,  and you can also write them an email,  and if you're lucky, they will build the mechanic for you.  They will, yeah, it takes half a year, and then we have it.  Have it.  Then there's Marcos specialties.  They got everything, like really everything,  but usually only one or two, and old stuff,  but they got, I don't know, maybe 10,000 parts,  so they got really everything,  and it's either a high price, usually.  Then you can go to your stern distributor,  if it's a recent stern machine, that's the largest Pimbo manufacturer,  and they sell replacement parts,  it's usually not that expensive,  but it takes a lot of time to get those,  and sometimes some effort,  but I guess they will even produce those parts  if you want to buy them.  So those are your options.  You can also build mechanics like we did on the DeVerter,  but I showed you the third revision,  so that took some effort to make it reliable,  because that's sometimes not easy,  at least not for a computer scientist like me.  So now we got mechanics, and we bought them,  and while they're in there,  and yeah, now we need to control them,  and I'm working on an open source project,  which is called the Mission Pimbo framework,  and it's a framework which can control all those mechanics.  So you can say, well, there's a flipper mechanic,  this is a button, and this is the coil, enable it,  and it will do all the magic in the background.  So it contains a lot of building blocks.  It works on Windows, Mac, Linux, and for example, Raspberry Pi,  which is also Linux, but with some special limitations.  Then you need a Pimbo control system,  which usually interfaces with USB to your computer,  and there are three major ones,  it's Fast Pimbo, Multimorphic, P-Rock,  and the Open Pimbo project, which is actually Open Hardware,  and this is a little bit basic, but also works.  It's also the cheapest option.  I got them all here,  so if you want to have a look later,  just come by and you can show them.  And then you need, obviously, a Pimbo machine.  You can retrofit an old one, you can build your new one, whatever you like.  Then you need driver boards,  those usually come with this control system,  and even in traditional machines,  they're typically separated from the CPU,  because those are the boards where the power is actually,  which even may burn in some machines or cause damage.  Then you have those FATs, which drive the coils,  and those sometimes burn, for example.  If you've got a charge in your coil,  then those might burn and you have to replace them.  They also got input protection,  so your CPU won't burn once you connect your input to coil power, for example.  So you can buy those,  or you can build the Open Pimbo project hardware,  which looks like this.  So that's the cheapest option, basically.  This is basically 40 bucks.  But you have to solder it on your...  Yeah, then obviously you have to wire it up.  This is how this looked for standard low third.  Those are the control boards here.  And yeah, you'll think enough wires,  because coils carry a lot of current,  at least initially, so don't take too thin wires,  otherwise they will just burn away.  Yeah.  Then, yeah, I talked a lot about coils,  so I figured I need one slide about coils.  They use basically everywhere,  because they're cheap, they're reliable, and they're fast.  For example, you could use a servo,  but it will go out and it takes a lot of time,  and it's expensive compared to a coil.  So usually they're driven this way,  that they initially pulse for 5 to 20 milliseconds, something,  and then they're hooked with PWM.  So they enable for 1 millisecond,  disable for 6 milliseconds, enable for 1, and so on.  Because otherwise you won't have enough power.  For example, if you want to kick a ball,  you need a lot of acceleration in the beginning,  so you need a lot of current there.  So usually they got an impedance of 4 to 8 ohms,  a little bit less, so they carry a lot of current,  and they can burn, obviously.  So if you just connect them to your PSU, they will burn, usually.  That's why it's important that you PWM them.  And do not, unless you know what you're doing,  do not just enable coils.  They will burn.  Try it once, but do not do it in your Qimo machine.  And they can hurt you.  They actually have a lot of force.  So you probably all tried the ball by now.  It can shoot this ball pretty fast,  and it can also shoot your fingers, for example.  And that will hurt, I can tell you.  Then you want to know where the ball is, actually.  And this is done by switches.  So there are two traditional approaches here.  One is those blade switches, the simplest,  and most reliable switch, basically ever made.  And this will basically always work.  You can have a target here, you can have a button here.  If it's possible, they usually go with those switches.  And in newer machines, they're also those micro switches,  usually from Cherry, like in your keyboard.  And, for example, with this custom blade here.  So this goes through the play field,  and this is basically a roll over switch.  If the ball rolls along there, it will notice it.  And the control system, we get this pulse  and tell the software about it.  Then we got optos, I showed you some before.  So the most common ones are those.  Those are the Williams or Stern optos.  They're about 13 millimeters thick, so you need a lot of space here.  And we forgot about that, or we didn't actually know in the beginning.  And a lot of places, we didn't have 13 millimeters.  So we needed to come up with another solution.  So we 3D printed this part, which is a side LED.  This is 1.6 millimeters.  And you see it connected here to a 1 millimeter steel ramp.  This was the first design.  So it worked pretty well in the beginning.  But then it turned out vibrations are bad for this.  And it clips through the hole here, but it's not enough.  Sometimes they will just fly off.  So we redesigned it like this, so that the LED goes in from here.  And you can screw them into the ramp.  So we cut threads there, and then you can screw them in.  That was the final design, but it took some iterations.  So now you know, and you can do better, hopefully.  Next is we needed to connect those optos to the control board.  This is a control board here for the inputs.  And we designed those breakout boards here.  One for power for the current limiting resistor.  Because every opto is basically an LED, and you need this current limiting resistor.  And you don't want to solder them into the line for every single opto.  So we designed those breakout boards, and one for the receiver side.  You could just crimp those receiver sides here,  but then you could never disconnect it again,  because there are two wires from the opto, and they go down.  And then you got eight optos on this bank of this control board.  And this is on the bottom, and the optos on the top.  You will never be able to disconnect it.  So we went with those small connectors, and then you can pull them out.  And then we needed lights, and today everybody wants RGB, right?  You know, those blinker light people, it's borrowing if it's just one color.  So you got two types of lights, basically those insert lights,  which are basically those things here, which are plastic and light below.  And you got general illumination, GIs, which are below the rails and everything on the side,  just to light the play feed from the side.  And we used those nice Christmas lights for the general illumination,  and those WS2812 LEDs, which come in this nice package here, to screw them from below.  We did another play field, which is FUNCORE again, just for the lights,  just to test light shows, and we didn't build it in our actual prototype.  So next you need new display.  So there are different options that you can use an LCD display if you like.  But then you need higher definition graphics, and it gets a lot of,  it costs a lot of effort in game design and graphics rendering and video rendering.  And those small displays, which are basically dmd.metrics displays,  they only have 128x32 pixels, so it's a lot easier to make graphics for them.  So we went with those.  And because we're head to head, we need two of them, so this is in software,  you got the two dmds, and one is on every side.  And this is actually an LED matrix, which we bought.  And this can then actually show the same thing, which is shown here and so forth.  Then you use power.  And usually in older machines, you have 70 to 80 volts with those nice transformers here.  But nowadays, I would recommend switching power supply with 48 volts.  They work fine, and you can buy those for 50, 60 bucks.  We went with the old one because three years ago they weren't readily available when we bought those.  Then you need 12 volts for switches on the play field and 5 volts for all your lights.  So if you go with serial LEDs like we did, you need a lot of power on the 5 volts.  So we went with an ATX power supply, but there are cheaper options for this.  And we went with the transformer, but switching power supply would be better probably.  Then, now you got all the basics.  So now you know everything to do it on your own.  But we didn't actually build much.  So let's get started with this.  You need a play field, which is, as I mentioned, 13 millimeters thick.  And at the end, it's Baltic birch.  And it's sanded to 30 millimeters.  Because if you glue in those inserts, then you have to sand it down.  You can decide between standard and white body.  And you can make it between 1 meter 6 and 1 meter 16 long.  But it doesn't matter much.  As I mentioned before, the width actually matters.  It feels a lot slower if it's wider.  I showed you the prototype in Fungor.  And another option would be to hand root it in wood.  And the final version would be, you would do it with a CNC machine.  And just as a reminder, that was the first machine we built in Fungor.  Even the ramps, everything is Fungor here.  Works fine. Sometimes you just have to re-hot glue stuff.  Because this ball is heavy. It will shoot off stuff.  But yeah, it's just Fungor and it can fix everything.  And then we went more professional.  And we used a CNC machine to build a play field.  This is actually where we cut our play field.  Took about 15 minutes roughly.  But at a professional manufacturer, there's one in Germany actually, which does play fields.  And he did this for us.  Yeah, then afterwards you usually glue the inserts.  And you sand it flat.  And you print it and at the end there's coating. It's like car coating.  But a lot more layers.  And you probably do not want to do this on your own.  Unless you're a professional painter or something.  Then maybe. But otherwise you do not want to do this.  At least we decided not to.  This is how the wood version looked.  So we didn't do inserts at the beginning because it's expensive with all the coating.  So we took the simple version and just built the same play field again with wood.  So it looks a lot cleaner now.  So this is all the lower side with all the electronics.  And this is the upper side with the ramps.  And next.  So we're currently doing a next version, which we hope to have finished for Congress here.  But it's not finished yet. It will be finished in January.  But this is the CAD drawing basically with also insert where they should go.  And this is actually how it's done.  That's a nice robot which can glue the insert for you.  At least if you do more than maybe 10 play fields.  So for professional machines it's done with a robot.  It just sucks the insert here and just puts it down and then it's glued.  We did some artwork with Photoshop.  My colleague is actually called Philip.  Photoshop Philip.  It's probably a German joke but still works.  Yeah, this is what you came up with.  It's not a final version but I think you get the idea.  This is probably too light.  This may be too dark at some point.  It's too much contrast between the two.  But you get the idea.  This is obviously the evil side.  But the inserts are the same.  And obviously the holes for the mechanics are the same.  Just different print and software will just drive it differently.  So now you know we need all the hard stuff.  So like metal.  So let's build some rails.  So at the edge of the play field there are those rails.  Because if you shoot the orbit the boy should slide around and not just go to the top and fall down.  So those are typically made of steel.  And we initially just got two millimeters steel band from Amazon.  It was pretty cheap.  And then we braced screws to it.  That's what you can see here.  It just braced screws so it doesn't look pretty.  But it worked for a long time.  And later we lasered them.  I can show you in a minute.  This is when we mounted this handmade prototype rails.  And we had them for quite some time.  They worked pretty well.  Afterwards I designed them in cart again with a sheet metal tool with all those nice ledges here.  And then we basically unrolled them for this.  And this is what our manufacturer sent us five weeks later.  And then we bent them by hand.  It's one millimeter steel.  Stainless steel.  And this is how one rail looked like.  Unfortunately they don't have a nice picture without the ramps on top.  But I think you get the idea.  This is just the rail around the orbit here.  And it has some nice ledges where you can screw it to the play field.  Yeah, so next we need some ramps.  So you get different options for ramps.  One is plastic.  You can just 3D print them.  But they are large.  It takes a lot of time and probably filament.  But it works.  If you want you can do this.  Later you would typically deep draw them.  It's also doable at home.  And a lot of people do it.  We didn't.  We went with metal.  It should be solid.  And so first we actually cut them by hand.  And at the end we lasered them again.  And you get wire ramps which you usually use where metal ramp would just hide too much stuff of your play field.  So those coming down from the top, those are wire ramps.  And you can weld them again or you can weld or brass them.  So this is again the ramp setup.  So those will be wire ramps because this will hide too much of the play field.  You just want to see the inserts and the nice artwork below.  And this will be steel ramps basically.  So first we went again with a CAD program and then we did this nice prototype out of cardboard.  And you may laugh.  But this works.  For some times until this flies away here because the ball hits it.  Until that point it will work.  But for prototyping it's fine.  Just put them in there, hot glue them and it will work.  Then we cut them by hand.  Doesn't look pretty.  But it worked even better.  Especially it was faster there.  And then we went more professional.  So the bottom one was a handmade one.  And the top one was the professionally made one.  Which we didn't bend by hand because we missed to cut them here.  Then we did it again.  And like a lot of things we did a lot of iterations.  So we currently do the fourth iteration of our ramps.  The third iteration of the play field.  And the fourth iteration of the rails also.  So this is what we did next.  This again is what we got from our manufacturer.  We just lasered out the bending slots.  So you can bend them at home with a small bench.  And that's what we did.  And then it looked like this.  We got everything twice.  Because two sides and then you have to build everything twice.  Should have thought about that earlier.  But well, you learn from your mistakes.  And then that were our ramps basically.  And there will be a new version next year.  So yeah.  Then we did rail ramps.  And we decided to go with pressing.  With a silver hard load.  It's in German.  Press alloy.  I think it's in English.  And you just use a torch and put the silver to the metal.  And then it connects.  And it's pretty stable.  So we didn't manage to break it until now.  So it's easier to break it here than break this.  So that's pretty okay.  This works.  I mean, it doesn't look perfect.  So it works for quite some time and we still have them.  And this is actually before with all those foam core ramps.  And afterwards with wood and all the rear ramps.  And the wire ramps here.  So you see that we still have a lot of foam core here and hot glue and.  Gaffer tape for just connecting stuff because you need latches everything everywhere and you need holes to screw stuff.  And you tend to forget this.  And we didn't we didn't notice until we got this that steel v4a steel is actually really hard.  And you cannot easily just just just drill a hole.  It would just go and then it won't look pretty anymore.  So we just went, well, let's let's do it again.  Put in all the holes and do a new revision with all the mistakes you made and fix them in an extra vision.  So now you notice that there's a lot of open space like here and what the ball will do it will just fall in and then stay there.  And since there's no mechanic to put it to push it out, well, it will stay there forever.  And that's the problem.  At least if you put the glass on top.  But but it's not good.  So usually you got plastics and in the beginning, yeah, just put them out of foam core like everything and hot glue them.  And then we went to the 3d printing.  That's what you look at what you can see here. And then as usual, let's face reality and there's always something missing.  So there's some manufacturing tolerances at the REMS some tolerances when you ban the the REMS.  And yeah, even if you just screw stuff, everything has tolerances.  So make sure just to cut a little bit of here and leave the latch here.  And yeah, yeah, and then we did it again.  So like everything you learn from from doing it.  So credit prototype everything.  If you if you can laser it out from from cardboard, we didn't have a laser.  So laser would be will be handy.  So just laser it out from cardboard and try it out.  It would save you a lot of time.  Then it's software.  I talked about the mission PIM off framework.  And basically it's a framework written in Python.  It's Python three.  You can install it via PIP just PIP install MPF and mission PIM off framework.  And then it's basically installed.  You need working open GL open GL and SDL to.  So that's why we listed the Raspberry Pi before because the Raspberry Pi only has this EGL this limited mobile open GL implementation.  So we support Windows Linux, Mac OS and the Raspberry Pi.  And it's this framework has two processes.  One game process was actually runs also logic.  And a media controller process, which renders all the graphics, plays the videos because you're you're  your game should be pretty real time.  I mean, it's not not important that everything reacts inside one millisecond in the game framework.  Because whatever it actually does is it pushes the rules into this hardware controller.  So it says, well, if this fitter flipper button is hit here, pulls this coil for 15 milliseconds.  So the hardware will take care of that.  But still, if if I hit the target, the game needs to say, well, now light this light and this shouldn't be, I don't know, two seconds.  The player will notice everything over, I don't know, 50 to 100 milliseconds.  So this should be pretty real time.  And the media controller stuff usually is not very real time.  So loading a video may block everything involving IO on the disk may block.  And this also renders the DMD, which is connected to the game process again.  So we send events to the media controller, it renders the DMD, we get that out of OpenGL, and then we send it back and then we send it to the hardware.  Because if you you do not want to do everything pixel wise, so we actually render an impact video on an OpenGL viewport and just get the right pixels for the DMD.  Just to make it easier for a developer.  This is the general sequence, how the software works.  It launches initial startup initialize everything.  Then you got an attract mode where you flash all the lights and tell the player, well, give me a coin, play me.  And when the player does as a game start sequence, where usually some sounds play, the ball starts.  The player does something, the ball ends and this repeats until the player has no more balls.  Then the game ends.  In our case, we got 30 lives, so you can lose 30 balls on every side and whoever loses 30 balls first will lose.  A little bit different, but we just overloaded some classes here and then this mechanics work.  This is how software side works.  You got the virtual DMD here, you got the state of your devices in your software here and you got the rectangle ones are switches.  You can click them and they activate virtually and the round ones are lights actually.  So you can see your light shows and you can play with all the switches.  But when here and then the software knows that it's here and it will carry on with this.  It has some limited simulation like if the ball goes here and this coil fires, it knows that it goes to the play field for example.  So that's what it does.  And those are our two play fields.  We lay out it then not head by head, but next to each other just because it better fits the screen.  So this is how this actually works from a hardware perspective.  You got the computer which connects to the LED controller which next via serial to the LEDs.  The DMDs are our USB, the controller board are our USB.  Then we got a lot of node boards which just basically just break out boards for the coils and switches which you mount below the play field in modern machines.  And then you connect the switches and up those and coils to those node boards.  This is a general hardware architecture there.  This is how it looks in reality.  Our game runs here, transformer, the control system and some mechanics and the LEDs connect to those nice fade candy boards from other fruit.  We needed a cabinet and we do everything in form core so we did this in form core too.  This is a CAD model actually how it's supposed to look.  This is how it actually looked.  There's some foil on the glass but it's actually, believe me, it's glass.  This is our back box which is different from normal machines.  It's just up on top so you can see your opponent.  Mostly this DMD is more for the observers.  Most players do not look at the DMD during the game because especially in our game where you always have a ball, you don't have time to look up.  Otherwise we packed up.  We did sound. I did this so it's, well, it's music.  But if you seriously listen to most machines, the background sound is so simple.  It repeats after 20 seconds and it's simple.  So it works.  It may improve in the future.  That's why I won't play it now but you can play it at home if you like.  Then you need to play sound.  So we built our professional sound system with a $60 China amp and a large subwoofer like every car has.  So it's actually car audio stuff because it's cheap.  This is about $90.  We got basically one speaker on every side and the DMD will go here.  It's from the back box from the bottom and this is the cabinet from top.  That plays pretty fine. It's loud enough. It's nice.  So what does it all cost?  And it turns out this is pretty expensive.  Our machine just takes this by two because we got everything twice.  Somebody should have told us.  And this is basically just for the final version.  So a play field including print and everything is between 800 and 1000 euros.  If you go to some manufacturer and let them produce it for you.  The cabinet including prints is about 500 to 2000.  For a normal cabinet you can just buy one and then print it.  For our cabinet as I showed you that won't work because of head to head.  But usually I would buy it.  Then the control system depending on which one you choose.  A commercial one or this homemade one.  It's between 200 and 800 euros including a PC.  You got some electronics depending on if you got silver or golden wires.  And what strengths and what PSU.  100 to 500 euros.  And then you got the mechanics and it really depends on which mechanics you buy.  If you got more mechanics it will be obviously more expensive.  But between 1000 and 2000 euros for just the mechanics.  This is the part which would really be a lot cheaper if you produced maybe 1000 machines.  This will be maybe a tenth.  We can do it.  We have to buy basically replacement parts.  That's why it's expensive.  Then metal and plastic parts depending on how many you do and how many you buy.  200 to 800.  And the typical retail price of a normal machine is 8000 to 10,000 euros.  Recently a little bit more.  And then you can see that this quickly adds up.  But building a machine is not actually very cost efficient.  If you fucked in your time then never.  So we got some lessons learned before I show you a nice video of our machine at the end.  General manufacturing is hard and expensive and it takes a lot of time actually.  You go to a manufacturer say well I want to build this and they say well yeah we can do it in eight weeks you get it.  And yeah I mean as an hobbyist it's fine probably because I do not have unlimited time to build my machine.  But still I have to wait a lot of time then.  Have everything in cut if possible and it's nice to notice that parts hit each other before building them.  Because then hmm okay which one do we throw away.  Happens I mean most most of the times it's hard to fix.  Then what we learned is the shot width though if you do a ramp it should be between 5 and 10 centimeters.  A ball is 27 millimeters in diameter so theoretically they will work already.  But practically you will never hit it.  So 5 to 10 is your range.  Above 10 it's far too easy and you always make the shot and below 5 it's really really hard.  Then prevent jumps prevent jumps because if the ball jumps it will go somewhere and then it gets stuck.  I mean it will get stuck anyway everywhere.  If it can it will at some time.  So do not make ramps like this.  The ball will just go on and just fly over the ramp.  Yeah you learn that by prototyping.  And finally for me as a computer scientist you cannot fix physics and software.  So yeah that's basically it.  So our current playfield one of them looks this from below.  So this is all the electronics now add all the lights and then it's full.  And so there's not a lot of space left.  This is how it looks from top.  So one player here one player there.  Here with Fungor decals.  And yeah now we'll show video and at the same time take some Q&A.  So thanks for listening.  Yeah.  So you saw here one was released.  And the next new one came.  Any questions?  Now is your chance.  Yes.  Give me the mic.  You said you had two computers basically one doing all the mechanical stuff and one controlling the whole playfield and the displays and stuff.  But in your price calculation you already you also had the third system like control system for 200 to 800 euros.  What's that playing a part.  The 200 to 800 are your PC like a Raspberry Pi and your control system.  This is basically just the the node boards and the controller board.  It will cost us the amount.  Then you are the electronics which are the cables and the power supply.  And maybe the lights.  Yeah.  If you are too much hot glue.  Do you have a question from our online viewers.  Yes we do.  The internet wants to know or states that pinball machines have been around for a long time and aside from modern like manufacturing technologies or like planning and building with cat and cam.  Making things easier have actually have gameplay mechanics been modernized over the years.  That's right.  I mean.  The difference between old machines and car machines is that the rules are much deeper.  So before it was just shoot this target 20 times and every time you get score.  And the main objective was just to get an extra ball or extra credit sometimes.  And in modern machines is like shoot this one five times and we flash this insert there then shoot this one.  And then the other player gets a ball and you get a nice animation and insert here lights up and you can start another mode.  Basically a mission is a mode is a mode in a pinball machine.  So the rules are a lot a lot deeper in modern machines and that's basically because we have better CPUs in our machines.  A question over there.  Well first of all thank you very much this is totally awesome.  Thanks.  Obviously the physicalness of the machine that's that's great. Did you ever consider simulating not on a piece I mean to build a real scale model and project CG render and project the entire game instead of building the mechanics.  There's there's virtual pinball.  And you can play all the old games to just take a 42 inch TV and put it into a cabinet actually fits.  And at some buttons you can you can buy this for I don't know about one thousand bucks.  And then you can do this.  And there's actually one machine which is some somewhere in between which is called the P3 and actually has a TV on in the play field.  But it has real flipper fingers on top and play the flipper fingers on top of the of the of the TV.  And then there's the upper third like this part and you can swap those so you actually can swap your games.  It's still on development but I think you can preorder it like like you can preorder everything five years in advance and pinball.  But eventually it will be made and I actually played it.  It's pretty fun but it's it's different a little bit because the contrast is different here you got the light which actually emits light and and there you got the whole play field is slide up because of the background light.  And the ball is looking somehow black if it goes on top of the TV but still it's a nice machine.  Thanks.  Question over there.  Okay.  Any more questions.  Now it's your chance.  Could you go up to the microphone please.  You start on the left side.  I think this is the first two player pinball machine I've heard of.  Do you think this could become a trend if your machine is fun to play.  Well they're actually two or maybe three machines.  So they're a lot smaller but they're from 1990 around about so they're no longer produced for 25 years but they still exist.  And they do not have deep roots.  The problem with our machine is actually that it's really really large.  Basically long.  It's two meter long and you need basically three or four meters room for this.  So you need a long wall on your living room or somewhere where you can put it.  So this will be a problem in the market probably.  So maybe we could make 100 machines and sell them.  I don't know but probably not a thousand.  So I don't think it will be totally mainstream.  Okay we have time for two short questions.  Yes.  How are you handling the tilting of a machine because I imagine it's quite difficult for a two player machine.  Yeah we got two accelerometers on every side.  So actually because you tilt them on your side and then you can measure the acceleration there and then you can see the direction actually.  If it goes this way then you can see that the player on this side tilted it actually.  And we just remove life.  That's easy and if you tilt too much then you will have no more life.  Okay last question.  Could you give us a time frame from first idea to the first game you actually were able to play?  We started last year in April so it's one and a half years roughly.  And we were able to play before Congress so I think in August, September somewhere after camp definitely.  But mostly because all this ordering stuff took about three months.  And my colleague Philip he did all this sourcing and stuff and getting stuff from Canada and the US and getting it through customs.  And it took a lot of time.  So when we actually got this stuff and we had everything the first build on Filmcore.  I did the software before and then we connected and it just worked after two or three days so that was pretty fast.  But you could just shoot the ball up and it comes down and shoot it up again.  It's not that much fun.  Sorry we cannot hear you without a microphone.  So you talk about the dimensions.  Only if it's a short question.  The shortest.  You talk about the dimension but what about the inclination of the field itself?  It's basically six and a half degrees so you can go between six and seven.  But standard is six and a half.  And it just worked best.  Okay thank you very much.  Thank you.
33c3-8012-building_custom_pinball_machines_0_467.png 33c3-8012-building_custom_pinball_machines_468_1763.png 33c3-8012-building_custom_pinball_machines_1764_3491.png 33c3-8012-building_custom_pinball_machines_3492_3575.png 33c3-8012-building_custom_pinball_machines_3576_6011.png 33c3-8012-building_custom_pinball_machines_6012_6299.png 33c3-8012-building_custom_pinball_machines_6300_6767.png 33c3-8012-building_custom_pinball_machines_6768_26639.png 33c3-8012-building_custom_pinball_machines_26640_29903.png 33c3-8012-building_custom_pinball_machines_29904_32279.png 33c3-8012-building_custom_pinball_machines_32280_33071.png 33c3-8012-building_custom_pinball_machines_33072_36275.png 33c3-8012-building_custom_pinball_machines_36276_39215.png 33c3-8012-building_custom_pinball_machines_39216_51503.png 33c3-8012-building_custom_pinball_machines_51504_55187.png 33c3-8012-building_custom_pinball_machines_55188_55475.png 33c3-8012-building_custom_pinball_machines_55476_56111.png 33c3-8012-building_custom_pinball_machines_56112_56495.png 33c3-8012-building_custom_pinball_machines_56496_56687.png 33c3-8012-building_custom_pinball_machines_56688_57455.png 33c3-8012-building_custom_pinball_machines_57456_67355.png 33c3-8012-building_custom_pinball_machines_67356_67739.png 33c3-8012-building_custom_pinball_machines_67740_67799.png 33c3-8012-building_custom_pinball_machines_67800_67991.png 33c3-8012-building_custom_pinball_machines_67992_68291.png 33c3-8012-building_custom_pinball_machines_68292_75119.png 33c3-8012-building_custom_pinball_machines_75120_79715.png 33c3-8012-building_custom_pinball_machines_79716_80015.png 33c3-8012-building_custom_pinball_machines_80016_80495.png 33c3-8012-building_custom_pinball_machines_80496_80759.png 33c3-8012-building_custom_pinball_machines_80760_81071.png 33c3-8012-building_custom_pinball_machines_81072_81359.png 33c3-8012-building_custom_pinball_machines_81360_87011.png 33c3-8012-building_custom_pinball_machines_87012_87275.png 33c3-8012-building_custom_pinball_machines_87276_87539.png 33c3-8012-building_custom_pinball_machines_87540_88475.png 33c3-8012-building_custom_pinball_machines_88476_89507.png 33c3-8012-building_custom_pinball_machines_89508_89735.png 33c3-8012-building_custom_pinball_machines_89736_90383.png 33c3-8012-building_custom_pinball_machines_90384_91991.png 33c3-8012-building_custom_pinball_machines_91992_92603.png 33c3-8012-building_custom_pinball_machines_92604_92903.png 33c3-8012-building_custom_pinball_machines_92904_93203.png 33c3-8012-building_custom_pinball_machines_93204_94510.png
I don't know how about you, but whenever I start playing a new game, I know I'm in trouble. I usually get really excited playing all kinds of games because I like to win. I play a card game with some other guys. We were aiming at the same pile of cards and we hit each other's arms really hard. It gets even worse when I play the pinball machine. You know that feeling when you see those milliseconds when the ball gets closer and closer to the flippers. You have no chance of hitting the ball and keeping it in the game. But you keep trying and push those buttons really hard trying to keep the ball in the game. Then you hurt your fingers and punch the machine. Anyone who knows that feeling? I'm glad I'm not the only one. How cool would it be to have your own custom pinball machine? One where you can pick out your favorite LEDs, build your own design and everything. Lucky for you, we have someone here who has built his own pinball machine and who can tell you exactly what you can do. He's a computer scientist. He's actually doing his PhD in computer science. One of his favorite hobbies is pinball machines. He uses this experience again, playing pinball machines to learn more about manufacturing hardware, game design and real-time software. I'm pretty sure if you're loud enough now, he'll show us some pictures of his own pinball machine. I'll give you an impression of what your own machine could look like. Please welcome and give a warm round of applause to Jaap. Thanks. Good afternoon everybody. My name is Jan Kantot. I actually started building my own pinball machine about one and a half years ago. I'll tell you about that. This talk will be mostly pictures, a few bullet points and this will be basically our outline today. We start with game design. How do you want your game to look? What kind of toys and mechanics do you want in there? Then how to control those mechanics? Which electronics do we need to control them? How to drive the electronics with software? Then theoretically, now how this works and then we actually do the hard stuff, building all the parts for it. At the end, I got a small lessons learned. If we have time, I got a video of our machine actually running a game. You may ask some questions if you like. Let's start with what is pinball. This is a pinball. It weights 80 grams and it's 27 millimeters diameter. If you want, I will give some to the audience. Just to give you a feeling how hard a pinball is and just hang it around. Not everybody had it yet, but you will notice that this is actually heavier than you actually thought. Pinball is about shooting this nice ball around in a machine. It's actually a machine with all the consequences. I'm a computer scientist, so I'm not used to mechanics and all the stuff. I know a little bit of electronics, but yeah, mechanics are new to me. Let's start at the beginning. Small warning. Inside the pinball machine, there are high voltages. Just turn them off before touching them maybe. Then you get coils and they can hurt you. If you drive them incorrectly, they will also burn. They can also burn down your house. This is an expensive hobby and it takes a lot of time and effort. Maybe consult with your girlfriend or a better half before. If you find with this, then let's go. I met with a friend and we actually decided we want to build a pinball machine. At first we were drunk and the next day we still remembered it and we thought, how could it be? I made these beautiful drawings here. For God's sake, they are no longer in the artwork. We wanted to make a machine for two players, not one player, but two players. A head-to-head pinball machine, one player fighting against the other player. We wanted to be good with those evils. This is obviously evil and this is maybe good. We selected a theme. Then some artwork. We got the better artwork later. Then we wanted some medieval theme for the music. Then we also picked the general color scheme. You have to have a lot of decisions for mechanics, for graphics. You want to make sure that you don't have to redo everything at the end. We also picked colors. In our case it's more blue for the good side and black and red for the bad side or from the evil side. The girlfriend of my friend, who I'm doing, is a teacher. We started with this. It's a full-size playfield here. That's the kitchen table. We started off moving around parts. How should the layout look? You have to do one basic decision at the beginning. Do you want to have a standard body or a white body machine? The standard body machine is 50 centimeters or 20 inches. The white body machine is about 25 inches or 60 centimeters. That's a general decision. If you closely look at different pinball machines, they play quite differently. Even if it's only 10 centimeters, it plays differently. We decided to go with a standard size. Then we started with the standard lower third. The standard lower third is sling shots here, some flipper fingers here, trough in the bottom, and the ball is shot here. That's very common on nearly every machine. There are some pop bumpers here and some colorful ramps here. That's how we started off. We started to imagine the layout and which toys we want, and basically which mechanics we need to achieve the effects we want to have. Then we designed a little bit more and came up with this. This is actually our first design for the lights. Where should the lights be? We drew this on paper. It's pretty similar to the machine at the end. Not quite, you will see later. Just plan ahead. Changing stuff later with real mechanics or hardware is general expensive. That's even worse than in software. Late changes are just a lot of effort. Do them early if you can. Next, we did a wide wood. A wide wood is a name for a prototype play field. Usually it's done with wood, but we decided to go a little bit lighter. We used foam core. It's basically a foam with two paper plates on top and on the bottom. You can cut them with exciter knives. You can hot glue them. It's really cool. You can use gaffer tape everywhere. We built up this and we were creative. We tried a lot of stuff, ripped stuff off and put it together differently. Just to see how it feels good. Then we went sophisticated and designed it in a CAD program. The play field looks like this. Let me walk you through this machine. The players are here and on the other side. Those play fields are identical besides the artwork. We got two flipper fingers here. We got slingshots here, which push the ball away. We got the shooter here, but the shooter doesn't go into the play field like in most machines. Instead, the shooter goes over to the other side. The ball comes back here and stops here. Here's a post which stops the ball. Then we release the ball from here into the play field. After we released one, we shoot another one there. Once you lose a ball, you instantly get a new one. It's just a flow machine. There's no stop and flow. There's just flow. You always got a ball until you lost. Then we got some ramps. Two of them, this goes over to the other play field. It's a little bit hard to see here, but there's another one. The center ramp here also goes over to the other side. It comes back here from the other side. Here's a lock. This can keep three balls. Once you're under attack from the other side, there's a certain mode which you can achieve. Then it will release up to three balls from this lock. Then you got this nice star here that will be some kind of bash toys or figure. On one side an angel on the other side some kind of demon. You can shoot them. There's a drop target in front and a target to actually attack it. Then we got one loop ramp here which comes from here. You shoot it from the right flipper finger. It goes back over this wire ramp to the left flipper finger. We got the same on the right side, a ramp here which goes here and to the right. You basically can shoot from here to this side. It comes back on the left side. You can shoot from the left side to the right and it comes back to the right side. You can switch the flipper fingers if you like. There's an orbit here which goes into a kicker. This can hold the ball for a second and then release it into the pop bumpers here. You can also shoot the orbit from the other side and it goes around the orbit. It comes back. We got a scoop. It shoots just to the ramp. That's the basic layout. We came up with this after playing with Fumkor and trying a few revisions. Imagine we got this in a CAD program. What do we need to actually build this? It turns out we need mechanics because the ball won't move on its own, at least not for very long. The standard third is basically four parts. It's flipper fingers. This is a cut drawing here. You will see a nice picture in a minute. You've got slingshots. You've got a trough which keeps the balls and ejects balls. You've got a launcher which launches the ball into the play field. That was our first build. This is Fumkor again. This is not real wood. Fumkor is 10 mm thick. The standard play field in Pimbo machines is 13 mm thick. It's an unusual size in Germany or in Europe in general because it's inch. For most mechanics, it works fine. In the lower third, it works. For some mechanics, you just have to put another 3 mm below. Otherwise, they will just stick out too much from the play field. This is a trough from below. It keeps the balls. This is a flipper finger. Those are slingshots from below. This is from above. These are two blade switches. This is the kicker. It kicks the ball here. Those are the flipper fingers. The flipper bats on the upper side. The trough collects the ball here. It drains there and ejects here. The launcher just ejects to the play field. That was our first build. The trough, in case you want to know how this works, it's pretty simple. Basically, the best flipper mechanics are always simple. They work better if they are simple. It got multiple ball positions. They just rolled down into the trough. There are two rails on the bottom. For every ball, there is one switch to eject. There is a ball. It basically counts the ball here. When a new one drains, once it sits on the switch, the ball drains. It has a coil here, which ejects the ball out to the shooter. There is a special jam position. There is also an optocontact to detect this. It's very usual that the ball just comes back. It's mechanic. It's not 100% reliable. You then want to pull this coil a little bit less. Otherwise, both balls will go out. So that just the upper one kicks out. This is how it looks in our machine. This is a trough from above, with at least two balls. This is the kicker. Usually, there is a spring, which you can pull to manually launch the ball. In this case, we only got an auto launcher. The machine will feed balls to the other side. It would be bad if you can keep the balls away from the other player. This is also a little bit more reliable. We switched those mechanics. We had another one before. Then we got some more mechanics we needed. It's very basic. You can find those in nearly every Pimbo machine. This is a vertical upkicker or a scoop. This is a scoop, but it's also a vertical upkicker, depending on the naming. It's a vertical upkicker if it kicks it up to a ramp. It's a scoop if it kicks it back to the play field, and it's a kicker if it doesn't fully go in. So basically, those are all the same, just with three different names. They work by having a switch like this. Just to notice that there's a ball and a coil. You can see the shaft here, which just kicks the ball out. Here it actually falls in. There's also a switch and it shoots the ball into the ramp. It can also just pull the coil less, and it will go back to the play field. It also works. Then we got pop bumpers. Very, very common mechanics, with nice noises of the machine. That's how they look from above, and this is how they look from below. Basically, this is a switch. Plastic, this actually moves here. This shaft here, which triggers the switch. It's kind of complicated, but it works fairly well. Then you got this coil, which pulls down this metal ring here, which pushes the ball away. Very common mechanics, you can buy them, and usually they work pretty fine. Here you can see that we glued another 3 mm of foam here. Otherwise, the switches would just not fit at all. But this still works on foam core, so no need to make wood so far. For prototypes, it's really, really good. I would totally recommend it, but there are other opinions. Some people say, well, no, just do it in wood initially, but I would recommend foam core. Then you got some other mechanics. This is simple, this is just a blade switch with some green plastic on top. This is a lot of targets, and you can see them everywhere in the machine. And you got job targets. Job target is a plastic shaft here, and once you hit it, it goes down with spring. There's a switch to detect this, and a coil, this one, which just can pull it up again to reset it in software at the end. Those are very typical mechanics you can see in a lot of machines. We got one special mechanic, which is basically a diverter. I showed you this play field before, and what happens if one player constantly drains balls? Then at some point, there will be no balls at the other side. So we need some mechanic to balance the troughs. This is done by this nice mechanic here. This is basically a diverter. It's a flap, it's a flap, and we shoot the ball over, and we can just enable a coil, which is below here, which will push the flap up, and the ball will just jump over, and then it drains on the trough below, basically. In the normal case, if we just drop in here, and we will hold it with this post, which we go up, so this is basically a lock, which temporarily locks the ball, and once we need it, we will release it. This is the other lock, which is fed from the ramp in the middle, so it comes over from the other side. Oh, sorry, it comes from here. And then we got three positions with optos here, and again a post, which can just go up, and hold the balls, and we can release them even one by one, so we don't have to release all of them. So, where do you get those mechanics? So obviously you could take a machine and just strip them out. It will work, and it's probably also the cheapest way to do it. But those will be old mechanics, and you have to clean them, and so on, and not everything may be available. So it might be better to just buy them, and it turns out that's totally possible for most mechanics. Just check out the manuals of the machine, where the mechanic you like is in, and there are part numbers, and you can just order them. In general, it's good to order assemblies, which are just a collection of parts, because usually, for example, a flipper finger, that's 50 into 20 parts, and if you order them separately, that will be expensive very, very quickly. So order assemblies if possible, and there is one shop which actually sells those mechanics, and they build them on their own, also for very old mechanics. So look what they have. It's usually a good idea to just check what they have, and those are very well priced, usually, it's Pimbo live, and you can also write them an email, and if you're lucky, they will build the mechanic for you. They will, yeah, it takes half a year, and then we have it. Have it. Then there's Marcos specialties. They got everything, like really everything, but usually only one or two, and old stuff, but they got, I don't know, maybe 10,000 parts, so they got really everything, and it's either a high price, usually. Then you can go to your stern distributor, if it's a recent stern machine, that's the largest Pimbo manufacturer, and they sell replacement parts, it's usually not that expensive, but it takes a lot of time to get those, and sometimes some effort, but I guess they will even produce those parts if you want to buy them. So those are your options. You can also build mechanics like we did on the DeVerter, but I showed you the third revision, so that took some effort to make it reliable, because that's sometimes not easy, at least not for a computer scientist like me. So now we got mechanics, and we bought them, and while they're in there, and yeah, now we need to control them, and I'm working on an open source project, which is called the Mission Pimbo framework, and it's a framework which can control all those mechanics. So you can say, well, there's a flipper mechanic, this is a button, and this is the coil, enable it, and it will do all the magic in the background. So it contains a lot of building blocks. It works on Windows, Mac, Linux, and for example, Raspberry Pi, which is also Linux, but with some special limitations. Then you need a Pimbo control system, which usually interfaces with USB to your computer, and there are three major ones, it's Fast Pimbo, Multimorphic, P-Rock, and the Open Pimbo project, which is actually Open Hardware, and this is a little bit basic, but also works. It's also the cheapest option. I got them all here, so if you want to have a look later, just come by and you can show them. And then you need, obviously, a Pimbo machine. You can retrofit an old one, you can build your new one, whatever you like. Then you need driver boards, those usually come with this control system, and even in traditional machines, they're typically separated from the CPU, because those are the boards where the power is actually, which even may burn in some machines or cause damage. Then you have those FATs, which drive the coils, and those sometimes burn, for example. If you've got a charge in your coil, then those might burn and you have to replace them. They also got input protection, so your CPU won't burn once you connect your input to coil power, for example. So you can buy those, or you can build the Open Pimbo project hardware, which looks like this. So that's the cheapest option, basically. This is basically 40 bucks. But you have to solder it on your... Yeah, then obviously you have to wire it up. This is how this looked for standard low third. Those are the control boards here. And yeah, you'll think enough wires, because coils carry a lot of current, at least initially, so don't take too thin wires, otherwise they will just burn away. Yeah. Then, yeah, I talked a lot about coils, so I figured I need one slide about coils. They use basically everywhere, because they're cheap, they're reliable, and they're fast. For example, you could use a servo, but it will go out and it takes a lot of time, and it's expensive compared to a coil. So usually they're driven this way, that they initially pulse for 5 to 20 milliseconds, something, and then they're hooked with PWM. So they enable for 1 millisecond, disable for 6 milliseconds, enable for 1, and so on. Because otherwise you won't have enough power. For example, if you want to kick a ball, you need a lot of acceleration in the beginning, so you need a lot of current there. So usually they got an impedance of 4 to 8 ohms, a little bit less, so they carry a lot of current, and they can burn, obviously. So if you just connect them to your PSU, they will burn, usually. That's why it's important that you PWM them. And do not, unless you know what you're doing, do not just enable coils. They will burn. Try it once, but do not do it in your Qimo machine. And they can hurt you. They actually have a lot of force. So you probably all tried the ball by now. It can shoot this ball pretty fast, and it can also shoot your fingers, for example. And that will hurt, I can tell you. Then you want to know where the ball is, actually. And this is done by switches. So there are two traditional approaches here. One is those blade switches, the simplest, and most reliable switch, basically ever made. And this will basically always work. You can have a target here, you can have a button here. If it's possible, they usually go with those switches. And in newer machines, they're also those micro switches, usually from Cherry, like in your keyboard. And, for example, with this custom blade here. So this goes through the play field, and this is basically a roll over switch. If the ball rolls along there, it will notice it. And the control system, we get this pulse and tell the software about it. Then we got optos, I showed you some before. So the most common ones are those. Those are the Williams or Stern optos. They're about 13 millimeters thick, so you need a lot of space here. And we forgot about that, or we didn't actually know in the beginning. And a lot of places, we didn't have 13 millimeters. So we needed to come up with another solution. So we 3D printed this part, which is a side LED. This is 1.6 millimeters. And you see it connected here to a 1 millimeter steel ramp. This was the first design. So it worked pretty well in the beginning. But then it turned out vibrations are bad for this. And it clips through the hole here, but it's not enough. Sometimes they will just fly off. So we redesigned it like this, so that the LED goes in from here. And you can screw them into the ramp. So we cut threads there, and then you can screw them in. That was the final design, but it took some iterations. So now you know, and you can do better, hopefully. Next is we needed to connect those optos to the control board. This is a control board here for the inputs. And we designed those breakout boards here. One for power for the current limiting resistor. Because every opto is basically an LED, and you need this current limiting resistor. And you don't want to solder them into the line for every single opto. So we designed those breakout boards, and one for the receiver side. You could just crimp those receiver sides here, but then you could never disconnect it again, because there are two wires from the opto, and they go down. And then you got eight optos on this bank of this control board. And this is on the bottom, and the optos on the top. You will never be able to disconnect it. So we went with those small connectors, and then you can pull them out. And then we needed lights, and today everybody wants RGB, right? You know, those blinker light people, it's borrowing if it's just one color. So you got two types of lights, basically those insert lights, which are basically those things here, which are plastic and light below. And you got general illumination, GIs, which are below the rails and everything on the side, just to light the play feed from the side. And we used those nice Christmas lights for the general illumination, and those WS2812 LEDs, which come in this nice package here, to screw them from below. We did another play field, which is FUNCORE again, just for the lights, just to test light shows, and we didn't build it in our actual prototype. So next you need new display. So there are different options that you can use an LCD display if you like. But then you need higher definition graphics, and it gets a lot of, it costs a lot of effort in game design and graphics rendering and video rendering. And those small displays, which are basically dmd.metrics displays, they only have 128x32 pixels, so it's a lot easier to make graphics for them. So we went with those. And because we're head to head, we need two of them, so this is in software, you got the two dmds, and one is on every side. And this is actually an LED matrix, which we bought. And this can then actually show the same thing, which is shown here and so forth. Then you use power. And usually in older machines, you have 70 to 80 volts with those nice transformers here. But nowadays, I would recommend switching power supply with 48 volts. They work fine, and you can buy those for 50, 60 bucks. We went with the old one because three years ago they weren't readily available when we bought those. Then you need 12 volts for switches on the play field and 5 volts for all your lights. So if you go with serial LEDs like we did, you need a lot of power on the 5 volts. So we went with an ATX power supply, but there are cheaper options for this. And we went with the transformer, but switching power supply would be better probably. Then, now you got all the basics. So now you know everything to do it on your own. But we didn't actually build much. So let's get started with this. You need a play field, which is, as I mentioned, 13 millimeters thick. And at the end, it's Baltic birch. And it's sanded to 30 millimeters. Because if you glue in those inserts, then you have to sand it down. You can decide between standard and white body. And you can make it between 1 meter 6 and 1 meter 16 long. But it doesn't matter much. As I mentioned before, the width actually matters. It feels a lot slower if it's wider. I showed you the prototype in Fungor. And another option would be to hand root it in wood. And the final version would be, you would do it with a CNC machine. And just as a reminder, that was the first machine we built in Fungor. Even the ramps, everything is Fungor here. Works fine. Sometimes you just have to re-hot glue stuff. Because this ball is heavy. It will shoot off stuff. But yeah, it's just Fungor and it can fix everything. And then we went more professional. And we used a CNC machine to build a play field. This is actually where we cut our play field. Took about 15 minutes roughly. But at a professional manufacturer, there's one in Germany actually, which does play fields. And he did this for us. Yeah, then afterwards you usually glue the inserts. And you sand it flat. And you print it and at the end there's coating. It's like car coating. But a lot more layers. And you probably do not want to do this on your own. Unless you're a professional painter or something. Then maybe. But otherwise you do not want to do this. At least we decided not to. This is how the wood version looked. So we didn't do inserts at the beginning because it's expensive with all the coating. So we took the simple version and just built the same play field again with wood. So it looks a lot cleaner now. So this is all the lower side with all the electronics. And this is the upper side with the ramps. And next. So we're currently doing a next version, which we hope to have finished for Congress here. But it's not finished yet. It will be finished in January. But this is the CAD drawing basically with also insert where they should go. And this is actually how it's done. That's a nice robot which can glue the insert for you. At least if you do more than maybe 10 play fields. So for professional machines it's done with a robot. It just sucks the insert here and just puts it down and then it's glued. We did some artwork with Photoshop. My colleague is actually called Philip. Photoshop Philip. It's probably a German joke but still works. Yeah, this is what you came up with. It's not a final version but I think you get the idea. This is probably too light. This may be too dark at some point. It's too much contrast between the two. But you get the idea. This is obviously the evil side. But the inserts are the same. And obviously the holes for the mechanics are the same. Just different print and software will just drive it differently. So now you know we need all the hard stuff. So like metal. So let's build some rails. So at the edge of the play field there are those rails. Because if you shoot the orbit the boy should slide around and not just go to the top and fall down. So those are typically made of steel. And we initially just got two millimeters steel band from Amazon. It was pretty cheap. And then we braced screws to it. That's what you can see here. It just braced screws so it doesn't look pretty. But it worked for a long time. And later we lasered them. I can show you in a minute. This is when we mounted this handmade prototype rails. And we had them for quite some time. They worked pretty well. Afterwards I designed them in cart again with a sheet metal tool with all those nice ledges here. And then we basically unrolled them for this. And this is what our manufacturer sent us five weeks later. And then we bent them by hand. It's one millimeter steel. Stainless steel. And this is how one rail looked like. Unfortunately they don't have a nice picture without the ramps on top. But I think you get the idea. This is just the rail around the orbit here. And it has some nice ledges where you can screw it to the play field. Yeah, so next we need some ramps. So you get different options for ramps. One is plastic. You can just 3D print them. But they are large. It takes a lot of time and probably filament. But it works. If you want you can do this. Later you would typically deep draw them. It's also doable at home. And a lot of people do it. We didn't. We went with metal. It should be solid. And so first we actually cut them by hand. And at the end we lasered them again. And you get wire ramps which you usually use where metal ramp would just hide too much stuff of your play field. So those coming down from the top, those are wire ramps. And you can weld them again or you can weld or brass them. So this is again the ramp setup. So those will be wire ramps because this will hide too much of the play field. You just want to see the inserts and the nice artwork below. And this will be steel ramps basically. So first we went again with a CAD program and then we did this nice prototype out of cardboard. And you may laugh. But this works. For some times until this flies away here because the ball hits it. Until that point it will work. But for prototyping it's fine. Just put them in there, hot glue them and it will work. Then we cut them by hand. Doesn't look pretty. But it worked even better. Especially it was faster there. And then we went more professional. So the bottom one was a handmade one. And the top one was the professionally made one. Which we didn't bend by hand because we missed to cut them here. Then we did it again. And like a lot of things we did a lot of iterations. So we currently do the fourth iteration of our ramps. The third iteration of the play field. And the fourth iteration of the rails also. So this is what we did next. This again is what we got from our manufacturer. We just lasered out the bending slots. So you can bend them at home with a small bench. And that's what we did. And then it looked like this. We got everything twice. Because two sides and then you have to build everything twice. Should have thought about that earlier. But well, you learn from your mistakes. And then that were our ramps basically. And there will be a new version next year. So yeah. Then we did rail ramps. And we decided to go with pressing. With a silver hard load. It's in German. Press alloy. I think it's in English. And you just use a torch and put the silver to the metal. And then it connects. And it's pretty stable. So we didn't manage to break it until now. So it's easier to break it here than break this. So that's pretty okay. This works. I mean, it doesn't look perfect. So it works for quite some time and we still have them. And this is actually before with all those foam core ramps. And afterwards with wood and all the rear ramps. And the wire ramps here. So you see that we still have a lot of foam core here and hot glue and. Gaffer tape for just connecting stuff because you need latches everything everywhere and you need holes to screw stuff. And you tend to forget this. And we didn't we didn't notice until we got this that steel v4a steel is actually really hard. And you cannot easily just just just drill a hole. It would just go and then it won't look pretty anymore. So we just went, well, let's let's do it again. Put in all the holes and do a new revision with all the mistakes you made and fix them in an extra vision. So now you notice that there's a lot of open space like here and what the ball will do it will just fall in and then stay there. And since there's no mechanic to put it to push it out, well, it will stay there forever. And that's the problem. At least if you put the glass on top. But but it's not good. So usually you got plastics and in the beginning, yeah, just put them out of foam core like everything and hot glue them. And then we went to the 3d printing. That's what you look at what you can see here. And then as usual, let's face reality and there's always something missing. So there's some manufacturing tolerances at the REMS some tolerances when you ban the the REMS. And yeah, even if you just screw stuff, everything has tolerances. So make sure just to cut a little bit of here and leave the latch here. And yeah, yeah, and then we did it again. So like everything you learn from from doing it. So credit prototype everything. If you if you can laser it out from from cardboard, we didn't have a laser. So laser would be will be handy. So just laser it out from cardboard and try it out. It would save you a lot of time. Then it's software. I talked about the mission PIM off framework. And basically it's a framework written in Python. It's Python three. You can install it via PIP just PIP install MPF and mission PIM off framework. And then it's basically installed. You need working open GL open GL and SDL to. So that's why we listed the Raspberry Pi before because the Raspberry Pi only has this EGL this limited mobile open GL implementation. So we support Windows Linux, Mac OS and the Raspberry Pi. And it's this framework has two processes. One game process was actually runs also logic. And a media controller process, which renders all the graphics, plays the videos because you're you're your game should be pretty real time. I mean, it's not not important that everything reacts inside one millisecond in the game framework. Because whatever it actually does is it pushes the rules into this hardware controller. So it says, well, if this fitter flipper button is hit here, pulls this coil for 15 milliseconds. So the hardware will take care of that. But still, if if I hit the target, the game needs to say, well, now light this light and this shouldn't be, I don't know, two seconds. The player will notice everything over, I don't know, 50 to 100 milliseconds. So this should be pretty real time. And the media controller stuff usually is not very real time. So loading a video may block everything involving IO on the disk may block. And this also renders the DMD, which is connected to the game process again. So we send events to the media controller, it renders the DMD, we get that out of OpenGL, and then we send it back and then we send it to the hardware. Because if you you do not want to do everything pixel wise, so we actually render an impact video on an OpenGL viewport and just get the right pixels for the DMD. Just to make it easier for a developer. This is the general sequence, how the software works. It launches initial startup initialize everything. Then you got an attract mode where you flash all the lights and tell the player, well, give me a coin, play me. And when the player does as a game start sequence, where usually some sounds play, the ball starts. The player does something, the ball ends and this repeats until the player has no more balls. Then the game ends. In our case, we got 30 lives, so you can lose 30 balls on every side and whoever loses 30 balls first will lose. A little bit different, but we just overloaded some classes here and then this mechanics work. This is how software side works. You got the virtual DMD here, you got the state of your devices in your software here and you got the rectangle ones are switches. You can click them and they activate virtually and the round ones are lights actually. So you can see your light shows and you can play with all the switches. But when here and then the software knows that it's here and it will carry on with this. It has some limited simulation like if the ball goes here and this coil fires, it knows that it goes to the play field for example. So that's what it does. And those are our two play fields. We lay out it then not head by head, but next to each other just because it better fits the screen. So this is how this actually works from a hardware perspective. You got the computer which connects to the LED controller which next via serial to the LEDs. The DMDs are our USB, the controller board are our USB. Then we got a lot of node boards which just basically just break out boards for the coils and switches which you mount below the play field in modern machines. And then you connect the switches and up those and coils to those node boards. This is a general hardware architecture there. This is how it looks in reality. Our game runs here, transformer, the control system and some mechanics and the LEDs connect to those nice fade candy boards from other fruit. We needed a cabinet and we do everything in form core so we did this in form core too. This is a CAD model actually how it's supposed to look. This is how it actually looked. There's some foil on the glass but it's actually, believe me, it's glass. This is our back box which is different from normal machines. It's just up on top so you can see your opponent. Mostly this DMD is more for the observers. Most players do not look at the DMD during the game because especially in our game where you always have a ball, you don't have time to look up. Otherwise we packed up. We did sound. I did this so it's, well, it's music. But if you seriously listen to most machines, the background sound is so simple. It repeats after 20 seconds and it's simple. So it works. It may improve in the future. That's why I won't play it now but you can play it at home if you like. Then you need to play sound. So we built our professional sound system with a $60 China amp and a large subwoofer like every car has. So it's actually car audio stuff because it's cheap. This is about $90. We got basically one speaker on every side and the DMD will go here. It's from the back box from the bottom and this is the cabinet from top. That plays pretty fine. It's loud enough. It's nice. So what does it all cost? And it turns out this is pretty expensive. Our machine just takes this by two because we got everything twice. Somebody should have told us. And this is basically just for the final version. So a play field including print and everything is between 800 and 1000 euros. If you go to some manufacturer and let them produce it for you. The cabinet including prints is about 500 to 2000. For a normal cabinet you can just buy one and then print it. For our cabinet as I showed you that won't work because of head to head. But usually I would buy it. Then the control system depending on which one you choose. A commercial one or this homemade one. It's between 200 and 800 euros including a PC. You got some electronics depending on if you got silver or golden wires. And what strengths and what PSU. 100 to 500 euros. And then you got the mechanics and it really depends on which mechanics you buy. If you got more mechanics it will be obviously more expensive. But between 1000 and 2000 euros for just the mechanics. This is the part which would really be a lot cheaper if you produced maybe 1000 machines. This will be maybe a tenth. We can do it. We have to buy basically replacement parts. That's why it's expensive. Then metal and plastic parts depending on how many you do and how many you buy. 200 to 800. And the typical retail price of a normal machine is 8000 to 10,000 euros. Recently a little bit more. And then you can see that this quickly adds up. But building a machine is not actually very cost efficient. If you fucked in your time then never. So we got some lessons learned before I show you a nice video of our machine at the end. General manufacturing is hard and expensive and it takes a lot of time actually. You go to a manufacturer say well I want to build this and they say well yeah we can do it in eight weeks you get it. And yeah I mean as an hobbyist it's fine probably because I do not have unlimited time to build my machine. But still I have to wait a lot of time then. Have everything in cut if possible and it's nice to notice that parts hit each other before building them. Because then hmm okay which one do we throw away. Happens I mean most most of the times it's hard to fix. Then what we learned is the shot width though if you do a ramp it should be between 5 and 10 centimeters. A ball is 27 millimeters in diameter so theoretically they will work already. But practically you will never hit it. So 5 to 10 is your range. Above 10 it's far too easy and you always make the shot and below 5 it's really really hard. Then prevent jumps prevent jumps because if the ball jumps it will go somewhere and then it gets stuck. I mean it will get stuck anyway everywhere. If it can it will at some time. So do not make ramps like this. The ball will just go on and just fly over the ramp. Yeah you learn that by prototyping. And finally for me as a computer scientist you cannot fix physics and software. So yeah that's basically it. So our current playfield one of them looks this from below. So this is all the electronics now add all the lights and then it's full. And so there's not a lot of space left. This is how it looks from top. So one player here one player there. Here with Fungor decals. And yeah now we'll show video and at the same time take some Q&A. So thanks for listening. Yeah. So you saw here one was released. And the next new one came. Any questions? Now is your chance. Yes. Give me the mic. You said you had two computers basically one doing all the mechanical stuff and one controlling the whole playfield and the displays and stuff. But in your price calculation you already you also had the third system like control system for 200 to 800 euros. What's that playing a part. The 200 to 800 are your PC like a Raspberry Pi and your control system. This is basically just the the node boards and the controller board. It will cost us the amount. Then you are the electronics which are the cables and the power supply. And maybe the lights. Yeah. If you are too much hot glue. Do you have a question from our online viewers. Yes we do. The internet wants to know or states that pinball machines have been around for a long time and aside from modern like manufacturing technologies or like planning and building with cat and cam. Making things easier have actually have gameplay mechanics been modernized over the years. That's right. I mean. The difference between old machines and car machines is that the rules are much deeper. So before it was just shoot this target 20 times and every time you get score. And the main objective was just to get an extra ball or extra credit sometimes. And in modern machines is like shoot this one five times and we flash this insert there then shoot this one. And then the other player gets a ball and you get a nice animation and insert here lights up and you can start another mode. Basically a mission is a mode is a mode in a pinball machine. So the rules are a lot a lot deeper in modern machines and that's basically because we have better CPUs in our machines. A question over there. Well first of all thank you very much this is totally awesome. Thanks. Obviously the physicalness of the machine that's that's great. Did you ever consider simulating not on a piece I mean to build a real scale model and project CG render and project the entire game instead of building the mechanics. There's there's virtual pinball. And you can play all the old games to just take a 42 inch TV and put it into a cabinet actually fits. And at some buttons you can you can buy this for I don't know about one thousand bucks. And then you can do this. And there's actually one machine which is some somewhere in between which is called the P3 and actually has a TV on in the play field. But it has real flipper fingers on top and play the flipper fingers on top of the of the of the TV. And then there's the upper third like this part and you can swap those so you actually can swap your games. It's still on development but I think you can preorder it like like you can preorder everything five years in advance and pinball. But eventually it will be made and I actually played it. It's pretty fun but it's it's different a little bit because the contrast is different here you got the light which actually emits light and and there you got the whole play field is slide up because of the background light. And the ball is looking somehow black if it goes on top of the TV but still it's a nice machine. Thanks. Question over there. Okay. Any more questions. Now it's your chance. Could you go up to the microphone please. You start on the left side. I think this is the first two player pinball machine I've heard of. Do you think this could become a trend if your machine is fun to play. Well they're actually two or maybe three machines. So they're a lot smaller but they're from 1990 around about so they're no longer produced for 25 years but they still exist. And they do not have deep roots. The problem with our machine is actually that it's really really large. Basically long. It's two meter long and you need basically three or four meters room for this. So you need a long wall on your living room or somewhere where you can put it. So this will be a problem in the market probably. So maybe we could make 100 machines and sell them. I don't know but probably not a thousand. So I don't think it will be totally mainstream. Okay we have time for two short questions. Yes. How are you handling the tilting of a machine because I imagine it's quite difficult for a two player machine. Yeah we got two accelerometers on every side. So actually because you tilt them on your side and then you can measure the acceleration there and then you can see the direction actually. If it goes this way then you can see that the player on this side tilted it actually. And we just remove life. That's easy and if you tilt too much then you will have no more life. Okay last question. Could you give us a time frame from first idea to the first game you actually were able to play? We started last year in April so it's one and a half years roughly. And we were able to play before Congress so I think in August, September somewhere after camp definitely. But mostly because all this ordering stuff took about three months. And my colleague Philip he did all this sourcing and stuff and getting stuff from Canada and the US and getting it through customs. And it took a lot of time. So when we actually got this stuff and we had everything the first build on Filmcore. I did the software before and then we connected and it just worked after two or three days so that was pretty fast. But you could just shoot the ball up and it comes down and shoot it up again. It's not that much fun. Sorry we cannot hear you without a microphone. So you talk about the dimensions. Only if it's a short question. The shortest. You talk about the dimension but what about the inclination of the field itself? It's basically six and a half degrees so you can go between six and seven. But standard is six and a half. And it just worked best. Okay thank you very much. Thank you.
cool would it be to have your own custom pinball to build a pinball machine. At first we were get different options for ramps. One is plastic. iteration of our ramps. The third iteration of