Patrick’s Status Report for 3/7

This week I spent significant time designing and implementing a first draft of the RPi software. I reasoned that on the Dawggles themselves, we would want 5 threads. The main thread will initialize our Shared Class, Button GPIO, and our camera client thread. The Shared Class will essentially carry everything relevant to the Dawggles, including the phone ip address, goggle_state, gps and translation data, the current picture, the current display index, and several other things that will be used by the other threads. The second and third threads are the button and the camera threads, which both essentially wait for an action and then either signal a callback function or send the image to the phone’s IP. The fourth thread is the server thread, which runs a websocket to continuously receive the gps and translation info from the iPhone, and the fifth thread handles displaying this data.

I created the block diagrams describing this in the design document last week, and this week I was able to finish a first draft of software for all but the fourth and fifth threads. I pretty much used python classes for everything, specifically SharedClass, GoggleButton, and CameraClient classes.

Next week, I hope to finish a full draft of all five threads, and begin testing their functionality on the Pi itself. Along with this, I plan on assisting with printing and modifying the CAD design for the Dawggles.

Leave a Reply

Your email address will not be published. Required fields are marked *