Bluetooth communication; Custom PCB
Jessica Yin, Michelle Kyin
Software Dev + Hardware Prototype
With EGG, you can: Know the current time; Set a timer via Bluetooth with your phone and it will vibrate to notify you; Shake it to send a meme to your friend on FB Messenger. For this project, we challenged ourselves to use bluetooth communication, design/assemble/program our own custom PCB, and make an entirely wireless and self-contained device.
We took on the challenge of making our own custom PCB. The custom PCB integrates adafruit Feather 32u4 microcontroller, a Real Time Clock Module,a LiPo battery and its microUSB charger.
Because this is our first time making a custom PCB and the PCB has no serial monitor, which will make debugging difficult, we built everything on breadboards first.
We also challenged ourselves to use bluetooth control instead of communicating via a computer. This is also our first time building a bluetooth application. With Adafruit IO's online database and the mobile application's MQTT protocal, we are able to send and receive data. We then used IFTTT to create applications such as setting an alarm and sending messages.
Overall, the communication flow between different parts look like this. We had to make sure that different protocols can work together (I2C and SPI).
In order to program the PCB, we need to burn the arduino bootloader onto the chip via ISP. We used Sparkfun Pocket AVR Programmer + Arduino IDE to burn bootloader and upload Arduino sketches.