- 1 Personal Information
- 2 Summer 2014 - ECS Robotics Module Redesign
- 2.1 Week 00 (05/27/14 - 05/30/14)
- 2.2 Week 01 (06/02/14 - 06/06/14)
- 2.3 Week 02 (06/09/14 - 06/13/14)
- 2.4 Week 03 (06/16/14 - 06/20/14)
- 2.5 Week 04 (06/23/14 - 06/27/14)
- 2.6 Week 05 (06/30/14 - 07/04/14)
- 2.7 Week 06 (07/07/14 - 07/11/14)
- 2.8 Week 07 (07/14/14 - 07/18/14)
- 2.9 Week 08 (07/21/14 - 07/25/14)
- 2.10 Week 09 (07/28/14 - 08/01/14)
My name is Tyler Much and I am currently a senior at Marquette University pursuing degrees in Computer Science and Mathematics.
Summer 2014 - ECS Robotics Module Redesign
Week 00 (05/27/14 - 05/30/14)
- REU Orientation
- Discussed potential modules
- Moved into my new apartment. No work done.
- Began looking into how we might go about modding scratch
- Investigated Xinu on the Raspberry Pi to record what we may or may not need to give attention to in the future
- Set up git repos for modding scratch and modifying Xinu
- Looked into the possibility of partitioning the SD card to separate the xinu kernel and the scratch output file. This will serve to protect the Xinu kernel from being easily overwritten/deleted.
- Set up cross compiler on my computer and wrote out a small tutorial for Matt and John to get Xinu to compile and run from their own machines.
- Stumbled upon a nice version of scratch written specifically for Raspbian on the Raspberry Pi that includes GPIO control
- Decided to investigate this option because it seems to be much simpler for the end user (and us)
- Downloaded and installed this version of Raspbian and began playing around with it. This is version 1.4 of scratch which is nice because it seems to me much for friendly to modders.
Week 01 (06/02/14 - 06/06/14)
- Continued trying to get Raspbian with GPIO control installed on the pi.
- Ran into troubles with our HDMI -> VGA converter. Could not get video output to our monitor.
- Finally got video output to our monitor, but the text was fuzzy. Tried with pure HDMI on a monitor in my apartment and it works fine.
- Began playing around with scratch on the raspberry pi.
- Was able to set up and run a basic test to see that we can control GPIO pin 17 from scratch. Success.
- Success video here.
- Looked into modding scratch 1.4 on the Raspberry Pi so that we can add our custom modules.
- Continued looking into modding scratch 1.4. The tutorials I have been able to find are poorly written and incomplete.
- Was able to add a custom block (custom labeling and behavior)
- Started working on a way to save the changes so that scratch can be closed completely and reopened with our changes.
- Worked on getting HDMI output to work from the Raspberry Pi.
Week 02 (06/09/14 - 06/13/14)
- We are now confident that we can do whatever we need to do, now we just need to know what to do. We began looking through the existing module 6 and discussing the learning objectives and how we might achieve those with our system.
- Made our mini-presentation
- Touched up the presentation
- Assembled peripherals list to order
- Met with Matt Solfest to go over our presentation and discuss possibility of moving to the Arduino (Ardublocks) (just kidding, he cancelled)
- Working on getting a working modded version of scratch. No success.
- Presented preliminary thoughts about curriculum to Dennis.
Week 03 (06/16/14 - 06/20/14)
- Discussed a switch from Scratch and the Raspberry Pi to ArduBlock and the Arduino
- Organized the lab and ordered Arduino Leonardo boards to begin playing with
- Ethical research training
- Figured out how to get ArduBlock to compile with Maven
- Began exploring ArduBlock source code and learning how to add blocks
Week 04 (06/23/14 - 06/27/14)
- Spoke with Bob Juranitch (experienced high school CS teacher) about our goals and potential paths for the project
- Assembled a list of peripherals to order for the Arduino Leonardo
- Learned basic of LaTeX from Dr. Corliss during lunch presentation
- Continued adding blocks to ArduBlock
- Modding ArduBlock
- Modding ArduBlock
- Modding ArduBlock
Week 05 (06/30/14 - 07/04/14)
- Played around with Arduino to brainstorm potential projects
- More of above
- More of above and brainstorming which blocks we might need to add
Week 06 (07/07/14 - 07/11/14)
- Got Matt caught up on what we had done and discussed which blocks need to be implemented
- Created "Play Note" block and discussed how we might eliminate requirement for a breadboard
- Added full range of notes to be played with our new block and added a second block for playing notes
- Developed theremin example with distance sensor
- Attended research poster presentation
- Simplified Theremin and added more flexibility to Play Note block
Week 07 (07/14/14 - 07/18/14)
- Discussed curriculum details and project goals with the group
- Continued modding ArduBlock
- Added more blocks for music projects
- Made poster with group
- Started making my own poster. A misunderstanding occurred where none of us knew that we needed to make our own posters
- Finished making my poster and submitted it to Dennis to be printed
Week 08 (07/21/14 - 07/25/14)
- Design discussion and code cleanup
- Began to design shield and discuss which peripherals we would put onto it
- Decided on peripherals and made a draft of a pin layout
- Starting looking into software to make the keyboard act as piano keys
- Worked on keyboard application
- Poster presentations
- Worked on keyboard application. Was able to get communication sent to Arduino when a key is pressed.
Week 09 (07/28/14 - 08/01/14)
- Continued work on keyboard application. Decided to make it so it can be applied more generally. Instead of having the keys automatically map to notes, the keys will just act like buttons to the Arduino. Now instead of having 4 buttons on the shield, we have 26.
- Finished keyboard to the point where I could get a demo working for tomorrow. I can press a key and have a speaker play a note for as long as I'm holding it down.
- Tuned up demo and cleaned code a bit. Added support for keys 0-9 instead of only a-z.
- Presented project to ECS representative and several experiences high school CS teachers.
- Final REU presentations
- Worked on final paper
- Finished final paper