 Thank you very much for joining. My name is Lonon Avie and I'm a software engineer. I work for a consultancy company as a software engineer called Consulco Group. I see some familiar faces that we have been working together on software projects. But what I do as a hobby, and the keyword is a hobby, is that I make open source hardware because I'm an open source enthusiast, and I'm really excited about the idea to combine free and open source software with open source hardware. Thank you very much for the opportunity to speak here, Javier. This talk is focusing on other topics that have not been covered on the previous talk. Those of you who were here in the previous talk are already familiar with some things, I'll try to carry on. Just before we start, how many of you are professional hardware engineers? Okay, guys, please don't throw any stones. All right. How many of you are software engineers who are involved with software? Okay, guys. Cool. So the agenda is basically to show you how I'm combining free and open source software with open source hardware, how I'm doing prototyping, how I'm doing low volume manufacturing, how I'm trying to do this as a community. I'll show you some of my epic failures. So I hope it's going to be fun. All right. So open source hardware, it's pretty much the same idea as open source software. The difference is that we speak about physical objects. So the idea is that we should publish our schematics and exact instructions how to reproduce the hardware so that other people can study, modify it, make third-party product based on it, or even sell it. To ensure that the open source hardware project is really open, there are several components. Of course, it's the hardware, the software, the documentation, and the branding. How many of you are familiar with the open source hardware movement? Okay. Perfect. I should have skipped that slide, right? So one of the major benefits of open source hardware is sharing the knowledge. This is something key for me. It also gives anyone confidence that this hardware won't disappear because companies disappears. Sometimes people just stop doing something because it's no longer interesting. But when it's open source, you can grab it, you can modify it, you can do it on your own. It also keeps the price is low because when it's open source, you know what is the bill of materials and what is the cost to manufacture it. So there are a bunch of open source hardware licenses. I'm not a lawyer, so I'm not going to do a deep dive. But when you make an open source hardware project, you can apply sometimes software licenses like the general public license, but in general, there are more convenient licenses. And as far as I know, there was a talk yesterday about the open hardware license and its second version. If you haven't been there, you probably can see the videos. There are some viral licenses and permissive licenses. I am an open source enthusiast, so I like for my hobby projects, I like the viral licenses. This means that whatever is done with this project, it should be open as well. And one of the things that is a problem in the open source hardware movement is that there are a lot of companies and individuals claiming that they're making open source hardware by just releasing PDF schematics, which is not fair because with PDF schematics, we cannot make a PCB actually out of it. Because of this huge problem in the industry and the community, a few years ago, there was an association was established in the US. It's called Open Source Hardware Association or they call it OSHWA. So this association has two main purposes. One of it is to make an annual conference and the other one is to keep a certification directory, which pretty much certifies an open source hardware. They are checking if the submitted project is really open source hardware and they're putting it in directory. The benefit is that you can go there, you can check and see, yes, this is really open source. Of course, there are a lot of open source hardware projects that are entirely open source hardware but haven't certified. So if you are making such kind of a project, please go and have a look at the OSHWA website because the certification is free and this way we have at the single place a directory with a lot of projects. So who's using open source hardware? How many of you are using open source hardware? Okay, fair amount of number. Open source hardware is not something new. It's something that has been already adopted by the industry. There are a lot of companies. This is just a small list of companies that are making open source hardware. So open source hardware, although I'm doing it just for a hobby, it's not just a hobby thing anymore. There are a lot of companies making professional open source hardware, sharing the knowledge and sharing all the source code files. When you're making a hardware, there's some significant differences between software and hardware. First of all, hardware is expensive. When you do software, it's easy to compile it, to give it a try or at least easier compared to hardware. Very often you can't build the hardware at your home. In the previous presentation, you saw that there are some options, but if you are doing a PCB with multiple layers, it's no goal to do it at home, right? So making hardware prototypes takes time because most of the times, you need to go to an external company to place an order, to give them the Gerber files. They'll return you the PCB and so on. Of course, there are some simulations, but it takes time to test the real hardware. So fixing bugs, getting feedback from the community is again something challenging because you need a hardware to give it a try. There are a couple of philosophical questions that are important for me. So first of all, is it worth making open source hardware if you are using a proprietary software? And in my opinion, no, not at all. That's why I tend to use only free and open source software to create open source hardware because it's a problem if someone wants to study or to modify this design and if he has to pay a gazillion of dollars for a license to open the open source hardware files. At least this is the way I think. Because of this, I'm focused on using free and open source software. In the previous presentation, you saw in details most of the projects that are listed here. This is really a small list. Fritz Singh, there was a talk about it and Kikad and Gada was mentioned in the previous talk. I'm not going to reveal any details about this project and picking up a tool for designing PCBs, a bit of a religion. So I don't want you to convert your religion if you are using something else. But if you are a software engineer and the main goal of this topic is to work software engineers because I want to show you guys that nowadays it's easier to make hardware. If you haven't started with a particular tool, my personal recommendation is Kikad. That's what I'm using. And for the cases, because I'm a developer, I use OpenSCAD, because you write source code and you have the shape. It's easier for me rather than navigating through a lot of menus. So how many of you are using Kikad? Okay, and how many of you are developing Kikad? No developers? Okay, cool. All right, Kikad is, first of all, it's a free and open source software that runs on multiple platforms. So no matter if you are a Linux user or a Mac user or a Windows user, you can use it. I'm particularly using it on Ubuntu. Most of my machines are with Ubuntu. It has up to three 32 copper layers, which for me means like endless layers. But earlier today, I've heard that there are people wanting to use even more layers. For the hobby boards that I'm doing, there are just two layers, or four layers maximum. So here, the things that I'm sharing for this really simple project that don't require a lot of layers. Kikad is already adopted by the industry, and why have I started using Kikad? Well, the answer is super simple. Because of this company, Olimax, I live in Povey, Bulgaria. It's a small city, but I have the honor to have really nice neighbors. And Olimax switched from Ego to Kikad, and they are making a lot of free workshops for our local community where I started how to get started with Kikad. I got inspired. I started designing my own boards. So this is my first board. It is an add-on board for Raspberry Pi. Two years ago, I reviewed some details about it. Special thanks to my friend, Rangel. I think he's around here, yeah, over there. Who helped me. At the beginning, there are really nice tutorials about Kikad, but it's always good if you have a friend who can give you some hints. And there were super simple problems that I was facing just because I didn't have the skills, but the documentation is quite good, actually. After I had one board, it was easy. It's way easier to make more boards. So I have made a few add-on boards for Raspberry Pi. They're called hats and fats. I also make some Internet of Things boards with ESP8266. Again, all these boards are in the hobby sector and pretty much I made them for my own needs for home automation. I'm doing an after-down low-volume manufacturing. So a few recommendations if you're designing a PCB for first time. How many of you haven't designed a PCB yet? Okay, guys, it's easy. If I can do it, you can do it too. I'll show you some of my epic fails after that so you can laugh at me. So a few recommendations. Before you start, have in mind where are you going to make your prototypes and comply with the minimal requirements of the PCB manufacturing? Read the datasheet of your components. That's important. Could save you time after that. I have made this mistake not to read them carefully. Keep in mind the assembly while you're designing the board. For example, when I'm doing it, since these boards are for hobby and the first time when I'm assembling the prototype, I'm doing it on my own with soldering iron and I'm not very skilled because I'm a software person. So this is something that you should consider while designing the board, especially if it's for a hobby purpose. Using a version control system is something really useful, even for a hardware project. So it's not an excuse not to use a version control system because it's hardware. Okay, so PCB prototyping, once you're done with the PCB, you can move on to making either a prototype, first time it's better to make a prototype and after that to make a low volume manufacturing. So this is a list of a lot of companies that are providing these services. Oshpark are making boards in the US. It's super easy to get started and this is from their website. So basically when you have an open source project, that's for example, my projects are in GitHub. You'll see the links after that. You can download the project, you can upload directly the KICAD files or just export the Gerber files and upload it. They're making this nice looking graphics and they're making three prototype boards which is really convenient. Recently, I've heard about this option for prototyping. I think someone in the room, okay, over there. I haven't used this service yet, but I'm planning to do it. So it's in Europe, I'm also based in Europe so probably it will be more convenient in terms of shipping. It's good to, if you are based in Europe and I believe most of you are based in Europe, it's also convenient to check if there are any local factories around you that provide the same services. For example, in my city, although it's not a super big city or whatever, there are two companies that are providing professional PCB manufacturing services. I'm not sharing any links here because there are websites in Bulgaria so you might have some problems with the communication but most probably where you live around you, there might be a PCB manufacturing service. And alternatives from China, there is a huge variety of companies that are making a really high quality boards that are very affordable prices so you can go with them as well for both prototyping and low-volume manufacturing. So most of the talks that I have attended, people share success stories and that's really exciting but sometimes some people like me make really stupid mistakes and I'm really ashamed about those things but it's part of life, right? That's why I told you, when you're developing software, it's the fail is easy. You can still, the fail is easy and cheap to fix it most of the times. Here the fail is also easy but it takes some amount of time to make the new prototype. So for example, here I'm using one very popular and cheap microcontroller Wi-Fi with Wi-Fi. It's ESP8266 and here I have tracks below the antenna of the Wi-Fi. Not a good idea, but it's open source project so somebody told me in Twitter, hey, what you doing? So it was fixed in the next version. This was the first prototype so I didn't understand properly the data sheet. You see some hardware patches. Over here, this is a manufacturing bag. So something happened to this board in the process of manufacturing so it's important to test, it's like a zebra. And here the board is totally fine but the problem is that the suke screen was messed up including the logo here and the signs here. So yeah, epic fails happen especially if you're a software engineer designing hardware. Sometimes it could be a little bit annoying but yeah, this happens so don't worry. As I told you, if I'm doing it probably you can do it as well. I'm not good at it but with the time you get used and understand how to make it better. A few tips for wall volume manufacturing because those hobby projects after making a prototype with a few boards you might want to make like a hundred boards or something like this and manufacturing a hundred boards is completely different from manufacturing like a million boards. A few things, those of you who are hardware engineers are already familiar with this but the price depends on the PCB size, that's obvious. So then the PCB size depends on the minimum rectangle in which you can fit your board. Just a few silly examples over here. After that several boards are grouped together into a panel. This is how a bunch of my boards that are already almost assembled are grouped together on a bunch of panels and keep in mind that assembly could be more difficult and expensive than the PCB. At the moment there are so many affordable services for making prototypes and making boards but sometimes the assembly is a problem and a problem that is expensive to solve. So keep in mind this while you're designing and picking up the services that you're gonna use. So it's the standard regulations. Here you can do hand soldering of surface mount devices. That's okay for prototyping if they're not too small and you have the good skills to do it but in general it's better to use a stencil or soldering paste and a reflow oven. The best practice is if you can find a local company that can do this for you so it could be done easily. Alternatively, you can do it from Chinese companies that are providing this as a service. So pick and place machines could be difficult to set up. It could be an expensive service if you have a small board. So it's an option to use a stencil and to put manually the SMD components if you are doing really a low volume manufacturing. As I told you, it's if possible using a local manufacturing manufacturers is better. Of course, most of the time it's more expensive rather than doing it in China but it has some additional advantages. For example, doing a better QA and you don't have the problems with the shipping or the Chinese New Year. So one of the bonus things is that you can put the name of your city there like for me, probably Bulgaria, which is really awesome because it's something that's really done there. So once you're ready with your prototype and since making a hardware requires an open source hardware with a proper pre and open source software you most probably you would like to share this with the community and most of the times it's not an option to ask people to go there and to replicate your PCBs. This way it's going to be more expensive. Therefore, they're good crowdfunding opportunities where I have used some of them but they provide you the option to do a crowdfunding campaign in a reasonable price so that you can do a low volume manufacturing of this and spread it around the community. I'm sure you already know Kickstarter and Indiegogo but there is another website, CrowdSupply I have been working with them for my hobby projects in the past, I don't know, maybe a year. It was recommended to me by a friend, Philip Kovale. I contacted them, CrowdSupply is based in Portland, Oregon and as you can see from a screenshot on their website it's specialized for electronics. You can see here, this is my project and the project over there is Thuneven. So it's a good crowdfunding platform for these type of hobby small projects when you have the need to fund low volume manufacturing. Other options are, this is interesting, I've never used it but it's something interesting groups get, the idea there is that if you need to have like a hundred units of something you can find people that are having the same need and place an order together and if you just have a few units that are done and you wanna spread it around you can use Tindy, it's a marketplace for maker-made products. Can you publish it simultaneously? It's a business question, so it depends on the contract. So the question was, can you publish simultaneously in all these crowdfunding options? It's a complex answer, for CrowdSupply while the campaign is running, I think you don't have the right to publish it in order. So we have just a few minutes left so I would like to share with you some community things. In my opinion, community matters most. So keeping the hardware, the software and the documentation, the documentation is really important, it's really annoying to write documentation but it's really important to have it. So keeping everything together in public repositories is a really good thing to do. So using popular services like Git and GitHub makes it easy for other people to contribute. If you start an open source project, no matter if it's a software hardware and if you decide to use Mercurio or SVN, probably it would be harder for other people to make contributions back. So like it or not, Git and GitHub are nowadays pretty much widely used and popular in the community so it's easier to attract other people. Once again, excellent documentation is always an advantage. It's important to contact with bloggers to spread around the word for your projects. This way you'll meet other people with similar interests and they'll provide you the feedback. Of course, everyone likes step-by-step tutorials especially if they work. So publishing them in YouTube and Instructables in Hackaday and Huxer helps a lot to the project and gathering the community. Recommendations, I've already mentioned this. Once again, use popular systems that are de facto standards in the community like Git and GitHub. When you get a GitHub pull request, try to provide or at least what I'm trying to do is to provide feedback as soon as possible. It goes for both software and hardware. Over here, this is the contributors of one project that I did. So it's an open source hardware project for controlling a 12-volt RGB LED. We're using this Wi-Fi microcontroller ESP8266 and the firmware is an Arduino sketch that is also open source. And actually a few people who have these boards contributed back and it's fantastic when someone in his spare time contributes back to your project. That's why I'm trying, when I have a contribution, I try to reply as soon as possible and to be very respectful. As a software developer, I have been in this situation where I'm making a GitHub pull request and getting feedback one year later, which is really annoying if I have done this during the weekend. So I try to avoid this. So hardware improvements are more difficult to be made compared to software because when you make a hardware improvement, you have to test it. And when you have hardware, the proper way to test it is to manufacture the hardware. So based on my experience, a lot of people are actually contributing back but they're contributing back ideas. Like I've mentioned my epic fail about the tracks under the Wi-Fi, you remember that, right? So when somebody says, hey, rotate it or somebody says do it this way, what you can do if you're using Git? How many of you are using Git? All right, perfect. So you know these tags like in the Linux kernel. So you can say suggested by. And for example, Wazir is a friend of mine, he's over there. So he suggested do it this way and here's what I did. I did it this way and I put it suggested by. This way you are paying the credit to the community for giving you the idea. And the best thing is that since it's open source hardware, people could either fork it or make design based on this. And here are a couple of, I think success stories for other hobby projects. So this one here is an ESP board that was inspired by my light controller. And Nicholas Vion, I have never met him. He's in France with exchanged emails. He did this in, he got inspired. He started with Kikad. He made his design. Is he in the room actually? Probably no. Okay, so this is a success story. How actually sharing the Kikad files in GitHub helps because other people can do the same and share back what they have done. It's the boards that I designed are super simple. Of course the forks are also simple, but it's a good way to show actually this works not only for software, but for hardware as well. And here is another board. This is my first board designed with that I have designed and my friend Wazir forked it and he added a relay. He wanted a relay so badly. He asked me, put a relay. I said, no, I'm not putting a relay there. So what he did was to fork it to modify it. Actually, it looks better than my board. The routing is better. For my first board, I use the outer router. This one is done, I think on hand. So another good example, how you can modify the hardware and keep it open source. So I think we're running late. So few conclusions. Obviously the open source hardware movement is getting some traction. If you haven't joined it, join it. There are high quality tools, free and open source high quality tools so that you can design your boards for free. And there are a lot of PCB manufacturing services which you can use to make your designs a real physical project. And remember, community always matters. Thank you very much. A few useful links for a couple of quick questions. Okay. So you could add me as well to your list of inspired projects because I actually took your schematic for the light controller and just amended the ability to power the West Korea Pi over the same power supply as the LSD. Okay. So I have to repeat the question. It's actually not a question, it's a command. I think there is another person that we can add to the list of people that have made an open source hardware based on what you see. Thank you very much. I'll do it. Any questions? Okay. Thank you very much. Thank you.