This is my very first development board project! Woohoo! I know right? After shrinking about 15k worth of equipment to a custom board the size of a credit card that can read your muscle signals, to winning TechCrunch Disrupt's 2015 Hackathon with an IoT device that tells my Dad if his stove is still on, you'd think this kind of stuff is old hat for me.
I've made various circuit boards in the past, but they've all been bread boarded & hand soldered. When I made my SEMG wearable pod, while I created the circuit design, support electronics, and software, I had my buddy take care of the PCB lay out and soldering.
I used to roll my own hand soldered, slag jumpered bread boards as components. Kinda like these.
It looks janky as hell, right? But guess what ! It still worked. Mostly. OK, not always, but the point is, that's my usual progression when it comes to coming up with circuits. And that had a lot of its own issues like accidental shorts and $#!T. Which is why every time I look at someone's project, and I see these gorgeous, well laid out, manufactured, smd soldered component boards, I get a little envious. Well, I ain't gonna envy no more, because I'm gonna try my hand at it.
I think it's time I broke my PCB making cherry, so what better way to do that then by making my own development board? Besides, I've setup, wired, and rewired my own custom circuits so many times - since what I need isn't out there - that it makes sense for me to do this. And who knows, someone else out there might need my board.
So why a development board? Well, as you can tell from the photo above, I have a thing for making my own custom circuitry. A lot of what I do involves body sensing, and now there's IoT in the mix. Which makes for some interesting requirements.
But I don't want to make yet another generic arduino esque board in the millieu. This one will be wearable, mesh capable, and talks to the cloud. And the real purpose of this is it's educational and it serves as the foundation for other projects, like helping my researcher friend studying rett syndrome, a rare, neurological degenerative disorder. This board also, weirdly, doesn't exist, so I'm making it because I need it.
So the first thing I do whenever I start a new project, is I figure out what it needs to do first. These are my requirements.
- It needs to be wifi/bluetooth capable. Since I'm very well versed in Arduino's java like syntax, and C++, I went with Espressif's offerings, the ESP8266 and ESP32. Since the ESP32 isn't yet mature Arduino wise for most people, I'm gonna start first with the ESP8266.
- The problem with the ESP8266 is it has only one analog port. Which is fine for all the freaks out there that are into blinky lights, because for blinky lights all you need is GPIO, and most of the time you only need one. But I do a lot of analog sensing. I'm also not into blinky lights (I'm into FIRE. Yes, I'm that kind of freak.)
So I'm adding an ADC chip.
- I'm tired of using my USB to TTL converter port and loose wires to the ESP8266, so I'm incorporating a USB to TTL converter chip, like the CP2104. Which means it'll have a straight up micro USB port. Hell yes!
- I want this to be wearable. If you look at my SEMG sensor, it's something you wear on your clothing. So I'm looking at putting it into a wearable, and sewable formfactor.
- It needs to be powered by 3.3V, with as little power requirements as possible.
- Have a usb charger control circuit that can connect to a lithium ion battery pack, because that's also been a pain in the ass to wire up every freaking time.
- Unlike the lilypad, which is also my inspiration, I'm not a fan of sewing wires into clothing. Mainly because I suck at sewing, though you wouldn't know it when you look at some of my wearables (Thanks Mom!!!). So, it's going to have cable pins with locks on them.
- Use a thin lithium ion battery that's smaller than a credit card, and carries at least 1000mAh
- Everything has to fit into case that's about the size of a credit card, and maybe 5X...