MediBot: My PennApps XIV Experience

After eight prior rejections from PennApps, I had to write about it.

Sameer Khoja
5 min readSep 28, 2016

For my first ever PennApps, I wanted to make something unlike any other hack I’ve made. I’ve always stuck to my comfort zone and worked on software projects (cross-platform web apps, you know, the easy stuff). This time, I wanted to go into something hard (literally). I sought to venture into the hardware world and physically build something.

Fortunately, the Cornell->Penn bus had some awesome people who could help make that happen. I met Alice, a junior in Electrical and Computer Engineering, and George, a sophomore studying CS. Upon arriving, I ran into my high school buddy Adil and brought him onboard as well. Team formation: complete.

The Idea (8pm-12am)

The idea phase of a hackathon, quite frankly, is very underrated. In my previous experience, people will want to come up with an idea without thinking through what the pitch might be like, and just get into coding. While coding is vital to the hackathon process, it is only one of many steps. But there are lots of posts out there about Hackathon 101-ing, so I won’t get too much into that.

Long story short, we spent our entire Friday evening brainstorming what exactly we wanted to make. While hackers around us were nose-deep into code, had some nothing but some notes on a piece of paper. We found ourselves mired in arguments over ideas, and eventually we fell back to square 1 over and over again. Along the way, we made certain decisions: our hack category was going to be health, and that we had an Arduino and an Amazon Echo Dot at our disposal. With these constants in mind, we narrowed down our ideas until the following concept arose: MediBot, a voice-controlled delivery bot for patients and doctors to use in hospitals. As we all nodded our heads in agreement, I knew that all the time spent on brainstorming was worth it. Time to hack!

MediBot Dashboard Concept

Assembling the Parts (12am to 12am) (Yes, 24 hours)

In the world of software, the only issue you might have while hacking is the WiFi connection. Hardware is a challenge it it of itself. You have to wait for the 3D printing queue, get back in line when the makerbot messes up, and then hopefully get your print if you’re lucky. However, first things first: we had to design the parts needed for our bot. Enter MakerBot!

The Maker Bot used to generate our parts (left), Alice designing parts in AutoCad (right).

While Alice and Adil were busy handling the 3D printing, George and I played around with the Bluetooth Shield and explored the various features and capabilities. We started off with the “Hello World” equivalent for Arduino (a flashing LED) and after a ton of wiring issues and configuration mess enough we finally hooked up the Bluetooth successfully. My first foray into hardware was quite an enlightening experience…

Almost there…just one more step…success!!

Soon enough, the time for fun and games was over. With about 8 hours to spare, we reconvened and proceeded to hack the night away.

The Last Stretch (12am to 8am)

Work in Progress!

Alice, our hardware guru, really pulled through in these crucial eight hours. She put every ounce of effort to piece the parts together and bring MediBot to life. Of course, every possible thing that could go wrong went wrong in some capacity, but we managed to tackle each problem one step at a time. Whether it be a lack of supplies or an Arduino code malfunction, we kept calm and put our over-caffeinated brains to use. In these final hours, I really began to see the passion and hunger in my teammates. We were so invested and convinced that we could make something impactful, and that alone was our catalyst for work throughout the weekend.

George and I took on the task of integrating Amazon Echo Dot as our voice-controlling technology. As it turns out, registering intents on the Dot is quite a simple task. All one needs to do is define the intent, write in a few sample commands, and let Alexa learn the rest. In no time, we were telling MediBot to send tissue samples and Alexa sent the proper request to MediBot with no issues.

At sometime around 6am on Sunday morning, our robot’s line sensing technology began to work as expected (essentially, MediBot will follow lines in hospitals as a guide to go from one room to the next). You can check out a video of MediBot in action here!

As we made our pitch to sponsors and judges, we were able to let them be the voice that controls MediBot. The interactive aspect of our hack as a huge plus, and pretty much every person who stopped by left with a smile.

MediBot at work (left), our team (right).

In the end, we were fortunate to win the best Embedded Hack at PennApps XIV, and the effort was well worth it.

Lessons learned? There’s always going to be more to learn, every team member counts, and there’s no such thing as too much Red Bull.

Also, if you liked the article, please feel free to drop a comment and hit the❤️button below. Feedback is always appreciated! If you have any questions about my experience, or want to know more about MediBot, you can connect with me via Github or email.

--

--

Sameer Khoja

Software Engineer @google. Alum @Cornell. Previously @google @linkedin