1 / 30

CprE Curriculum based Application Development using iPod Touch

Explore integrating iPod Touch into ECpE curriculum, assessing feasibility, proposed design, costs, and testing with focus on hands-on application development. Objective to enhance student learning through practical labs and advance embedded systems knowledge.

hrowan
Download Presentation

CprE Curriculum based Application Development using iPod Touch

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CprE Curriculum based Application Development using iPod Touch May10-23: Advisor: Professor AkhileshTyagi Autumn Winkie Chad Nelson Morgan Janes Sean Freitag Tim Danzer

  2. Outline • Introduction to iPod Touch • Integrating iPod Touch into ECpE curriculum • Project Requirements • Proposed Design • Projected Costs • Design Testing • Deliverables

  3. The iPod Touch • Based on iPhone hardware • Mobile Embedded Platform • Samsung 32-bit RISC ARM • Clocked at 412 MHz • Multi-touch touch screen • 128 MB DRAM • 8-32 GB solid state memory • 120 x 480 pixel, 163 pixels/inch LCD • iPhoneOS • Stripped down version on MacOSX • WiFi and Bluetooth • Battery 3.7 V at 1150 mAh

  4. Development Environment • Closed Platform • Unix based • Objective-C • Communicates via “small-talk” • Frameworks provide communication to the systems devices • Unable to access services outside of provided frameworks

  5. iPod Touch Capabilities • The iPod touch is capable of: • Communicating via WiFi to external networks • Communicating via Bluetooth to other iPhone based devices and hands free peripheral devices • Detecting acceleration in three dimensional space • Determining its own location • Displaying advanced user interfaces • Encoding/decoding music and video for play back

  6. iPod Touch Limitations • The iPod touch is not capable of: • Communicating via serial/USB without Apple’s permission (which we do not have) • Utilizing camera, GPS, video recording, microphone, or compass like the iPhone 3GS • Executing user developed background applications • Supporting Bluetooth profiles outside of advanced audio distribution, audio/video remote control, and personal area network

  7. iPod/iPhone Popularity • Sold approximately 26.4 Million iPhones and 20 million iPod Touches • Approximately 5%of US population owns an iPhone • Over 1 Billion apps downloaded from Apple’s store

  8. Project Objective • Because of the overwhelming popularity of the iPhone platform it would be opportunistic for Iowa State University to pursue integrating the platform into its curriculum • Our project is to assess the feasibly of integrating the iPod touch into the CprE embedded systems curriculum

  9. Course Outline • Professor Tyagi has communicated with the Embedded Systems faculty to create requirements for this embedded course • Project requirements will be based on those established for CprE 388X: Microcontroller and Systems Design • Feasibility will be assessed based on fulfillment of these requirements

  10. Requirements • Event Loop • Event Scheduling • Web Client Design (Network Embedded Systems) • Cooperative and Distributed Decision Making • Resource Management • Processor • Memory • Energy

  11. Design Approach • Design a minimal set of labs to meet requirements • Implement given set of labs • Generate documentation for each lab • Provide labs, documentation, feasibility analysis and any other relevant resources as deliverables

  12. Initial Design Plan • Five labs will meet requirements • Hello World! • Light Saber • iFind • Web Radio • iRobot Integration

  13. Project Evolution Labs Requirements Hello World! Hello World! Event Loop Event Loop Light saber Light saber Event Scheduling Event Scheduling iFind iFind Networking (Client/Server) Networking (Client/Server) Web Radio Web Radio Resource Management (memory, processor, energy) Resource Management (memory, processor, energy) iRobot Integration iRobot Integration Cooperative and Distributed Decision Making Cooperative and Distributed Decision Making

  14. Project Evolution Labs Requirements Hello World! Hello World! Event Loop Event Loop Light saber Light saber Resource Management Event Scheduling Event Scheduling iFind FindMe Networking (Client/Server) Networking (Client/Server) Distributed Brute Force Web Radio Resource Management (memory, processor, energy) Resource Management (memory, processor, energy) iRobot Integration Cooperative and Distributed Decision Making Cooperative and Distributed Decision Making

  15. Project Evolution Labs Requirements Hello World! Hello World! Event Loop Event Loop Resource Management Resource Management Event Scheduling Event Scheduling FindMe FindMe Networking (Client/Server) Networking (Client/Server) Distributed Brute Force Distributed Brute Force Resource Management (memory, processor, energy) Resource Management (memory, processor, energy) Light Saber Light Saber Cooperative and Distributed Decision Making Cooperative and Distributed Decision Making

  16. Lab 1: Hello World Description: Introduce students to iPhone application development process Concepts: • Objective-C • Structure and components for iPhone app • View Controllers • Delegates • Interface Builder • Developer Certificates to directly test on the iPhoneplatform Deliverable: An application using these components to display “Hello World”

  17. Lab 2: Resource Management Description: Require students to explore the physical constraints of the platform Concepts: • Monitor battery depletion • Compare processor performance versus energy consumption • Compare network usage versus energy consumption • Illustrate need for memory management Deliverable: A lab report with supporting graphs demonstrating the application of resource management

  18. Lab 3: FindMe Description: Utilize location services to track other other users’ locations Concepts: • Alert users when a friend is nearby • Apple Push Notifications • Client/Server interactions • Advanced user interface design • MapKitand Corelocations frameworks for iPhone platform Deliverable: An application that submits its geo-location to a server and receives peer locations. A server that supports push notifications.

  19. Lab 4: Distributed Brute Force Description: Use multiple iPodtouches to collaboratively solve a given MD5 hash via brute force. Concepts: • Uses Bluetooth • Uses distributive computing • Multithreaded server Deliverable: A client that can perform a brute force on a given hash and a server to provide the hash.

  20. Lab 5: Light Saber Description: Light saber battle between two users with collision detection. Concepts: • Use accelerometers to determine the orientation and striking of iPod touch as light saber in battle • Use Bluetooth to communicate these accelerometer values to opponent in real time • Determining collisions and blocks based on calculations using accelerometer values • Audio services to control striking and movement sounds • Light Saber app will be considered the final project Deliverable: An application that connects to an opponent via Bluetooth and supports battle calculations by utilizing accelerometer data.

  21. Lab Reasoning • 5 labs is the minimal set that meets all requirements • Expected that filler labs will be created during class implementation • Labs are subject to change to parallel lecture material

  22. Lab Timeline • Hello World (1 week) • Resource Management (1 week) • Expected filler lab (1-2 weeks) • FindMe App (2 weeks) • Distributed Brute Force (2 weeks) • Light Saber (3-4 weeks) Total of 10-12 weeks worth of labs

  23. Project Costs • Purchases prior to project start • Apple enterprise developer program certification - $99 • 8gb iPodtouches provided by the department - $995 • Costs incurred during project • Labor: 150 hrs/person x $20/hr x 5 people = $15000 • Poster: $40 • Total Cost = $16140

  24. Project Timeline Fall 2009

  25. Project Timeline Spring 2010

  26. Testing • A seminar to test the usefulness of the documentation in implementing the labs will take place during March 2010 • Ideal participants • Will be avid embedded systems programmers who have taken at least CprE 288 • Have interest in the iPhone platform. • Seminar will provide us with • An idea of the difficultly of the labs/projects • The usefulness of the documentation made to accompany each lab or project • Feedback analyzed and used to improve labs and generate feasibility report

  27. Deliverables • Lab documentation • Student write-ups • References to Apple developer documentation • Datasheets • Framework documentation • XCode tutorials • Course content outline • Feasibility results • Feedback surveys • Succession/expansion planning

  28. May10-23 Website • Progress and status reports can be viewed at the team website:  http://seniord.ece.iastate.edu/may1023

  29. References Picture References in order of appearance • http://techplore.com/technology/wp-content/uploads/2009/07/new_iphone.jpg • http://www.ifixit.com/Teardown/iPod-Touch-1st-Generation/596/3 • http://upload.wikimedia.org/wikipedia/commons/8/8f/IPhone_sales_per_quarter.svg • http://idannyb.wordpress.com/2008/05/16/iphone-country-count-up-to-53/ • http://jonmell.co.uk/wp-content/uploads/2008/12/find-people.jpg • http://greatbignerd.files.wordpress.com/2009/05/133946__lightsaber_l.jpg

  30. Questions?

More Related