0:00:00.000,0:00:17.140 35C3 preroll music 0:00:17.140,0:00:24.590 Herald: Our next speaker got hit by a car[br]really really bad and she wasn't able to 0:00:24.590,0:00:32.580 do anything for around half a year. And[br]what do you do if you're running out of 0:00:32.580,0:00:39.860 books to read and games to play. Well, if[br]you're already a Ph.D. in manufacturing, 0:00:39.860,0:00:45.390 you probably turn around and think what[br]can I do in my home and what you can do in 0:00:45.390,0:00:51.550 your home without many tools is actually[br]getting into electronics and well 0:00:51.550,0:00:54.730 electronics can be functional but[br]electronics can also be very very 0:00:54.730,0:01:00.120 beautiful. So we 're going to look at the[br]beautiful side of electronics today with 0:01:00.120,0:01:06.575 our most excellent speaker Emily Hammes.[br]applause 0:01:10.595,0:01:13.030 Emily: So yeah. So I'm going to talk to 0:01:13.030,0:01:17.330 you guys about artistic PCB design and[br]fabrication. And like you said I'm a 0:01:17.330,0:01:23.820 manufacturing engineer and a bioengineer.[br]I'm really not an electrical engineer nor 0:01:23.820,0:01:30.000 am I a programmer. I literally had one[br]programming class in my 16 years at a 0:01:30.000,0:01:35.000 university and I had two electronics[br]classes so really not much more than 0:01:35.000,0:01:42.240 gymnasium for everybody. My first PCB that[br]I ever designed was actually during my 0:01:42.240,0:01:47.619 Ph.D. in manufacturing. I had no idea what[br]I was doing so I designed it completely in 0:01:47.619,0:01:53.600 solidworks which is a basically a[br]mechanical engineering software where I 0:01:53.600,0:01:58.530 built a 3-D model and it included layers[br]that were going to be the copper. And then 0:01:58.530,0:02:01.780 I went to an electrical engineer and I was[br]like so how do I turn this into a file 0:02:01.780,0:02:08.060 that an electrical engineer can use and he[br]just laughed at me. So the purpose of that 0:02:08.060,0:02:15.670 was actually that particular PCB. See if I[br]can get the mouse to work. Actually I can 0:02:15.670,0:02:20.760 just walk over here. But basically in this[br]column, this column used chemical 0:02:20.760,0:02:25.480 chromatography or liquid chromatography to[br]separate chemicals by different 0:02:25.480,0:02:31.629 properties. And what I needed to do was[br]buffer humidity that was reaching poison 0:02:31.629,0:02:39.069 gas sensors without losing the poison gas[br]measurements because the sensors that my 0:02:39.069,0:02:43.969 colleagues were designing were cross[br]sensitive to humidity and to the poison 0:02:43.969,0:02:48.890 gas we were measuring. So it was my job to[br]build a zero energy system that could 0:02:48.890,0:02:52.269 remove the humidity or at least buffer it.[br]So the signals wouldn't reach those 0:02:52.269,0:02:58.990 sensors at the same time. So what I did is[br]I sort of inspired by a bathtub drain as I 0:02:58.990,0:03:04.590 built this PCB with the humidity and[br]temperature sensor in the middle and then 0:03:04.590,0:03:11.469 slits in it so that the air could go[br]through. And that's sort of how me 0:03:11.469,0:03:18.519 building holes in PCBs got started and[br]building holes in PCBs is not really 0:03:18.519,0:03:25.680 normal for fabrication companies. So when[br]I took that PCB to EPFL and asked their 0:03:25.680,0:03:33.120 fab to build it they were not happy with[br]me. So then after the accident that he 0:03:33.120,0:03:40.150 mentioned I decided I wanted to, so[br]basically I was living with my now husband 0:03:40.150,0:03:47.069 and he runs a embedded systems engineering[br]company. And so our apartment is a stack 0:03:47.069,0:03:51.469 of oscilloscopes and multiple soldering[br]irons and I knew very little about how to 0:03:51.469,0:03:55.379 work with these things but I was like you[br]know what. What you're doing is way cooler 0:03:55.379,0:04:03.219 than reading books. So I'm going to figure[br]this out. So I started with simple things 0:04:03.219,0:04:12.299 and basically then got into more complex[br]things. And on the far side is a image of 0:04:12.299,0:04:17.168 a PCB that's taped to the window that I've[br]embedded plastic in I have a video online 0:04:17.168,0:04:20.750 of how I did that for those, actually[br]those are the examples and that's the end- 0:04:20.750,0:04:27.490 slide of that video. And then this is what[br]it looks like in the dark. So you can see 0:04:27.490,0:04:32.590 that it blinks and it also has this[br]stained glass window property. So there 0:04:32.590,0:04:41.000 just 2D art. So then this is my most[br]recent PCB and it's a Christmas tree and 0:04:41.000,0:04:46.280 it's three dimensional. They basically the[br]dragon fly and the Christmas tree have the 0:04:46.280,0:04:50.560 same schematic so electrically they're[br]identical it's just there's four of them 0:04:50.560,0:04:58.150 on the Christmas tree. But mechanically[br]they're very different. So that's a little 0:04:58.150,0:05:04.890 bit of my background and the type of PCBs[br]that I actually end up building. So this 0:05:04.890,0:05:08.830 talk is going to be about my workflow.[br]It's not going to be about like all the 0:05:08.830,0:05:12.700 different softwares I'll mention the[br]software is that I use that are free. 0:05:12.710,0:05:17.610 I've used non free softwares. But those aren't[br]as interesting because you have to do 0:05:17.610,0:05:21.500 those for a company if you want to do it[br]on your own. You need the free software. 0:05:21.500,0:05:26.570 So I'll mention which ones I use but it's[br]not an introduction on how to use those. 0:05:26.570,0:05:31.900 It's an introduction on how to fuse them[br]together. Because that's the really 0:05:31.900,0:05:35.430 complicated part that I had to figure out[br]on my own. There's tons of youtube videos 0:05:35.430,0:05:42.061 on everything else. So basically it's[br]mechanical design that's coupled with the 0:05:42.061,0:05:46.060 electrical design. So the first thing I'm[br]going to talk about. It's actually an 0:05:46.060,0:05:50.270 interplay between the CAD software, which[br]is what architects and mechanical 0:05:50.270,0:05:56.810 engineers use and PCB software which is[br]what electrical engineers use. 0:05:56.810,0:06:02.280 So basically it's not about how to use any[br]given software. So the first thing that I 0:06:02.280,0:06:08.970 need to think about when I start designing[br]a PCB is what are the rules that the fab 0:06:08.970,0:06:15.660 needs me to follow in order to actually[br]have my final electrical design called the 0:06:15.660,0:06:23.490 Gerber file work in the fab or actually be[br]buildable and the green PCB is how it 0:06:23.490,0:06:29.070 looks on KiCAD and three dimensions. The[br]purple PCB is how a lot of fabs would 0:06:29.070,0:06:34.460 actually end up building it because a lot[br]of fabs do not deal with internal holes. 0:06:34.460,0:06:39.810 Many of them will do it but you might have[br]to actually contact them and talk to a 0:06:39.810,0:06:45.010 real person in order to make sure that[br]they will actually build it the way you 0:06:45.010,0:06:51.080 wanted because their software doesn't[br]necessarily automatically identify the 0:06:51.080,0:06:58.490 routing for that when they actually go to[br]the milling process. The other thing that 0:06:58.490,0:07:04.030 I have to think about is what are the[br]design rules on V-CUTS. So a V-CUT, 0:07:04.030,0:07:07.680 basically if you look at this heart that I[br]have an example of it's a very small 0:07:07.680,0:07:13.120 heart. So I can panelize it which means[br]putting more than one heart on a board so 0:07:13.120,0:07:17.450 that I can break them apart later. It's[br]makes it cheaper for me because then I get 0:07:17.450,0:07:23.730 four for the same price as I'd get one for[br]from the fab. But I have to incorporate a 0:07:23.730,0:07:28.380 way to break them apart. And those are[br]called V-CUTS and a V-CUT is just they 0:07:28.380,0:07:36.170 basically take a blade and they run the[br]PCB through it and it causes a small cut 0:07:36.170,0:07:41.900 to be made in the board and it's often on[br]both sides of the board. But in order to 0:07:41.900,0:07:47.650 do that they need a flat surface so it's[br]difficult to see in. I'll use the pointer 0:07:47.650,0:07:53.240 although I don't think it shows up online.[br]So basically on this red PCB where there's 0:07:53.240,0:07:59.821 the four hearts, they don't have a way of[br]making this yellow line because, or 0:07:59.821,0:08:04.580 without these small edges, because there's[br]no flat surface for them to use as a 0:08:04.580,0:08:10.790 guide. So then I got an email back from my[br]fab. They are like we can't build this the 0:08:10.790,0:08:15.230 way you wanted. So you have to add some[br]part that's flat so that we can actually 0:08:15.230,0:08:20.240 manufacture this for you which is why I[br]ended up having to add this. So it's a 0:08:20.240,0:08:22.950 really important design rule. In this case[br]it wasn't a problem because I had this 0:08:22.950,0:08:28.620 space to make it flat. But if you don't[br]design it with that in mind it might not 0:08:28.620,0:08:41.828 end up working. So then in order for that[br]extra part to be removeable I needed to do 0:08:41.828,0:08:44.589 something called adding mouse bites.[br]There's a couple of other names that these 0:08:44.589,0:08:49.949 go by but at least in Switzerland[br]everybody I know calls the mouse bites. So 0:08:49.949,0:08:52.980 basically that's this small square. And[br]this is what it looks like when you zoom 0:08:52.980,0:08:58.339 in and there's these small, or these three[br]small holes that make it very weak in that 0:08:58.339,0:09:03.470 part so you can just snap it apart and[br]break it. And this is what they look like 0:09:03.470,0:09:12.220 on the Christmas tree to break the[br]separate branches apart. So the other 0:09:12.220,0:09:16.790 thing you need to think about. You can't[br]just make things infinitely thin. You're 0:09:16.790,0:09:19.000 going to have to put the wires in[br]somewhere and you're going to have to put 0:09:19.000,0:09:24.200 the components in somewhere. And so you[br]need to think about how big those wires 0:09:24.200,0:09:32.009 need to be, how close to the edge can they[br]be and design with that in mind. So this 0:09:32.009,0:09:36.019 is the Christmas tree that I did. And this[br]side is actually, it's not the mirror 0:09:36.019,0:09:41.350 image. It's like the rotated image like if[br]you flip a pancake over a turn a book 0:09:41.350,0:09:51.199 over. So this is the backside and this is[br]the front side of each other. So when I go 0:09:51.199,0:09:55.600 and I zoom in on the center what you're[br]seeing is actually this is the backside 0:09:55.600,0:10:00.269 that would be on here. This is the[br]backside that would be over here. And what 0:10:00.269,0:10:05.180 you can see is that up here it's really[br]really tight and so you have to think 0:10:05.180,0:10:12.470 about how many wires do I kind of expect.[br]How big are these components and design so 0:10:12.470,0:10:17.480 that it really will eventually fit. And[br]sometimes you have to redesign things 0:10:17.480,0:10:24.820 because you need more wires than you[br]originally thought about. And then there's 0:10:24.820,0:10:29.529 also mechanical properties. So PCBs come[br]in different thicknesses in the case of my 0:10:29.529,0:10:34.980 Ph.D. when I built this I needed a very[br]very thin PCB because I had a very tight 0:10:34.980,0:10:41.500 restriction on this component and actually[br]all of these measurements are minimized as 0:10:41.500,0:10:48.400 much as possible for clearance and[br]manufacturability incivility. So in this 0:10:48.400,0:10:52.750 case the PCB was really really stable once[br]it was in the column. 0:10:52.750,0:10:55.695 But a number of people were not careful[br]and my collaborators... 0:10:55.695,0:10:57.820 Because this was delivered all over the[br]European Union. 0:10:57.820,0:11:01.430 A number of my collaborators were not[br]very careful with this PCB 0:11:01.430,0:11:05.960 and they would bend it or break it, which[br]made my fab even more happy with me 0:11:05.960,0:11:13.579 because basically they kept having[br]to rebuild them. So, you just need to 0:11:13.579,0:11:17.790 think about the manufacturability and like[br]once you start removing the inside how 0:11:17.790,0:11:22.089 strong will it be and will I be able to[br]bend it like paper. Because if you can do 0:11:22.089,0:11:30.529 that, it's not going to last very long. So[br]then you also just need to think about the 0:11:30.529,0:11:37.779 tolerances. And a lot of these are online.[br]So for example holes in pin headers. I 0:11:37.779,0:11:43.610 recently had a PCB that I designed and the[br]pin headers were a really good tight fit. 0:11:43.610,0:11:48.029 They basically stuck them in and they were[br]pretty much a right angle in the first 0:11:48.029,0:11:55.689 round. And then I ordered more and the[br]holes didn't fit anymore. So you need to 0:11:55.689,0:12:03.869 always allow for, you know, some tolerance[br]in your manufacturing site an error on a 0:12:03.869,0:12:09.920 bigger hole that you fill in with solder[br]at least in the artistic side then a small 0:12:09.920,0:12:16.829 hole that you have a perfect fit with.[br]Also wires near the edges can sometimes 0:12:16.829,0:12:23.939 cause problems. And that happens because[br]the tool might not be perfectly aligned. 0:12:23.939,0:12:28.139 So if you put your wires further away from[br]the edge you're going to have a more 0:12:28.139,0:12:32.999 likely chance of having a lot of really[br]good PCBs rather than difficulty with your 0:12:32.999,0:12:38.269 fab. And if you're already asking your fab[br]to do special stuff for you, you probably 0:12:38.269,0:12:47.220 don't want to make their life even harder.[br]And then tool radius. So in this first 0:12:47.220,0:12:53.879 version of the dragon fly I sometimes had[br]problems with this particular joint and 0:12:53.879,0:12:58.339 you can kind of see a blown up sort of out[br]of focus image here where you can see that 0:12:58.339,0:13:02.249 they had trouble with the tool because[br]they were using one milling tool for this 0:13:02.249,0:13:06.850 outside part. And then they had to go in[br]with a smaller tool to sort of get this 0:13:06.850,0:13:12.329 part out. And it was difficult for them.[br]So that's why in the Christmas tree I made 0:13:12.329,0:13:18.399 the fillet, so that's the curves on the[br]inner fillet, in manufacturing or and 0:13:18.399,0:13:23.580 mechanical engineering is when you have a[br]tight joint and you make a small radius 0:13:23.580,0:13:29.839 that's the size of the tool bit or larger.[br]So I made bigger ones in later designs, 0:13:29.839,0:13:37.129 for that reason. So now that you kind of[br]have a background in all the different 0:13:37.129,0:13:40.800 things you have to keep in the back of[br]your mind when you're actually going to 0:13:40.800,0:13:47.050 try and have this fabricated. Now, I'm[br]going to get to my workflow, which is what 0:13:47.050,0:13:51.949 I actually go through when I'm trying to[br]design something new. So the first thing I 0:13:51.949,0:13:55.860 do is I actually get a piece of paper and[br]a pen and I just start sketching what I 0:13:55.860,0:13:59.929 think it's going to look like. It's so[br]much faster to draw in on paper, even 0:13:59.929,0:14:05.439 though I'm really not a great artist, than[br]it is to try and draw in CAD with exact 0:14:05.439,0:14:12.009 dimensions and so on. Then I make a[br]schematic in KiCad. Schematics are 0:14:12.009,0:14:16.190 basically the the electronics, and saying[br]you know I need a resistor, I need a 0:14:16.190,0:14:22.060 capacitor and so on. Then I pick the[br]components, so that's like not just I need 0:14:22.060,0:14:26.360 a capacitor, but I need this type of[br]capacitor, that's this big, and this wide, 0:14:26.360,0:14:33.759 and this tall. And then, once I have that,[br]I now have the maximum size that all my 0:14:33.759,0:14:38.519 parts need to be, that need to fit on the[br]board to actually do something. So then I 0:14:38.519,0:14:43.839 can go in to a CAD model, which is what[br]the mechanical engineers, and the 0:14:43.839,0:14:48.559 manufacturing engineers, and the civil[br]engineers, and the architects use, to 0:14:48.559,0:14:56.709 start building the PCB outline, so that[br]electrical circuit board outline. Then I 0:14:56.709,0:15:03.939 import that model and I use the outlines[br]that I drew as the edge cuts. So that's 0:15:03.939,0:15:11.610 actually the end of where the milling tool[br]will go during the manufacturing process. 0:15:11.610,0:15:19.399 And then I placed the components where I[br]want them to be. And then I connect all 0:15:19.399,0:15:26.100 the wires how they need to be. And then I[br]optionally will panelize them, depending 0:15:26.100,0:15:29.250 on how big that PCB is going to be. So[br]that means putting more than one of the 0:15:29.250,0:15:34.300 same thing on the same board. And then ,if[br]I need to in order to have it be 0:15:34.300,0:15:39.410 manufacturable just like the heart, then I[br]have to add breakoffs, which is all those 0:15:39.410,0:15:46.269 parts that I'll eventually throw away just[br]so that they can do v-cuts and so on. So 0:15:46.269,0:15:54.100 this is me sketching what I think my[br]Christmas tree will look like. So what I 0:15:54.100,0:15:57.310 did as I started and I literally got a[br]piece of paper and I started drawing 0:15:57.310,0:16:04.389 triangles, that are the size I wanted it[br]to be. So this is 10 centimetres tall and 0:16:04.389,0:16:11.459 then each one of those small triangles is[br]5 centimetres. And then I started sort of 0:16:11.459,0:16:15.799 sketching this, trying to keep it at about[br]3 millimetres, because I've done so many 0:16:15.799,0:16:23.079 charlieplexing LED things at this point, I[br]know that if it's less than 3 millimetres, 0:16:23.079,0:16:27.839 it's going to be hard to route a lot of[br]wires. So it's a good starting point from 0:16:27.839,0:16:33.290 my side. All my components I also know[br]will be able to fit on that 3 millimetres, 0:16:33.290,0:16:36.410 except the microcontroller. So that means[br]somewhere I'm going to have to make 0:16:36.410,0:16:42.069 something bigger than that 3 centimetres[br]or 3 millimetre, 3 centimetres, sorry 0:16:42.069,0:16:47.829 that's wrong. It should be centimetres,[br]not millimetres. No, it should, yes 0:16:47.829,0:16:54.619 millimetres, sorry. Sometimes I think in[br]inches, I'm American. Laughs I haven't 0:16:54.619,0:17:00.999 quite converted. So basically I also think[br]about what it should do electrically. So 0:17:00.999,0:17:04.929 is this blinky lights, is there a motor is[br]there, what's that going to have on it? 0:17:04.929,0:17:09.280 And is it going to be 2D or 3D? And I[br]start thinking about if it's 3D, how am I 0:17:09.280,0:17:13.829 going to get ground and five volts from[br]one side to another. Do I need to get a 0:17:13.829,0:17:17.589 signal somewhere? Like is there one[br]microcontroller on this 3D object, and 0:17:17.589,0:17:23.040 therefore the branches are of the[br]Christmas tree are all going to have to 0:17:23.040,0:17:26.550 get the all the signals from the[br]microcontroller or I'm going to have 0:17:26.550,0:17:33.920 separate microcontrollers on each branch?[br]How's that gonna work? Then this is the 0:17:33.920,0:17:37.740 schematic, actually, and it's the same[br]schematic I've used for the dragon fly, 0:17:37.740,0:17:45.120 the heart, and the Christmas tree, where I[br]basically go in and I say "Okay, I have 0:17:45.120,0:17:49.180 that sketch that I drew by hand and I'm[br]going to need a capacitor that goes 0:17:49.180,0:17:52.110 between five volts and ground. I'm going[br]to need the microcontroller that's going 0:17:52.110,0:17:56.271 to tell all these LEDs what to do. And[br]because these are LEDs, I'm going to need 0:17:56.271,0:18:01.840 resistors." So I connect them all the way[br]that I want them to be and the way they 0:18:01.840,0:18:08.130 need to be to work. And then the next[br]thing I do is I actually go through and I 0:18:08.130,0:18:14.110 get on like a distributor for electronics[br]and I actually pick components. So this is 0:18:14.110,0:18:21.550 in 0603 capacitor. These are taken from[br]DigiKey. This is an ATtiny, these are 0:18:21.550,0:18:26.550 resistors, this is the LED and so on. And[br]that way, I have a physical idea of how 0:18:26.550,0:18:33.200 big these things need to be. And then[br]again footprints, so the pads that those 0:18:33.200,0:18:36.540 components are going to be soldered on are[br]actually bigger than the components 0:18:36.540,0:18:42.940 itself, logical. So I need to figure out[br]exactly how big those need to be. Because 0:18:42.940,0:18:45.610 if it's a perfect fit for the resistor[br]somewhere, that means that's not going to 0:18:45.610,0:18:49.760 be a perfect fit for the, resistor, it's[br]not going to be a perfect fit for the 0:18:49.760,0:18:55.390 pads. So I need to really think about the[br]pads. And at this point sometimes I design 0:18:55.390,0:19:02.630 new footprints. So maybe I want, instead[br]of the resistor to look like this, maybe I 0:19:02.630,0:19:08.610 want it to be a Christmas tree. So the[br]ball needs to be actually a ball, like I 0:19:08.610,0:19:12.930 want these to be the ornaments. So then I[br]just would make some silkscreen marks 0:19:12.930,0:19:21.050 around it to make it look like a ball, for[br]example. So then, I have to go ahead and 0:19:21.050,0:19:28.640 actually build the CAD model. So that[br]means I go into Fusion360, you could use 0:19:28.640,0:19:32.840 other software, I've used SolidWorks[br]before, as well. And then I start drawing 0:19:32.840,0:19:39.630 things. And these are all 3 millimeters.[br]And this is actually where the micro 0:19:39.630,0:19:43.760 controller goes, because it has to be big[br]enough for the microcontroller. And so 0:19:43.760,0:19:48.370 this was the logical place to put it. In[br]the dragonfly it's actually in the center 0:19:48.370,0:19:54.190 where the wings come together. In the[br]snowflake it's in the center as well. In 0:19:54.190,0:19:57.800 some other PCBs that might be on the stem[br]of a shamrock, because those are logical 0:19:57.800,0:20:04.800 places to be bigger. So this is a[br]snowflake that I was talking about. So 0:20:04.800,0:20:08.871 sometimes I also, and this is like[br]actually the one of my earlier PCBs, I 0:20:08.871,0:20:12.440 actually modeled the components to make[br]sure that it would make sense and it would 0:20:12.440,0:20:19.350 look OK. And I don't have the back shown.[br]But I also modeled this component. And if 0:20:19.350,0:20:23.740 you look, it's kind of a tight squeeze[br]there and I needed to make sure it would 0:20:23.740,0:20:31.920 fit. So then, once you have a CAD model[br]that you're happy with, then this is sort 0:20:31.920,0:20:36.230 of a weird step that it took me a while to[br]figure out. But I already had a lot of 0:20:36.230,0:20:44.229 experience dealing with the quirkiness of[br]machining tools and 3D software. 0:20:44.229,0:20:50.370 So, basically I export it from Fusion360[br]as a DXF, but because there's multiple 0:20:50.370,0:20:57.370 different formats that DXF can have, DXF[br]is just a two dimensional drawing format - 0:20:57.370,0:21:01.350 there's multiple forms that it can have -[br]I actually have to open it in another 0:21:01.350,0:21:06.000 software, because Fusion360 doesn't save[br]it in a format that KiCad can read. I open 0:21:06.000,0:21:09.850 it in a different free software and then[br]just save it as an R12 ASCII file, that's 0:21:09.850,0:21:15.440 a form of DXF, and then I can open it in[br]KiCad. If I don't do that what ends up 0:21:15.440,0:21:20.800 happening is only the straight lines show[br]up and some of the circles might. But none 0:21:20.800,0:21:28.050 of these complicated curves will show up[br]as edge cuts. So then I just go through, 0:21:28.050,0:21:33.261 once I have the edge cuts put on my board.[br]Because this is when I'm starting to 0:21:33.261,0:21:40.140 actually design the board. I import all of[br]the LEDs and so on that I did and the 0:21:40.140,0:21:44.550 schematic, and then I start placing them[br]where I want them to go. In some cases, I 0:21:44.550,0:21:48.940 might have, if I'm really going to be very[br]specific about where an LED needs to be, I 0:21:48.940,0:21:56.190 wasn't so much on the Christmas tree, I'll[br]also have exported the LEDs as part of the 0:21:56.190,0:22:01.260 edge cuts and I'll just delete them later.[br]And that way I know exactly where I want 0:22:01.260,0:22:08.650 that LED to be. And then I need to route[br]them. So all electrical softwares have 0:22:08.650,0:22:13.430 routing, as far as I know, that you can do[br]and it usually comes out in like a 45 0:22:13.430,0:22:23.150 degree angle or maybe 30. So often, I will[br]do it by hand. This is a different kit 0:22:23.150,0:22:27.760 that I built and I wanted the routing to[br]sort of make a heart shape in the 0:22:27.760,0:22:36.600 charlieplexed heart. And so I did it by[br]hand. The other option, it also if you do 0:22:36.600,0:22:41.410 it by hand, you are less likely to make[br]really dumb mistakes. So for example when 0:22:41.410,0:22:45.780 you use an auto router, auto routers know[br]where the components are, but they really 0:22:45.780,0:22:52.250 don't care about anything you would learn[br]in like a physics class. So they have no 0:22:52.250,0:22:57.290 problem with making an insanely long line[br]from a capacitor to a microcontroller and 0:22:57.290,0:23:04.100 you want that line to be really really[br]short because it's supposed to buffer 0:23:04.100,0:23:09.350 voltage changes and provide, like,[br]basically buffer fluctuations in the 0:23:09.350,0:23:15.270 amount of energy that microcontroller is[br]receiving from the main power source. 0:23:15.270,0:23:22.480 Because maybe more LEDs are drawing more[br]energy. But anyway, it'll make those lines 0:23:22.480,0:23:28.530 not the way they should be. So doing it by[br]hand is often better, but with some of my 0:23:28.530,0:23:34.260 designs like the Christmas tree it's just[br]not possible. Because this isn't an angle 0:23:34.260,0:23:40.490 that KiCad can do and that most software[br]can do, I actually export the file that 0:23:40.490,0:23:49.830 has all of the components on it, placed in[br]the correct location and the edge cuts, 0:23:49.830,0:23:55.240 and TopoR will go through it and it will[br]make curvy lines, by making lots of tiny 0:23:55.240,0:24:02.020 straight line segments. And one problem[br]with that is that, a lot of these auto 0:24:02.020,0:24:06.400 routing softwares have no ability to work[br]with a giant hole in the middle of the 0:24:06.400,0:24:12.520 PCB, so they'll just connect like this to[br]that, just through the hole. So that 0:24:12.520,0:24:17.090 doesn't work either. So there's a script[br]on my GitHub page. It's actually not on 0:24:17.090,0:24:21.560 there right now. I will put it up there by[br]the end of Congress. But I just didn't 0:24:21.560,0:24:27.750 have time over the holidays. And then once[br]I do that, I also need to check for stupid 0:24:27.750,0:24:32.490 electrical errors. Not because they won't[br]be connected but because sometimes you 0:24:32.490,0:24:35.930 have components that are close to another[br]component and the lines need to be very, 0:24:35.930,0:24:43.110 very short. So you might have to fix that[br]on your own. So then at that point you're 0:24:43.110,0:24:47.210 basically done, except if you want to[br]panelize. So in the case of the Christmas 0:24:47.210,0:24:56.120 tree I had 1 and I wanted to make 4. So in[br]order to make it panelize well, because 0:24:56.120,0:25:01.120 this is basically just a triangle, and I[br]needed to know how long it was and how 0:25:01.120,0:25:06.750 tall it was. And in my mind it was the[br]full 5 centimeters, but in reality, 0:25:06.750,0:25:11.890 because I had cut off this corner, it[br]wasn't five centimeters. So I took a like 0:25:11.890,0:25:15.200 marking edge, so something that the[br]manufacturing process doesn't use for 0:25:15.200,0:25:20.530 anything, and it doesn't end up in the[br]Gerber files, and I extended this line out 0:25:20.530,0:25:25.910 to where it should have ended. So it would[br]be the right shape. So then I could rotate 0:25:25.910,0:25:34.940 it and flip it and so on and have it[br]turned into this pattern. The other thing 0:25:34.940,0:25:39.190 is that I had to remove extra and[br]duplicate lines. So in the process of 0:25:39.190,0:25:44.560 making one, I needed to close all of the[br]lines. So on this mousebite there's a line 0:25:44.560,0:25:49.750 here, that actually, the arrows will show[br]it. So the blue lines or the blue arrows 0:25:49.750,0:25:54.520 show where these mouse bites are closed[br]and they're actually going to flip and 0:25:54.520,0:25:59.960 connect to each other. So I had to remove[br]them in the final panelized version over 0:25:59.960,0:26:05.362 here. So you can see it four times with[br]this edge removed. And then there were a 0:26:05.362,0:26:08.730 couple of mousebites that were close to[br]that edge so they weren't completely 0:26:08.730,0:26:11.620 closed. And it also had problems with[br]that, so I had to just replace them with 0:26:11.620,0:26:18.580 circles or close them manually. And then[br]the next step when you're panelizing is 0:26:18.580,0:26:23.800 also to add brake offs for the[br]manufacturing process. So in this case 0:26:23.800,0:26:31.730 that was these small edges because the[br]v-cuts needed the flat surface. So that is 0:26:31.730,0:26:37.160 the end of my talk. And if you have[br]questions, I'm open to questions. You can 0:26:37.160,0:26:39.660 also, if you're online and you're watching[br]this later, you can leave a comment on my 0:26:39.660,0:26:43.280 YouTube channel. I try and get back to[br]people and make videos based on their 0:26:43.280,0:26:48.160 comments. I have a Tindie page and I have[br]a webpage. And then, if you want to learn 0:26:48.160,0:26:52.300 how to solder but you don't know how, come[br]over to the hardware hacking area because 0:26:52.300,0:26:54.680 I'm going to be teaching a workshop on[br]that. 0:26:54.680,0:27:03.600 Herald: Thank you very much for this most[br]excellent talk. If you have, please a 0:27:03.600,0:27:10.030 round of applause.[br]Applause 0:27:10.030,0:27:14.290 If you have any questions, thers[br]microphones, 6, distributed through the 0:27:14.290,0:27:19.330 room. Please just walk up to them and I'll[br]point you out. Are there any questions 0:27:19.330,0:27:24.650 from the internet? No questions from the[br]internet. Are there any questions from the 0:27:24.650,0:27:32.730 audience in the Saal? Come on guys, I know[br]it's early. There is one. Please walk up 0:27:32.730,0:27:39.690 to the microphone there in the aisle.[br]Center front microphone please. 0:27:39.690,0:27:45.630 Front center microphone: Let's see if this[br]works. Sounds good. So I'm also very 0:27:45.630,0:27:49.690 fascinated of the idea of charlieplexed[br]circuits, and I'm wondering: Do you sell 0:27:49.690,0:27:53.810 any of your PCBs as kits or something?[br]Emily: Yeah, I have all of them as kits 0:27:53.810,0:27:56.200 with me. So go over to the hardware[br]hacking area. 0:27:56.200,0:28:00.430 Mic: OK, thats cool, thank you.[br]Emily: Yeah, even the ones that aren't on 0:28:00.430,0:28:05.000 Tindie. So basically anyting on my[br]webpage, tried to get all of it here. 0:28:05.000,0:28:08.610 Herald: Again, center front microphone[br]please. 0:28:08.610,0:28:14.870 Question: Yeah, hi. Why didn't you use the[br]PCB layout software to create the outline. 0:28:14.870,0:28:23.261 Emily: Because KiCad doesn't like[br]splines. And so, if i did the, so 0:28:23.261,0:28:29.280 basically PCB software is often designed[br]for straight lines or arcs. So just 0:28:29.280,0:28:35.660 circles und straight lines. To define more[br]complex shapes is significantly harder. 0:28:35.660,0:28:41.040 Also, with like standard manufacturing[br]software or standard mechanic engeineering 0:28:41.040,0:28:45.900 software. they are designed so that you[br]can parameterize things. So actually with 0:28:45.900,0:28:52.590 the snowflake or the Christmas tree in the[br]Fusion360 version, I have numbers that 0:28:52.590,0:28:58.520 say, you know, 3 milimeters. This is three[br]milimeters. So if I decide later I need it 0:28:58.520,0:29:05.820 to be 4 milimeters, I just go 4 and then[br]export it again. It's much faster. It 0:29:05.820,0:29:08.145 sounds harder, but is much faster. 0:29:08.145,0:29:10.370 Herald: Again front center microphone[br]please. 0:29:10.370,0:29:21.060 Question: Absolutely newbie. So I'm only[br]wondering if you prefer EAGLE as well? 0:29:21.060,0:29:25.570 Emily: So I've never used EAGLE.[br]And the reason, that I haven't is... 0:29:25.570,0:29:30.680 Well, there's two reasons.[br]First, right now it's only free 0:29:30.680,0:29:35.190 for smaller PCBs than the Christmas tree.[br]So I don't want to spend money because I'm 0:29:35.190,0:29:40.860 currently unemployed and I don't have that[br]kind of money. Second, my husband runs an 0:29:40.860,0:29:45.050 embedded systems company and he uses[br]KiCad. So I have a professional that lives 0:29:45.050,0:29:48.960 with me and that I can go "I don't[br]understand." and he can be like "Here is 0:29:48.960,0:29:53.310 how it works." So on that side it was[br]easier for me to use the software that was 0:29:53.310,0:29:57.650 already in my house. When I was working[br]professionally, we used a professional 0:29:57.650,0:30:02.550 software. So it's just basically I started[br]learning when EAGLE went from open source 0:30:02.550,0:30:08.970 and free to being bought by Autodesk.[br]Applause 0:30:08.970,0:30:12.960 Herald: Again center front microphone[br]please. 0:30:12.960,0:30:16.620 Question: Thanks for this interesting[br]talk. So I knew about PCB design, but the 0:30:16.620,0:30:23.050 artistic part is new. My question is, how[br]do you deal with, so I like to use Git or 0:30:23.050,0:30:28.460 some version control and with KiCad it's[br]easy. You have it if it's a XML file. But 0:30:28.460,0:30:33.690 with outer tools you have binary files. Do[br]you have any way to deal with diffs of 0:30:33.690,0:30:40.750 binary files?[br]Emily: So with most mechanical software 0:30:40.750,0:30:46.720 there is version control as well. So you,[br]like, for example in Fusion360 every time 0:30:46.720,0:30:52.800 I save it'll save the same file as version[br]1 or version 2 or version 3 or version 4. 0:30:52.800,0:30:58.560 So it't not really GitHub, but it does have[br]a way to regress backward in what you 0:30:58.560,0:31:00.560 want.[br]Mic: So you save it as version 1, version 0:31:00.560,0:31:03.280 2 or does it automatically[br]Emily: It automatically actually does it. 0:31:03.280,0:31:09.680 Every time you save it, it sort of appends[br]a new version to it. Because this is also 0:31:09.680,0:31:15.150 a problem industrially with mechanical[br]engineering designs, where mutlipe people 0:31:15.150,0:31:21.250 need to be working towards getting maybe a[br]probe to be stable. So they also have to 0:31:21.250,0:31:24.780 deal with version control.[br]Mic: Because I'm trying to do the switch 0:31:24.780,0:31:30.400 from EAGLE to KiCad, and in EAGLE I just[br]have version 1, version 200, 300, 400 0:31:30.400,0:31:40.760 Emily: Yeah, with KiCad I don't really do[br]so much version control. Yeah. I, he would 0:31:40.760,0:31:45.160 be the person to ask, because he's the[br]professional. The guy in that shirt with 0:31:45.160,0:31:50.140 the "do not panic" is really the person I end[br]up asking all of my really tough 0:31:50.140,0:31:54.500 electrical questions, too.[br]Herald: We have another question on the 0:31:54.500,0:31:58.650 front right microphone.[br]Mic: Yes, hi everybody. Thanks for the 0:31:58.650,0:32:03.460 talk. Not really a question, but just a[br]heads up. There is going to be, according 0:32:03.460,0:32:11.320 to my knowledge, a KiCad beginner[br]workshop on friday at 9 in the evening. 0:32:11.320,0:32:14.450 Just for those interested.[br]Emily: Cool. 0:32:14.450,0:32:17.430 Mic: Maybe you show up as well.[br]Laughter Emily: Maybe 0:32:17.430,0:32:20.461 Herald: Another question form the cernter[br]front microphone. 0:32:20.461,0:32:25.770 Question: To the usual PCB interested[br]person, how would you recommend 0:32:25.770,0:32:33.300 to find and select a fab?[br]Emily: For regular PCB, like if you are 0:32:33.300,0:32:39.880 just trying to make a square, I think any[br]of them will probably work. For me, like 0:32:39.880,0:32:44.840 when I was trying to do the Christmas[br]tree, I sent it to 3 different fabs. And 0:32:44.840,0:32:49.500 one of them I have a contact there,[br]because I actually visited that fab at one 0:32:49.500,0:32:57.630 point. And so that worked out. But when I,[br]acually the purple picture is from 0:32:57.630,0:33:03.900 OSH Park, and they say somewhere, that[br]they don't deal with internal holes. 0:33:03.900,0:33:12.120 Yeah, so I would just contact people. Just[br]email people if you have something weird. 0:33:12.120,0:33:16.160 Email people and see if they can do it.[br]Because most people who have a PCB fab 0:33:16.160,0:33:20.750 want money and will work for money.[br]Laughter 0:33:20.750,0:33:24.135 Herald: Next question again center front[br]microphone, please. 0:33:24.135,0:33:27.573 Question: Yeah. Very, very specific to[br]your talk. 0:33:27.573,0:33:34.050 You said that the DXF format[br]that Fusion puts out is not directly 0:33:34.050,0:33:40.390 readable, without loss, by KiCad. I missed[br]the software you use to convert it. 0:33:40.390,0:33:45.490 Emily: Ah, it's DraftSight. So... 0:33:45.490,0:33:47.420 ... this ... 0:33:47.420,0:33:50.410 this slide. So thats how it's spelled. 0:33:50.410,0:33:51.650 Q: I see, thanks. 0:33:51.650,0:33:54.430 A: Yeah, and in that software they have,[br]I don't know, 0:33:54.430,0:33:59.650 maybe 20 different types of DXF and[br]other formats you can save things in. 0:33:59.650,0:34:02.100 So when I worked for the Swiss watch[br]industry 0:34:02.100,0:34:07.020 we would have to take all our files and[br]save it in the right one from customers. 0:34:07.020,0:34:09.178 Herald: Next question, center front[br]microphone 0:34:09.178,0:34:12.008 Question: Hey everybody.[br]If I wanted to find a lot of people 0:34:12.008,0:34:15.118 who already know KiCad,[br]where would be the best place to look? 0:34:15.118,0:34:17.300 [br]Emily: An electrical 0:34:17.300,0:34:19.790 Herald: Probably the workshop.[br]Emily: Yeah. 0:34:19.790,0:34:21.125 Question: Well it's for beginners. 0:34:21.125,0:34:23.510 I'm talking about people who already[br]know KiCad. It's like, 0:34:23.510,0:34:26.820 is there like one main discussion[br]group in Usenet or something like 0:34:26.820,0:34:30.079 central point on the internet to[br]find those people? 0:34:30.079,0:34:33.770 Emily: Yeah.[br]Herald: The audience says: "Go to IRC. 0:34:33.770,0:34:36.239 There should be a KiCad channel."[br]Emily: Again, I 0:34:36.239,0:34:38.379 Herald: Probably on freenode.[br]Emily: Again, like he mentioned, I was a 0:34:38.379,0:34:41.630 broken person, who couldn't leave my[br]appartment for actually it was a very, 0:34:41.630,0:34:47.919 very long time. But, he was my answer for[br]everything. I was just like "I don't 0:34:47.919,0:34:54.050 understand after an hour. Can you fix[br]it?", he's like "OK". So I'm not 0:34:54.050,0:34:57.180 knowledgeable on that.[br]Herald: Next question from our signal 0:34:57.180,0:35:00.585 angel handling the watchers at home. 0:35:00.585,0:35:06.960 microphone issues 0:35:06.960,0:35:19.935 Emily: Thanks. 0:35:19.935,0:35:22.560 Herald: Next question center front[br]microphone. 0:35:22.560,0:35:28.570 Question: Hi, thanks for your talk. I just[br]have question about the mousebites. 0:35:28.570,0:35:34.040 How do you convert them from the[br]edgecut format to drilling, actually? 0:35:34.040,0:35:39.700 Answer: So, I just leave them as edgecuts,[br]honestly, and they magically work. 0:35:39.700,0:35:46.200 Mic: OK, not the answer I expected.[br]Thanks. 0:35:46.200,0:35:51.700 Herald: Are there any more questions?[br]Last call for questions. 0:35:51.700,0:35:54.880 No, doesn't look like it.[br]Well please give Emily Hammes 0:35:54.880,0:35:57.375 a nice round of applause[br]for her excellent talk. 0:35:57.375,0:36:06.770 Applause 0:36:06.770,0:36:11.430 Emily: Yep, and if you are watching[br]online, not during congress 0:36:11.430,0:36:13.335 you can contact me that way. 0:36:13.335,0:36:18.252 postroll music 0:36:18.252,0:36:38.000 subtitles created by c3subtitles.de[br]in the year 2019. Join, and help us!