Rev 30 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 30 | Rev 77 | ||
---|---|---|---|
1 | /************************************************************************************************* |
1 | /************************************************************************************************* |
2 | * |
2 | * |
3 | * DUBwise |
3 | * DUBwise |
4 | * Digital UFO Broadcasting with intelligent service equipment |
4 | * Digital UFO Broadcasting with intelligent service equipment |
5 | * |
5 | * |
6 | * Project to Communicate via J2ME (Mobile Phone) and Bluetooth |
6 | * Project to Communicate via J2ME (Mobile Phone) and Bluetooth |
7 | * with a MikroKopter ( www.mikrokopter.de ) |
7 | * with a MikroKopter ( www.mikrokopter.de ) |
8 | * |
8 | * |
9 | * |
9 | * |
10 | * Author: Marcus -LiGi- Bueschleb |
10 | * Author: Marcus -LiGi- Bueschleb |
11 | * Project-Start: 9/2007 |
11 | * Project-Start: 9/2007 |
12 | * Version: 0.42 |
12 | * Version: 0.42 |
13 | * Mailto: ligi |
13 | * Mailto: ligi |
14 | * <-/AT/-> |
14 | * <-/AT/-> |
15 | * smart4mobile.de |
15 | * smart4mobile.de |
16 | * |
16 | * |
17 | * Licence: http://creativecommons.org/licenses/by-nc-sa/2.0/de/ |
17 | * Licence: http://creativecommons.org/licenses/by-nc-sa/2.0/de/ |
18 | * (Creative Commons / Non Commercial / Share Alike) |
18 | * (Creative Commons / Non Commercial / Share Alike) |
19 | * Addtitonally to this Licence it is not allowed to use this software in any violent manner. |
19 | * Addtitonally to this Licence it is not allowed to use this software in any violent manner. |
20 | * This explicitly includes that lethal Weapon owning "People" (e.g. Army & Police) are not allowed to use this Project |
20 | * This explicitly includes that lethal Weapon owning "People" (e.g. Army & Police) are not allowed to use this Project |
21 | * If you want to use this tool in any Commercial Context - please contact me first! |
21 | * If you want to use this tool in any Commercial Context - please contact me first! |
22 | * |
22 | * |
23 | * Disclaimer: Use this Project at your own Risk! |
23 | * Disclaimer: Use this Project at your own Risk! |
24 | * |
24 | * |
25 | * Credits: Holger&Ingo for the MikroKopter Project |
25 | * Credits: Holger&Ingo for the MikroKopter Project |
26 | * CaScAdE for Testing and Graphics |
26 | * CaScAdE for Testing and Graphics |
27 | * Orion8 for inspiration |
27 | * Orion8 for inspiration |
28 | * Joko for Testing and Comments |
28 | * Joko for Testing and Comments |
29 | * Thomas Fitchen for equipping me with my first RC stuff |
29 | * Thomas Fitchen for equipping me with my first RC stuff |
30 | * |
30 | * |
31 | * Online Links: |
31 | * Online Links: |
32 | * |
32 | * |
33 | * -this Document (Subversion): |
33 | * -this Document (Subversion): |
34 | * http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl/branches/ligi_j2me/README |
34 | * http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl/branches/ligi_j2me/README |
35 | * |
35 | * |
36 | * -Wiki: |
36 | * -Wiki: |
37 | * http://mikrokopter.de/ucwiki/en/DUBwise |
37 | * http://mikrokopter.de/ucwiki/en/DUBwise |
38 | * |
38 | * |
39 | * -Forum ( German Discussion around DUBwise ): |
39 | * -Forum ( German Discussion around DUBwise ): |
40 | * http://forum.mikrokopter.de/topic-1682.html |
40 | * http://forum.mikrokopter.de/topic-1682.html |
41 | * |
41 | * |
42 | * -GetJar: |
42 | * -GetJar: |
43 | * http://www.getjar.com/products/12587/DUBwise |
43 | * http://www.getjar.com/products/12587/DUBwise |
44 | * |
44 | * |
45 | *************************************************************************************************/ |
45 | *************************************************************************************************/ |
46 | 46 | ||
47 | *** Features: |
47 | *** Features: |
48 | - draw Graphs with Nick integral / Roll integral / Nick acc / Roll acc |
48 | - draw Graphs with Nick integral / Roll integral / Nick acc / Roll acc |
49 | - test each motor ( like MotorTest in MK-Tool ) |
49 | - test each motor ( like MotorTest in MK-Tool ) |
50 | - Draw LCD of mk ( + interact with it Up/Down ) |
50 | - Draw LCD of mk ( + interact with it Up/Down ) |
51 | - Fly the MikroKopter ( you nees GPS and a special MK-Version ) |
51 | - Fly the MikroKopter ( you nees GPS and a special MK-Version ) |
52 | - View all DebugValues |
52 | - View all DebugValues |
53 | - measure ConnectionTime / Motor=15Time / Motor>15Time ( UpTime ) |
53 | - measure ConnectionTime / Motor=15Time / Motor>15Time ( UpTime ) |
54 | - Read and Edit Settings/Parameters from MK |
54 | - Read and Edit Settings/Parameters from MK |
55 | - initial Proxy Function ( send Data from MK via TCP/IP to socket ) |
55 | - initial Proxy Function ( send Data from MK via TCP/IP to socket ) |
56 | - save MK MAC/Name - so that scanning is only needed once ( you have to Quit via the Menu-Item - not the systems Exit button or simply turning the Phone off) |
56 | - save MK MAC/Name - so that scanning is only needed once ( you have to Quit via the Menu-Item - not the systems Exit button or simply turning the Phone off) |
57 | - get MK_version |
57 | - get MK_version |
58 | - reconnect after connection loss ( detection of disconnect could be faster ) |
58 | - reconnect after connection loss ( detection of disconnect could be faster ) |
59 | 59 | ||
60 | 60 | ||
61 | *** Install: |
61 | *** Install: |
62 | - If u know how to handle JAR/JADs take the ones from the bin directory. |
62 | - If u know how to handle JAR/JADs take the ones from the bin directory. |
63 | - If u dont visit http://www.getjar.com/products/12587/DUBwise ( SVN might be more recent) |
63 | - If u dont visit http://www.getjar.com/products/12587/DUBwise ( SVN might be more recent) |
64 | 64 | ||
65 | *** Usage: |
65 | *** Usage: |
66 | General: |
66 | General: |
67 | KEY # toggle Fullscreen |
67 | KEY # toggle Fullscreen |
68 | KEY * MainMenu |
68 | KEY * MainMenu |
69 | 69 | ||
70 | Device selection Screen: |
70 | Device selection Screen: |
71 | KEY UP/Down to select device |
71 | KEY UP/Down to select device |
72 | 72 | ||
73 | Telemetry Screen: |
73 | Telemetry Screen: |
74 | KEY UP to go Page up in MK-LCD |
74 | KEY UP to go Page up in MK-LCD |
75 | KEY DOWN to go Page up in MK-LCD |
75 | KEY DOWN to go Page up in MK-LCD |
76 | 76 | ||
77 | MotorTest Screen |
77 | MotorTest Screen |
78 | UP/DOWN increas/decrease speed of actual motor |
78 | UP/DOWN increas/decrease speed of actual motor |
79 | LEFT prev motor ( if first go to main screen ) |
79 | LEFT prev motor ( if first go to main screen ) |
80 | RIGHT next motor |
80 | RIGHT next motor |
81 | 81 | ||
82 | *** Tested on: |
82 | *** Tested on: |
83 | SE K800i |
83 | SE K800i |
84 | SE W800i |
84 | SE W800i |
85 | SE W810i |
85 | SE W810i |
86 | SE K610i |
86 | SE K610i |
87 | 87 | ||
88 | Nokia N73 |
88 | Nokia N73 |
89 | Nokia N80 |
89 | Nokia N80 |
90 | Nokia N93 |
90 | Nokia N93 |
91 | Nokia N95 |
91 | Nokia N95 |
92 | - | ||
- | 92 | Nokia E90 ( FrontDisplay ) |
|
93 | 93 | Nokia E51 |
|
94 | 94 | ||
95 | Nokia 6234 |
95 | Nokia 6234 |
96 | Nokia 6131 |
96 | Nokia 6131 |
97 | Nokia 6300 |
97 | Nokia 6300 |
98 | Nokia 6230 |
98 | Nokia 6230 |
99 | Nokia 6230i ( without MK ) |
99 | Nokia 6230i ( without MK ) |
100 | 100 | ||
101 | *** Compile: |
101 | *** Compile: |
102 | - install some tools to fullfill Compile-Dependencys ( see below ) |
102 | - install some tools to fullfill Compile-Dependencys ( see below ) |
103 | - Set the path to WTK it in build.xml |
103 | - Set the path to WTK it in build.xml |
104 | - execute $> ant build |
104 | - execute $> ant build |
105 | - the JAR and JAD will appear in build/bin when success |
105 | - the JAR and JAD will appear in build/bin when success |
106 | * see http://forum.mikrokopter.de/topic-post15829.html#post15829 for Hints on Compiling on Windows |
106 | * see http://forum.mikrokopter.de/topic-post15829.html#post15829 for Hints on Compiling on Windows |
107 | 107 | ||
108 | *** Dependencys: |
108 | *** Dependencys: |
109 | Run: |
109 | Run: |
110 | - The Phone needs the Bluetooth API and MIDP 2.0 . |
110 | - The Phone needs the Bluetooth API and MIDP 2.0 . |
111 | - The MK needs a Bluetooth-Modul - http://mikrokopter.de/ucwiki/F2M03GXA?action=show |
111 | - The MK needs a Bluetooth-Modul - http://mikrokopter.de/ucwiki/F2M03GXA?action=show |
112 | Compile: |
112 | Compile: |
113 | - WTK ( 2.2 proven to work - please test with newer ) |
113 | - WTK ( 2.2 proven to work - please test with newer ) |
114 | - Obfuscator (e.g. Proguard from http://sourceforge.net/project/showfiles.php?group_id=54750 |
114 | - Obfuscator (e.g. Proguard from http://sourceforge.net/project/showfiles.php?group_id=54750 |
115 | ) when willing to obfuscate |
115 | ) when willing to obfuscate |
116 | - ANT |
116 | - ANT |
117 | - Ruby for some scripts around the build process |
117 | - Ruby for some scripts around the build process |
118 | 118 | ||
119 | *** ToDo: |
119 | *** ToDo: |
120 | - bidirektional Proxying to TCP/IP ( GPRS / UMTS / WLAN ( e.g. N80) .. ) |
120 | - bidirektional Proxying to TCP/IP ( GPRS / UMTS / WLAN ( e.g. N80) .. ) |
121 | - internationalize Stings |
121 | - internationalize Stings |
122 | - measure DebugSets per Second |
122 | - measure DebugSets per Second |
123 | - log data/csv ( send via TCP/IP ; save ) |
123 | - log data/csv ( send via TCP/IP ; save ) |
124 | - Sound Alarms on Batt low or other triggers |
124 | - Sound Alarms on Batt low or other triggers |
125 | - Flash new MK Version via this Tool ( with online connectivity it could be an automatic update reminder ) |
125 | - Flash new MK Version via this Tool ( with online connectivity it could be an automatic update reminder ) |
126 | - making lib to be useable with desktop JAVA / will be sceduled after bluecove for linux is ready ( anounced for next Version) |
126 | - making lib to be useable with desktop JAVA / will be sceduled after bluecove for linux is ready ( anounced for next Version) |
127 | - triangulate MK by BT rssi |
127 | - triangulate MK by BT rssi |
128 | - trigger mobile-cammera via FC |
128 | - trigger mobile-cammera via FC |
129 | - save/reat Parameters in/from RMS ( e.g. to copy parameters from MK 2 MK ) |
129 | - save/reat Parameters in/from RMS ( e.g. to copy parameters from MK 2 MK ) |
130 | - Port to Android ( will do when i have such a phone ;-) |
130 | - Port to Android ( will do when i have such a phone ;-) |
131 | - tbc |
131 | - tbc |
132 | 132 | ||
133 | *** ChangeLog: |
133 | *** ChangeLog: |
134 | 0.01 - initial Version ( initialize connection / main Thread with reading data from MK) |
134 | 0.01 - initial Version ( initialize connection / main Thread with reading data from MK) |
135 | 0.02 - reconnect after connection loss ( e.g. switching on/off ) |
135 | 0.02 - reconnect after connection loss ( e.g. switching on/off ) |
136 | 0.03 - added send_command ( with CRC ) |
136 | 0.03 - added send_command ( with CRC ) |
137 | 0.04 - added decode64 to decode 'pseudo' BASE64 |
137 | 0.04 - added decode64 to decode 'pseudo' BASE64 |
138 | 0.05 - added get_version |
138 | 0.05 - added get_version |
139 | 0.06 - added parsing of DebugData |
139 | 0.06 - added parsing of DebugData |
140 | 0.07 - Code-(Doc&&Cleanup) && initial svn commit |
140 | 0.07 - Code-(Doc&&Cleanup) && initial svn commit |
141 | 0.08 - Initial README / ToDo List |
141 | 0.08 - Initial README / ToDo List |
142 | 0.09 - implemented BTScanner for detecting BT-Devices (No hard mac anymore for first public bin) |
142 | 0.09 - implemented BTScanner for detecting BT-Devices (No hard mac anymore for first public bin) |
143 | 0.10 - initial MKMinimalMidlet / Canvas |
143 | 0.10 - initial MKMinimalMidlet / Canvas |
144 | 0.11 - 1st public binary ( JAR/JAD) |
144 | 0.11 - 1st public binary ( JAR/JAD) |
145 | 0.12 - measure Uptime ( like that word for MK being in Air ;-) |
145 | 0.12 - measure Uptime ( like that word for MK being in Air ;-) |
146 | 0.14 - measure idling mixture |
146 | 0.14 - measure idling mixture |
147 | 0.15 - Fixed Nokia Problem 2 instead of 2.0 .. |
147 | 0.15 - Fixed Nokia Problem 2 instead of 2.0 .. |
148 | 0.16 - LCD implementation & polishing code on serveral places |
148 | 0.16 - LCD implementation & polishing code on serveral places |
149 | 0.17 - Quit via * | Rescan via # |
149 | 0.17 - Quit via * | Rescan via # |
150 | 0.18 - Remember URL ( bt-mac ) on quit |
150 | 0.18 - Remember URL ( bt-mac ) on quit |
151 | 0.19 - better handling of MK Version |
151 | 0.19 - better handling of MK Version |
152 | 0.23 - care for Version while parsing DebugData - MK0.64 compatible now (0.20-0.23 - n1 bugfixing With CaSCade) |
152 | 0.23 - care for Version while parsing DebugData - MK0.64 compatible now (0.20-0.23 - n1 bugfixing With CaSCade) |
153 | 0.24 - adding some GFX |
153 | 0.24 - adding some GFX |
154 | 0.25 - adding Graph ( Nick int;Roll int; nick acc ;roll acc) |
154 | 0.25 - adding Graph ( Nick int;Roll int; nick acc ;roll acc) |
155 | 0.26 - more Visuals |
155 | 0.26 - more Visuals |
156 | 0.27 - implemented motor_test |
156 | 0.27 - implemented motor_test |
157 | 0.28 - Icon |
157 | 0.28 - Icon |
158 | 0.29 - ressources for 176x220 / Ress differencing |
158 | 0.29 - ressources for 176x220 / Ress differencing |
159 | 0.30 - Load Parameters from MK |
159 | 0.30 - Load Parameters from MK |
160 | 0.31 - Edit Parameters ( MKParamEdit.java ) |
160 | 0.31 - Edit Parameters ( MKParamEdit.java ) |
161 | 0.32 - Main Menu |
161 | 0.32 - Main Menu |
162 | 0.33 - Bugfix / Code CleanUp |
162 | 0.33 - Bugfix / Code CleanUp |
163 | 0.34 - select ParamSet to edit |
163 | 0.34 - select ParamSet to edit |
164 | 0.35 - Proxy server test script |
164 | 0.35 - Proxy server test script |
165 | 0.36 - initial Proxy-function in DUBwise ( send data recieved from mk to socket ) |
165 | 0.36 - initial Proxy-function in DUBwise ( send data recieved from mk to socket ) |
166 | 0.37 - write ParamSets / BugFixing |
166 | 0.37 - write ParamSets / BugFixing |
167 | 0.38 - scrolling intro string ( some EYE-Candy ) |
167 | 0.38 - scrolling intro string ( some EYE-Candy ) |
168 | 0.39 - rotation instead of clipping in main menu select |
168 | 0.39 - rotation instead of clipping in main menu select |
169 | 0.40 - Input Values in ParameterEditor via KEY0..KEY9 |
169 | 0.40 - Input Values in ParameterEditor via KEY0..KEY9 |
170 | 0.41 - block motortest values > 255 / BugFixes / better Parameter Input |
170 | 0.41 - block motortest values > 255 / BugFixes / better Parameter Input |
171 | 0.42 - Display UBatt and SenderOkay |
171 | 0.42 - Display UBatt and SenderOkay |
172 | - RAW Debug Mode |
172 | - RAW Debug Mode |
173 | - BugFixes ( e.g. SetPoint in ParamsParser was wrong ) |
173 | - BugFixes ( e.g. SetPoint in ParamsParser was wrong ) |
174 | - using newer Antenna Preprocessor so that version has to be changed only once |
174 | - using newer Antenna Preprocessor so that version has to be changed only once |
175 | - KeyControl -> send KeyEvents as BitField from mobile to FC in order to control the MK |
175 | - KeyControl -> send KeyEvents as BitField from mobile to FC in order to control the MK |
176 | - Vibration on Connection loss |
176 | - Vibration on Connection loss |
177 | - StarField BackGround |
177 | - StarField BackGround |
178 | - Fixing Bluetooth Image & Activity Indicator |
178 | - Fixing Bluetooth Image & Activity Indicator |