Dragon Hack 2019: For non-geeks. Dragon Hack is a hackathon, an event where you work on a project with your team for 24h. It usually contains no sleep. After 24h, you present your project to others and maybe win a prize.
After three years I’m always amazed how well our team operates no matter the fact that we don’t know till last minute what we’ll be making at the hackathon :) Most of the time we don’t really have a clue what we’re doing so Google is our best friend. We learn through the hackathon what we need. The only thing that’s crystal clear is in what area each team member will be googling in:
The best part is that none of the team members have any formal education in engineering. We are physicists and learn things as we go. Since this year’s team had a software-hardware ratio 1-3 our ideas were as hardware as heavy as possible. Not sure how good that was :)
We started our hackathon with a nice lunch. We had a rough idea that we’ll have a car, elevator and a website. But the rest had to be figured out. After a heated discussion, we settled on building a car (with a lot of sensors). You control the car via the web site so you can explore an area dangerous to humans. The electric car is green and expandable compared to humans. But the full system had to contain: blockchain, a car, an elevator on a car, real-time video stream, sensors (for: temperature, magnetic field, pressure, humidity, position), obstacle and a web site with some server as back end. Oh and we wanted to build sensor units that we user can fire around on demand from the web site.
Battle plan was glorious. The result was well: Duck taped and hacked together.
As usual, we had plenty of electronics and tools with us. But there’s always something missing . So after we picked the last missing components from the hardware corner, we started hacking. Tadej on the web site, Ziga on the live video stream, Rok on building first car prototype and I tried to figure out how we can write our own blockchain code.
As usual, things didn’t work as expected. Raspberry Pi wasn’t recognizing a sensor module. After a few failed attempts. We said OK before we give up, let’s install a new operating system. Maybe it will solve the problem. And it did. Duh . After the sensor module worked, I hacked together the data taking code. Yeah, that was the first code I wrote for any hackathon till now :). At least the first code that my teammates allowed me to push to production . Rok finished the first car prototype.
After my first coding session, I started building the elevator module. Then we realized that the car doesn’t move if we add the elevator parts on it. OK, we’ll have a static elevator :) Server, and the web site went up without a problem. Courtesy of Tadej.
At some point, Ziga and Tadej managed to get the live video stream running (from the Raspberry Pi to web site). Not Netflix quality but it was a first small win. After all, in all previous hackathons, we tried getting the stream to work and well failed :(
Then Rok helped me draw the CAD models for the parts we needed to 3D print for the elevator. The drawing was quite fun because we both knew something about 3D modeling but not much. So I clicked around, and Rok occasionally shouted hey do that. After 1h of random collaborative clicking, we had our 3D models ready to print. Hardware corner guys helped us out, and the print went into production. 4h for the first piece. OK, prints we’ll be finished by one in the morning.
After that, I implemented some cosmetic details to the sensor data taking the code. I went home at 1:00 to get some sleep. My teammates stayed up a bit longer but then also took a nap. We usually try to get a few hours of sleep during every hackathon. Helps a hell of a lot. Besides, we have to deal with hundreds of bugs. If we are sleepy, those bugs multiply even faster.
We were back up and running at 6:30 with 5:30 hours to go. Ziga proceeded his work on the ballistic module, Rok on the wirelessly controlled Arduino car, Tadej kept squashing the infinite amount of bugs on the website, and I fixed a part of the data taking code.
At 8:30 the hackathon hardware shop opened, and I got the last 3D printed parts. I started assembling the elevator and managed to get the elevator to this stage:
Amongst drilling holes assembly contained heating up barrings with the heat gun and sliding them into the 3D printer plastic. It’s pretty cool if you heat up the baring to 300 degrees it slides into the ABS plastic like a knife through butter. Just make sure to use clamps, so you don’t end up with well-done fingers. Thanks, hardware corner guys for all your help whoever you were. Without your tips and help elevator prototype wouldn’t look like it did ;)
At some point, I went to pick up some tools from our team desk. After a quick chat with my team, I realized that things were not working as we hoped. I did sense slight panic in my teammates voices before. But at 10:30, I knew I had to scrub the elevator idea and go help with the other hacks, or we might as well have nothing. For the next hour, I helped with fixing and causing bugs. I helped Tadej with integrating the blockchain into our web site. We used a blockchain because well it’s fancy and because we wanted a reliable storage format for measured data from our robot. We didn’t want anyone to corrupt out temperature measurements
Then the last 15min were even crazier. Nothing worked. The web server was crashing, Raspberry Pi wasn’t recognizing the sensor module or didn’t start at all, car motors didn’t work, the Arduino controlling the car didn’t work (loose wires), … The usual. To get through we had to support each other. Teamwork was now essential. Conversations got heated. But somehow we managed to fix everything :) I have to say it. My teammates did the lion share on the debugging part. I mostly helped a bit there and then.
On the website part I don’t even know what we had :) I know that it looked amazing as always.
git repo of code on the link. The ballistic module was a proper hackathon product. Duck tape all over the place :) Long story short you press a button on the web page, and that little blob in the right bottom corner flies away.
Car at the end had a working sensor system, real-time video stream, and drive system controlled from the web site. It looks kind of cute:
Oh, there was blockchain running in the background of the server. Just cause we could. We didn’t really ask ourselves if we should
My role in the hackathons is always kind of funny. Because these days I spend most of my time programming web pages, doing data science and physics. But at hackathons, I always do some sort of hardware. This year I coded a bit since it was the first year that I had some useful programming knowledge. I think I fixed my fair share of bugs this year, but I’ll let my team be the judge of my contributions ;)
As a team, we had conflicts. But we always quickly resolved them. After all, we are there to have fun. Although I’m too serious sometimes :) This year we went way too crazy on hardware. Well, we had too many side projects in play through the 24h. Yeah if you counted, we worked on 9 different projects. We finished 8 but didn’t manage to polish our idea well enough at the end. For me, that was the first hackathon where we didn’t manage to score a prize but also a hackathon where I would dare to say that I learned the most. So my goal was achieved :) I had fun. Mostly thanks to my amazing teammates. Hope we do this again next year guys