====== grp1 - TeamNullPointerException ====== - Oskar Sonninen -- 0326770 -- LUT - Mikko Kaistinen -- 0334791 -- LUT - Anssi Salo -- 0259245 -- LUT ===== Idea ===== Idea is to creat (very) simple application that can mark your position on a map using GPS. In future you could sync other peoples position to your phone (Not implementing in this session). {{:maemo2010:grp1:gps_tracker.odp|}} {{:maemo2010:grp1:GRP1_Maemo_presentation.pdf|}} * Main idea; simple gps tracker which gives users position on the map. * Coding language Python * Should work on LUT campus area * Gives gps data to the workers on 8th building phase construction site ===== Workflow ===== **15.00-18.00**: Making development tools to work. Configuring development tools and phone to accept python. **18.00-00.00**: Coding basic GPS functions. **00.00-03.00**: uploading image file **03.00-08.00**: zzZZzzz **08.00-10.30**: implementing drawing primitives (dropped) **10.30-13.59**: Implementing location warning and tweaking GPS coordinate conversion **13.59-14.00**: Wrinting wiki and slides ;) ===== Implementation ===== Code was done using pymaemo (python designed for maemo that uses gtk for layout management). GPS coordinate conversion to distance was done using formula found from the [[http://cyberpython.wordpress.com/2010/03/31/python-calculate-the-distance-between-2-points-given-their-coordinates/|web]]. ===== Features ===== Priorities: First priority (1), implemented if enough time (2) ^Feature ^ Priority ^ Status | |GUI|1|Done| |GPS coordinates|1|Done| |Map|1|Done| |Converting GPS coordinates to metric format|1|Done| |Warning of closing boss|1|Done| |Making a marker to map based on coordinates|1|Dropped| |User triggered manual refresh|2|Dropped | |Reading other devices GPS coordinates|2|will not be implemented at on codecamp| ===== Screenshots ===== **Ultimate ** {{:maemo2010:grp1:grp1_main_screen.png|}} **Awesome map** {{:maemo2010:grp1:grp1_map_screen.png|}} ===== Source code ===== {{:maemo2010:grp1:gps.zip|}} ===== Conclusion ===== ● Maemo didn't have good python libraries to draw image layers. ● Layout was quite tricky to make (still not what we wanted). ● GPS was hard to debug because connetions to satellites can't be made inside. Maemo Xephyr couldn't emulate GPS easily. ● Scratchbox wasn't all too useful. It broke down once and Xephyr can't be rebooted without using command-line. ● Python hugely fastened development.