umtsmon is a tool to handle UMTS (3G) devices in Linux This is a port to TDE from https://sourceforge.net/p/umtsmon/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

334 lines
15KB

  1. TODO
  2. This file contains a list of things to be done and a list of what's done
  3. already.
  4. Any entry starting with an X is completed.
  5. Any entry starting with an / is "half" completed
  6. --------------------------------------------------------------------------
  7. For the 0.10 release:
  8. X suspend logging during setting PIN/PUK.
  9. X add checks whether user is part of 'dialout' and 'uucp' groups
  10. X BUG TO BE REPORTED:
  11. - even if *time* limit is hit, still data limit mentioned in warning dialog.
  12. - that dialog is not i18n aware
  13. X BUG:
  14. X ###P1 t=935: ERROR: APN contains illegal character
  15. this error should be visible to the GUI user, too.
  16. X it also means that the checks in the profile dialog need to improve
  17. X Create a new popup class that saves whether the customer wants to see the dialog again
  18. X add a "welcome" at umtsmon start
  19. X add a "please create a profile" at gui start
  20. X Sierra Wireless Aircard 875 returns a number (I saw 23201 once) as operator - that should be masked...
  21. - Novatel devices do this, too
  22. - Huawei also sometimes
  23. * (observed on Novatel cards only): if subsequent calls to AT+COPS do not return
  24. the operator namei (but an empty string), make sure you cached the previous instance.
  25. NOTE: first research why - this might be due to CREG/CGREG or so...
  26. X implement number-to-operator cache
  27. X use cache
  28. X on single port cards (maybe also on multi-port cards)
  29. not having autoupdate radio prefs on, will hang umtsmon after
  30. shutting down the network connection
  31. X I18n changes:
  32. X make setting for non-en_US language persistent
  33. X get list of all possible languages
  34. X add menu option to set language from GUI
  35. * Indonesian, thanks to Andika Triwidada
  36. * Russian, thanks to Soussine Viktor
  37. X auto connect option
  38. X only allow auto connect when previously a connection was successful for that profile
  39. X ensure device switching can be automated, too
  40. X hardware enablement:
  41. X finish Option HSO device support
  42. X Solomon SCMi 250u
  43. X Ericsson F3507g
  44. X add Device class name and port info to System info dialog
  45. X remember if roaming last time, so can show right stats at startup
  46. * ConnectionInfo(ACM) - if a device doesn't work well on CGREG, we should make
  47. the registration be part of the signal quality. i.e. always ask for signal quality
  48. and make the registration depend on that. This requires changing the isDeviceRegistered()
  49. and other members.
  50. * ConnectionInfoACM seems to work as fine as ConnectionInfo does. Why have two?
  51. - of course not entirely true: roaming info is missing
  52. * BUG:
  53. * Huawei modems no longer understand roaming vs home network
  54. X various bugs fixed and optimizations around profiles:
  55. - better handling of empty APN
  56. - ability to set a profile from the command line
  57. - immediately edit a profile after you create a new one
  58. X CID is now configurable from the config file
  59. X umtsmon no longer requires device to be fully operational at start
  60. the device can now even be inserted after umtsmon has started
  61. * The UI is sluggish
  62. - move autodetection to a separate background thread
  63. - fix the UIState to become a proper state machine
  64. X allow for extra options in ppp through the /etc/ppp/peers file
  65. --------------------------------------------------------------------------
  66. For "FUTURE RELEASES":
  67. * really make Aircard 875 (860/881U) work
  68. * umtsmon crashes when a system comes out of suspend
  69. * network operator wizard should also retrieve signal info for all operators
  70. * check if the output of usb_modeswitch was good - or do we need to run again?
  71. * auto update of stats should be always enabled until registered.
  72. * check if UMTS card is forced to a specific network because if that
  73. network is not available, you won't get a connection automatically
  74. * Fix network selection of Novatel XU870
  75. * move testersettings stuff from the various *_main.cpp files to TestFrame.cpp
  76. * TO BE REPORTED BUG: when a usb serial plug is inserted *AND* a usb2serial-based card like the
  77. Option, the new autodetection code will decide ttyUSB0 and ttyUSB3 first.
  78. the test for AT will fail - the card will only use ttyUSB3. Not good.
  79. / Fix flickering of LCDDisplay
  80. * add a dialog that shows the progress of AutoDetect
  81. * on single port cards, a malfunctioning PPP might leave the port in undefined state
  82. * fix operation on 2.6.20 kernels (Bug #1662877)
  83. * check if HSDPA is used and show in display
  84. * if multiple Profiles exist, make the "Connect" button a drop-down or add a dialog.
  85. * show the currently selected Profile on the mainwindow
  86. * add a "STOP" feature that kills all network connections and
  87. performs a "cardctl eject" command - only if pcmcia kernel module is loaded
  88. note: "cardctl eject" on Suse 9.3, "pccardctl eject" on Suse 10.1
  89. note: on Suse, this command is suid root, but we can run things as root anyway now
  90. -> this feature should only exist for PCMCIA, as it makes no sense on USB
  91. -> this feature is dangerous on nozomi cards as it might freeze the whole system
  92. * fix compilation for QT4 (Bug # 1527835)
  93. -> only go to QT4 if it doesn't impact the amount of required libraries
  94. * remove all assert(false) from the code
  95. * Wizards for PPP configuration
  96. * SMS handling:
  97. * do code page translation as the character sets don't match
  98. * add receiving SMS
  99. * Make single serial port cards co-exist with PPP
  100. (not by mutual exclusion as it is now, but by interrupting data streams)
  101. See note in SerialPort.cpp: This code can be derived from modem.cpp in kppp.
  102. Reportedly, also OpenMoko's gsmd can do this for us.
  103. * more graphics
  104. - animated connect and search network graphics?
  105. - adjust font sizes for DPI settings in LCDDisplay
  106. * diagnose more configuration errors
  107. * installers
  108. * (See Bug 1856802) for some device/operator, the MTU changes between GPRS and
  109. UMTS operation. The only workaround is currently to set a fixed MTU in
  110. the file /etc/ppp/options, which then is used for both radio modes.
  111. * add location identification, like shown in this application:
  112. http://www.ullihome.de/index.php/Hauptseite#Net_Monitor
  113. --------------------------------------------------------------------------
  114. History of releases:
  115. What was in the 0.1 release:
  116. X enter pin code during startup to unlock the card
  117. X switching of network operators
  118. X SMS sending
  119. X some detection of Option GT cards
  120. What was new in the 0.2 release:
  121. X PCMCIA card autodetection
  122. X Option GT autodetection + use
  123. X Option Fusion(+) autodetection + use
  124. / SonyEricsson GC79 (autodetection only)
  125. X command line override of autodetection
  126. X create basic website
  127. X if umtsmon is started immediately after card was inserted, the SIM
  128. interface might not have been initialised yet. That's currently handled
  129. incorrectly: we *should* allow some time and poll for the interface to
  130. become available.
  131. What was in the 0.3 release:
  132. X card autodetection
  133. X SonyEricsson GC79 autodetection (done)
  134. X Option GT EDGE (Combo) autodetection (done)
  135. X serial_cs-based cards autodetection (done)
  136. X Sierra Wireless Aircard 775 EDGE
  137. X Novatel Merlin UMTS Modem U630
  138. X logging verbosity should be configurable
  139. X create DEBUG macro's
  140. X convert all existing printf's and cout's to DEBUG statements
  141. X create a method to handle critical errors
  142. X Add a technology selector - 3G only, 3G preferred, 2G only etc.
  143. This is important for fringe network coverage.
  144. X Make signal strength visible in title bar when minimized
  145. X add checkbox to enable/disable the update of network stats
  146. What was in the 0.4 release:
  147. X Enhance PCMCIA detection to handle multiple PCMCIA slots.
  148. (implemented by Stefan Seyfried)
  149. X card autodetection
  150. X Huawei Technologies Mobile E612
  151. X Detect 'Holtzman' Nozomi drivers (which have different /dev interface names)
  152. (implemented by Stefan Seyfried)
  153. x add feature to issue commands as "root" user
  154. X apply the trick from kppp to do this
  155. X must clean up code for handling of error conditions first
  156. X implement start/stop PPP connection from within umtsmon
  157. X various interactions:
  158. - not possible to switch radio type when connected - should be disabled
  159. - not possible to connect when searching - connect should be disabled
  160. - when connected - disable connect button or reuse as "disconnect" button
  161. X implement configuration file for persistent settings
  162. X add window to enter required PPP (APN, username, passwd) settings
  163. X enter PUK code dialog
  164. X improved PIN code dialog
  165. What was in the 0.5 release:
  166. X Fix security issues with respect to PPP by separating out the configuration
  167. into a separate program that can modify system settings after asking for
  168. a root password - the main UI doesn't need root privileges anymore.
  169. X card autodetection
  170. X Option 'ICON' USB box
  171. X 4G Systems 'Web n Walk' USB box
  172. X Original Option Vodafone 3G card
  173. X implement changing of PIN code settings
  174. X refactor PIN code enter thingie to separate widget that can be re-used
  175. X make sure that the PIN dialogs use '*' instead of number for
  176. increased security
  177. X new dialog: change pin code
  178. X new dialog: disable/enable use of pin code
  179. X re-layout the UI
  180. X separate out SMS code
  181. X separate out network switching code
  182. X separate out profile dialog
  183. X create a menu and move functionality there
  184. X add dialog check for suid of pppd
  185. For the 0.6 release:
  186. X back out patch to DetectCard to sudo /dev/noz*
  187. X add dialog to check for correct suid of all helper binaries and serial devices
  188. X Add detection of Kyocera device (won't work, though)
  189. X Add detection of Novatel XU870 (operation not complete - delayed to 0.7)
  190. X Make Sony Ericsson GC79 work (Bug #1499130)
  191. X fix SMS sending
  192. X fix about dialog (c) message and AUTHORS tab
  193. X more graphical network strength view
  194. X make PPPConnection more robust
  195. X add 'noauth' to Profile
  196. For the 0.6.9 release - will be in OpenSuse 10.3:
  197. X rewrite autodetection
  198. / switch to use libusb
  199. * and use current code as backup for non libusb systems
  200. X usb detection first, pcmcia later
  201. X add option to specify ppp port on command line
  202. X attempt several baud rates if needed (Bug #1690898)
  203. X test all ports to use (AT/PPP) before actually continuing - if there are
  204. three ports but only one is usable - switch to single port!
  205. / finish getting the SonyEricsson GC79 to work (Bugs #1499130 and #1746965)
  206. X make sure *all* AT commands are suppressed whilst PPP active
  207. X show error log in case PPP fails
  208. X move setRadioPreferences to its own dialog (Bug #1631291)
  209. X Profile dialog: check for unsaved items if OK is pressed
  210. / add support for:
  211. X Dell Wireless 5510 (bug #1785692)
  212. / Sony Ericsson GC86
  213. Additional for the 'real' 0.7 release:
  214. X a few bug fixes by Gerald and Seife.
  215. X document-new.png and document-save.png in newprofiledialog.ui are missing
  216. X make a real application icon
  217. For the 0.7.91 release (i.e. 0.7-beta1):
  218. X Sierra Wireless Aircard 875 support
  219. X Huawei 220 doesn't like if you use the third port
  220. / fix GC86 port operation (bug #1792667)
  221. * add umtsmon to Debian
  222. X .deb package for umtsmon-0.6 Ubuntu already exists
  223. * internationalization
  224. / dutch (nl) - Klaas
  225. * brazilian portugese (pt-br) - Alvaro
  226. / german (de) - Lubomir
  227. * french/polish/russian/spanish/korean/other languages only if volunteers
  228. X fix the LCDDisplay to show "operator" "profile" and such i18n as well
  229. X language selection from command line
  230. X language selection through "LANG" environment variable
  231. / icons
  232. X get more icons from the Tango series
  233. / move help/no/ok/services icons to the 22 and 16 directories
  234. X add .desktop file
  235. X improve Gentoo ebuild (needed for i18n and .desktop anyway)
  236. X if usbserial card detected, but module not loaded, suggest to load module
  237. X emit a message (other than just crashing :-() in the case nothing was detected
  238. X added /etc/*-release to the info dialog, Bug# 1722979
  239. X added the pppd version number to the info dialog, Bug# 1617912
  240. X introduce manage profile dialog and fixup Profiles dialog
  241. X FIX: on single port cards, a malfunctioning PPP might leave the port in undefined state
  242. X maintain statistics and an alarm if you hit a percentage of bandwith per month
  243. X add settings to Profile Dialog
  244. X store traffic data in config file
  245. X show sum & status in display
  246. X throw warning if threshold hit
  247. X solve the CGREG/CREG issue for ACM devices that don't answer that query well
  248. (bug 1865927)
  249. X add new advanced ppp option: No Compression Control Protocol negotiation
  250. For the 0.8 (final) release:
  251. X improve i18n - bring all languages up-to-date
  252. X dutch is at 98%
  253. X german is high too
  254. X fixup MonthlyTraffic creation
  255. - starting at GUI Start (logically - is part of mainwindow class)
  256. - twice before creating connection
  257. - before sending SMS
  258. X merge Gerald's ctrl-c in ui (connect) patch
  259. X merge Seife's ctrl-c on cmdline (sigint) patch
  260. X sending SMS fails on Novatel U740
  261. - card returns "CME Error 305" when over limit of max characters
  262. - that's not a known error ?!?
  263. X but the error was not even detected!
  264. X allow to suppress PPP verbosity (Seife)
  265. X Fix flickering of LCDDisplay - mostly done
  266. X if single port device - don't show network strength when connected
  267. For the 0.9 release:
  268. X create a umtsmon-i18n mailing list
  269. X work on commit list
  270. X get all USB IDs from 2.6.24^H^H25 into the USB AutoDetector
  271. X TODO: real Option (option.c)
  272. X TODO: Sierra Wireless (sierra.c) - patches by Phil
  273. X TODO: Huawei (only a few IDs in use)
  274. X TODO: others
  275. X make Huawei E220 work acceptably
  276. X add ignores for unsollicited updates
  277. X fix all oddities, including immediate return on network operator change
  278. X make Sierra Wireless 8775 work acceptably
  279. X create separate Sierra Wireless Device type - patch by Phil
  280. X make TempSerial port class
  281. X set CHAT stuff on same port as PPP connection
  282. X switch AT and PPP ports if card says so (APP1 answer to ATI query) - patch by Danny
  283. / make Option HSO devices work acceptably
  284. X new Device class
  285. / modify Autodetect_USB to also scan for HSO devices
  286. X remove the 'nocompression' option from the Profile and
  287. always make sure that "no header compression" is used. This fixes at least
  288. 50% of the recent bug reports and forum posts.
  289. X Do not just look for icon_switch, but also for:
  290. - HuaweiAktbo http://linux.frankenberger.at/Huawei_E220.html
  291. - usb_modeswitch http://www.draisberghof.de/usb_modeswitch/
  292. X use the above tools if needed
  293. X Time limits (like we already have data limits)
  294. X add to profile class & UI
  295. X add to MonthlyTraffic
  296. X add to LCDDisplay
  297. X add alerts
  298. / new display
  299. X display connected time
  300. * show new icons for roaming/home
  301. X show triangle for roaming
  302. X i18n: spanish + norwegian bokmal + italian + polish
  303. X optimize "select operators dialog"
  304. X make it a wizard?
  305. X separate model-view-controller to improve code.
  306. * wizard also retrieves signal info for all operators
  307. X card switching for ICON (ZeroCD device)
  308. X the Huawei 220 is a ZeroCD device, that can be easily switched
  309. X add autodetection for the usb_storage thingie
  310. / fixup bluetooth
  311. X allow '/bin' and '/sbin' as part of a path for *su apps