throbber
111111
`
`(19) United States
`(12) Patent Application Publication
`Criss et al.
`
`11111111111111111111111111111111111111111111111111111111111111
`US 20010029178Al
`
`(10) Pub. No.: US 2001/0029178 A1
`Oct. 11, 2001
`(43) Pub. Date:
`
`(54) WIRELESS SOFTWARE UPGRADES WITH
`VERSION CONTROL
`
`(76)
`
`Inventors: Mark A. Criss, The Woodlands, TX
`(US); Paul A. Cowan, Hinckley, OH
`(US)
`
`Correspondence Address:
`RENNER OTTO BOISSELLE & SKLAR, LLP
`1621 EUCLID AVENUE
`NINETEENTH FLOOR
`CLEVELAND, OH 44115 (US)
`
`(21) Appl. No.:
`
`09/876,491
`
`(22) Filed:
`
`Jun.7,2001
`
`Related U.S. Application Data
`
`(63) Continuation of application No. 09/234,813, filed on
`Jan. 21, 1999, which is a continuation-in-part of
`application No. 09/023,857, filed on Feb. 13, 1998,
`now Pat. No. 6,031,830, which is a continuation of
`application No. 08/694,637, filed on Aug. 7, 1996,
`now Pat. No. 5,848,064.
`
`Publication Classification
`
`(51)
`
`Int. CI? ...................................................... H04M 3/00
`
`(52) U.S. Cl. ........................... 455/419; 455/418; 455/420
`
`(57)
`
`ABSTRACT
`
`A wireless communication system includes a system back(cid:173)
`bone, a host computer coupled to the system backbone, at
`least one base station coupled to the system backbone, the at
`least one base station including a base station transceiver for
`communicating wirelessly with mobile devices within the
`system, and at least one mobile device having a mobile
`device transceiver for communicating wirelessly with the
`host computer on the system backbone via the at least one
`base station. The at least one mobile device includes a
`software update schedule table for providing one or more
`times at which the mobile device is to inquire and obtain
`available software upgrades. Entries in the software update
`schedule table may be made manually through a user input
`associate with the at least one mobile device or wirelessly
`through communications received from the host computer.
`In the event the mobile device is in a sleep mode during a
`scheduled time for conducting an inquiry as to whether any
`upgrades of operating software is available, a processor of
`the mobile device is configured to temporarily place the
`mobile device in a fully operation mode until a process of
`determining and obtaining any upgrades operating software
`is complete.
`
`20"\
`
`OTHER LAN
`DEVICES,
`E.G., WORK
`TERMINALS
`
`30
`
`31
`
`Samsung Exhibit 1020 Page 00001
`
`

`
`'"""'
`>
`00
`'"""'
`---l
`'0
`N
`
`'"""' -c c
`N c c
`
`'JJ.
`Cj
`
`00
`N
`
`'"""' 0 ......,
`~ .....
`'JJ. =(cid:173)~
`'"""'
`N c c
`'"""' ~
`'"""'
`:-"
`I")
`0
`
`.... 0 =
`0' -....
`~
`.... 0 =
`~ 't:l -....
`~ = .....
`~ .....
`""C
`
`~ .....
`
`I")
`
`~ .....
`
`I")
`
`/
`I
`i
`J
`:
`\
`\
`\
`\
`..
`\
`\
`
`/
`
`//
`•'
`,/
`/
`
`,/
`
`,i'1
`
`/ ___ /
`
`32
`
`36
`
`\
`58\
`•,
`\
`\\
`
`............. ..
`
`....... ...
`
`'•,
`
`............ ...
`
`........ ..
`
`36
`
`TERMINAL
`
`MOBILE
`
`•'
`,,
`.. .. ~
`
`,,/
`
`,.
`,/"
`,'
`,/.-~-----··-----.............. .
`
`58
`
`/,.,"
`
`/,, .. '
`
`36
`
`I
`
`Fig. 1
`
`31
`
`FTPSERVER
`
`30
`
`HOST
`
`s
`
`/
`./
`
`............ _,...,_ ............ "
`
`•• .....
`
`STATION
`
`BASE
`
`... ,
`··.,""'
`
`'·\
`\.
`
`26
`
`\
`\
`\
`
`,l
`/
`i
`32}
`\
`i
`\
`\.,
`
`'
`
`........
`
`\
`\
`\
`'··, _,34~i
`.. ,
`t
`I
`'\~,
`'
`, '\,
`I
`';/
`/'
`......
`·· .. ,
`/
`
`,/
`,,,..
`
`28
`
`,/
`......
`/'
`,/
`/
`
`.,__
`
`'•
`.. ._.
`\.....
`
`'
`'•,
`......
`..
`.... <
`
`"-. 34
`
`,/
`
`,/
`
`,./\.
`
`'
`\
`\
`58 \\
`
`'
`
`"·-.._.,.
`
`'' ...
`
`, ........ ~---~··-·· .......................... ..
`
`'"'-·...........
`
`,,, .... '
`
`"'',,,
`
`/
`
`,,''
`
`,,l
`, .. //
`
`/
`
`,,"
`
`~,,
`
`,/
`...
`.... --.......... ~---.. :;,..,:............
`
`,,'"
`
`TERMINALS
`E.G., WORK
`DEVICES,
`OTHER LAN
`
`37
`
`/
`,/
`
`.. .............. ""
`
`'
`' .....................
`
`24 '··
`
`......
`22 "\ '•.,
`
`STATION
`
`BASE
`
`26
`
`STATION
`
`WIRELESS
`
`BASE
`
`32
`
`\
`
`/
`
`,
`,....
`
`'
`••••
`~.
`...... ~
`'\\
`\.\
`\
`~
`\
`\
`.
`\
`i
`\
`;'
`!
`!
`f
`/
`I
`,
`j'
`/,,....
`
`···,· •. ,_
`
`,.,... .. ,'
`/
`
`'
`'·· ··-··-------
`... ~...........
`
`···· .• ,
`.
`·· .. ,
`
`s
`
`\,
`
`20 "'\
`
`Page 00002
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 2 of 28
`
`US 2001!0029178 A1
`
`DISPLAY
`
`.--46
`
`DISPLAY
`DRIVER
`
`48
`
`54
`
`58
`
`40
`
`50
`
`~r---~PROCESSOR~--~MEMORY
`
`42
`
`USER
`INPUT
`DEVICE
`
`BAR
`CODE
`READER
`
`44
`
`Fig. 2
`
`Page 00003
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 3 of 28
`
`US 2001/0029178 A1
`
`64
`
`66
`
`68
`
`1/0
`
`XCEIVER
`
`70
`
`72
`
`24
`
`Fig. 3a
`
`Page 00004
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 4 of 28
`
`US 2001/0029178 A1
`
`31 \
`
`! 65
`
`PROCESSOR ~
`
`.. MEMORY v67
`
`~
`
`~.,
`
`XC ElVER
`
`v11
`
`I
`
`v73
`
`)
`~
`
`l
`l
`
`24
`
`Fig. 3b
`
`Page 00005
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 5 of 28
`
`US 2001/0029178 A1
`
`Bootptab Table:
`
`Mobile Terminal
`Hardware Address
`Mobile Terminal1
`Mobile Terminal2
`Mobile Terminal 3
`
`. . .
`
`Mobile Terminal X
`
`Internet Protocol (IP)
`Address
`IP1
`IP2
`IP3
`. . .
`lpx
`
`Boot File
`(Package Name)
`Package A
`Package B
`Package C
`...
`Package X
`
`Fig. 4
`
`Page 00006
`
`

`
`'"""'
`>
`00
`'"""'
`-..J
`'0
`N
`
`'"""' -c c
`N c c
`
`'JJ.
`Cj
`
`00
`N
`0 ......,
`0'1
`~ .....
`'JJ. =(cid:173)~
`'"""'
`N c c
`'"""' ~
`'"""'
`:-'"
`I")
`0
`
`.... 0 =
`0' -....
`~
`.... 0 =
`~ 't:l -....
`~ = .....
`~ .....
`""C
`
`~ .....
`
`I")
`
`~ .....
`
`I")
`
`-~-
`
`:
`
`ROM/RAM
`
`FTPPath Type
`
`Memory, Mode
`Version 10, Req. File Name Mobile Ter. Path
`
`ftppath An ...
`...
`...
`ftppath A2 ...
`...
`ftppath A1
`
`_ fil~na.me An_ J!lpatbAn __ _ __
`
`filename_A2 mpath·A2
`filename_A 1 mpathA1
`
`replace
`6.2,200K8,
`
`Package A
`
`Fia. 5b
`
`Name
`Package
`Fig. 5a
`
`Package Definition Files:
`
`RAM
`RAM
`
`ROM
`
`RAM
`ROM
`
`---RAM
`
`ROM
`ROM
`
`ftppath z_n ~-----
`
`...
`. ..
`...
`...
`
`ftppath Z2
`ftppath Z1
`
`ftppath 8n _ ... _ _ __ _BOM
`
`...
`...
`ftppath 82 ...
`...
`ftppath 81
`
`-· ------~---------~le!name_Zn mpath Zn ____
`replace
`1.9, 320K8,
`
`.
`
`filename_Z2 mpath Z2
`filename_Z1 mpathZ1
`
`filename_.82 mpath 82
`filename_81 mpath 81
`
`_ _____ _ filename 8n m~h 8n
`fail safe
`A3, 150K8,
`
`--
`
`PackageZ
`
`Fig. 5d
`
`Package 8
`
`Fig. 5c
`
`Page 00007
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 7 of 28
`
`US 2001!0029178 A1
`
`32
`
`90
`
`TX
`
`RCV
`
`92
`
`88
`
`86
`
`PROCESSOR14---e--+~ MEMORY
`
`84
`
`82
`
`XCEIVER
`
`24
`
`Fig. 6
`
`Page 00008
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 8 of 28
`
`US 2001/0029178 A1
`
`36
`
`30 -...... HOST
`COMPUTER
`
`Fig. 7(a)
`
`/ 103
`/ 102
`HEADER HARDWARE
`ADDRESS
`
`/ 104
`
`BOOT REQUEST
`INFO
`
`100/
`
`110 "\,
`
`Fig. 7(b)
`
`/ 112 L 113
`/ 111
`IP
`HEADER ADDRESS
`
`PACKAGE
`NAME
`
`£ 114
`BOOT
`RESPONSE INFO
`
`118 "\,
`
`Fig. 7(c)
`
`£ 122
`/ 120
`/ 121
`PACKAGE VERSION REQUEST FIELD
`HEADER
`NAME
`
`124"\,
`
`Fig. 7(d)
`
`/ 125
`HEADER
`
`/ 126
`PACKAGE
`NAME
`
`/ 127
`VERSION INDICATOR
`
`Bootp
`Request
`Packet
`
`Bootp
`Response
`Packet
`
`Version
`Request
`Packet
`
`Version
`Response
`Packet
`
`FileName
`Packet
`
`2
`-r-
`
`-9
`
`12s "\, ,...-----'-L-1
`Fig. 7(e) HEADER
`COMPRAISON RESULT FIELD
`L---~----------------------~
`
`
`
`------L'---13-3--,
`
`Page 00009
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 9 of 28
`
`US 2001/0029178 A1
`
`! 132
`131
`130\ ...-Lf----r------'-L----1
`Fig. 7(f) IHEADERI
`FILE REQUEST
`
`134~
`Fig. 7(g) 'HEADER!
`
`[_135
`
`/136
`
`FILE
`
`130
`
`[131
`
`Fig. 7(~ 'HEADER!
`
`•
`•
`•
`
`/132
`
`FILE #N REQUEST
`
`134
`
`I 135
`Fig. 7(~ IHEADERI
`
`f 136
`
`FILE#N
`
`File
`Request
`Packet
`
`Ria
`Packet
`
`File#N
`Request
`
`File#N
`Packet
`
`Page 00010
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 10 of 28
`
`US 2001!0029178 A1
`
`150
`
`152
`
`157
`
`NO
`
`YES
`
`Fig. 8(a)
`
`CONTINUED ON FIG.
`B(b)
`
`Page 00011
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 11 of 28
`
`US 2001/0029178 A1
`
`CONTINUED ON FIG. 8(a)
`
`166
`
`NO
`
`END
`
`162
`
`Fig. 8(b)
`
`Page 00012
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 12 of 28
`
`US 2001/0029178 A1
`
`NO
`
`202
`
`203
`
`NO
`
`205
`
`TRANSMIT BOOTp RESPONSE
`
`TRANSMIT VERSION REQUEST PACKET
`
`YES
`
`TRANSMIT FILE NAME
`
`END
`
`Fig~ 9
`
`Page 00013
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 13 of 28
`
`US 2001/0029178 A1
`
`START
`
`NO
`
`210
`
`YES
`
`TRANSMIT
`FILE PACKET
`
`Fig. 10
`
`Page 00014
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 14 of 28
`
`US 2001/0029178 A1
`
`NO
`
`TRANSMIT SOFTWARE
`AVAILABILITY REQUEST
`
`NO
`
`256
`
`YES
`
`DISPLAY LIST OF AVAILABLE PACKAGE NAMES;
`PROMPT USER TO SELECT PACKAGE NAME
`
`TRANSMIT USER
`SELECTED PACKAGE
`NAME IN PACKAGE
`REQUEST PACKET
`
`258
`
`NO
`
`Fig. 11
`
`Page 00015
`
`

`
`'"""'
`>
`00
`'"""'
`-..J
`'0
`N
`'"""' -c
`c
`N c c
`
`'JJ.
`Cj
`
`Fig. 12
`
`WAN I I WAN ~297
`
`HOST
`
`298-JFTP SERV.
`
`00
`N
`0 ......,
`'"""' Ul
`~ .....
`=-~
`'JJ.
`'"""'
`N c c
`'"""' ~
`'"""'
`:-'"
`I")
`0
`0 =
`....
`~ .....
`0' -....
`26,~ ~/26 =
`=
`.... 0
`~ .....
`'t:l -....
`>
`~ = .....
`~ .....
`""C
`
`I")
`
`""C
`
`I")
`
`'t:l
`
`I
`58
`
`I a •"on r=
`
`I
`
`36 ""'-
`
`I .r36
`
`..
`
`I
`
`-
`
`31'
`
`;;iU'
`
`/
`
`I
`
`~
`
`208
`
`\
`
`~
`
`295
`
`\
`
`~v
`
`31,
`
`I h }
`
`S~.~~ HOST
`
`~ i I
`
`20A
`
`l/26
`
`l:l6.~1:
`
`I
`
`I
`
`1:11\QE:
`
`26--.. I
`
`32__-y
`
`-
`
`I
`
`36
`
`Page 00016
`
`

`
`""""
`>
`00
`""""
`-..J
`'0
`N
`
`"""" -c c
`N c c
`
`'JJ.
`Cj
`
`00
`N
`0 ......,
`"""" 0'1
`~ .....
`'JJ. =(cid:173)~
`""""
`N c c
`!""
`""""
`!"""
`I")
`0
`
`.... 0 =
`0' -....
`~
`.... 0 =
`~ 't:l -....
`~ = .....
`~ .....
`""C
`
`~ .....
`
`I")
`
`~ .....
`
`I")
`
`RAM
`
`ROM
`ROM
`
`__ ROM ___
`
`RAM
`RAM
`
`~------
`
`ROM
`
`RAM
`ROM
`
`--
`
`-
`
`...
`. ..
`...
`...
`
`...
`. ..
`...
`...
`...
`
`...
`...
`...
`...
`...
`
`I
`
`ROM/RAM
`
`Type
`
`hpath Zn_
`
`~lename Zn ~Q~tt1_ Zn _ _
`
`hpath Z2
`hpath Z1
`
`filename_Z2 mpathZ2
`lfilename_Z1 mpath Z1
`
`.
`
`hpath ~n
`
`filename 8n mpath Bn
`
`.
`
`hpath B2
`hpath 81
`
`filename_82 mpath 82
`filename_B1 mpath 81
`
`~t:>_ath An
`
`W.lename An mpathAn
`
`hpathA2
`hpathA1
`
`filename_A2 mpathA2
`filename_A1 mpathA1
`
`replace
`1.9, 320K8,
`
`PackageZ
`
`Fig. 13d
`
`-~--~
`
`fail safe
`A3, 150KB,
`
`Package 8
`
`Fig. 13c
`
`~----
`
`replace
`6.2,200KB,
`
`Package A
`
`Fia. 13b
`
`Memory, Mode
`Version 10, Req. File Name Mobile Ter. Path Host Path
`
`Name
`Package
`Fig. 13a
`
`Package Definition Files:
`
`Page 00017
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 17 of 28
`
`US 2001/0029178 A1
`
`36
`
`30 -............
`
`HOST
`COMPUTER
`
`Fig. 14(a)
`
`I 303
`I 302
`HEADER HARDWARE
`ADDRESS
`
`£ 304
`
`BOOT REQUEST
`INFO
`
`Bootp
`Request
`Packet
`
`300/
`
`310 "\,
`
`L311
`
`Fig. 14(b)
`
`HEADER
`
`lP
`ADDRESS
`
`L 312
`
`313
`
`I
`PACKAGE.
`NAME
`
`£ 314
`
`BOOT
`RESPONSE INFO
`
`Bootp
`Response
`Packet
`
`318 "\,
`
`Fig. 14(c)
`
`HEADER
`
`I 320
`
`I 321
`PACKAGE
`NAME
`
`I 322
`
`PACKAGE REQUEST INFO
`
`Package
`Request
`Packet
`
`324 "\,
`
`I 326
`I 325
`r---1~-r--:P::-:A:-::;C~KA~G;::;;E;:-D~E;::;F::;:IN'"ITI~O~Nr;Fiilli;'E-;;C:;:;O:uN:nTEi5N:MT::c;S:--,
`Fig. 14(d) HEADER
`{INCLUDING VERSION INDICATOR) FOR
`CORRESPONDING PACKAGE NAME
`
`Package
`Definition
`Packet
`
`Page 00018
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 18 of 28
`
`US 2001/0029178 A1
`
`330\
`[331
`Fig. 14(e) JHEADERJ
`
`/332
`
`FILE#1 REQuEsT
`
`334\,
`
`Fig. 14(f) I HEADER I
`
`[335
`
`330
`
`Fig. 14( i> I HEADER I
`
`/~331
`
`334
`
`;r335
`
`Fig. 14~) IHEADERI
`
`/336
`
`FILE#1
`
`•
`•
`•
`
`/332
`
`FILE #N REQUEST
`
`[336
`
`FILE#N
`
`File#1
`Request
`Packet
`
`File#1
`Packet
`
`File#N
`Request
`
`File#N
`Packet
`
`Page 00019
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 19 of 28
`
`US 2001/0029178 A1
`
`350
`
`INITIATE BOOT-UP
`
`TRANSMIT BOOTp REQUEST
`
`352
`
`NO
`
`NO
`
`CONTINUED ON FIG.
`15(b)
`
`Fig.
`15(a)
`
`Page 00020
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 20 of 28
`
`US 2001/0029178 A1
`
`CONTINUED ON FIG. 15(a)
`
`NO
`
`366
`
`360
`
`NO
`
`Fig. 15(b)
`
`Page 00021
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 21 of 28
`
`US 2001/0029178 A1
`
`HOST
`
`TRANSMIT BOOTp RESPONSE
`
`NO
`
`402
`
`NO
`
`406
`
`TRANSMIT PACKAGE DEFINITION INFORMATION
`CORRESPONDING TO PACKAGE NAME
`
`NO
`
`Fig. 16
`
`Page 00022
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 22 of 28
`
`US 2001!0029178 A1
`
`DISPLAY
`
`...-
`
`- 46
`
`DISPLAY v- 48
`DRIVER
`
`(SOO
`
`SYSTEM
`CLOCK
`
`t--t-----.! PROCESSOR 11---41 MEMORY
`
`TX
`
`I
`
`USER
`..------.. 42 --- INPUT
`606
`I BATTERY
`---1
`DEVICE
`
`I
`
`BAR
`CODE ~ 44
`READER
`
`Fig. 17
`
`Page 00023
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 23 of 28
`
`US 2001/0029178 A1
`
`r-510
`
`MONTH
`
`DAY
`
`YEAR
`
`532
`
`534
`
`536
`
`r-525
`
`HOUR
`
`MIN
`
`SEC
`
`542
`
`544
`
`546
`
`Fig. 18
`
`Page 00024
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 24 of 28
`
`US 2001/0029178 A1
`
`(550
`
`22:00
`01:00
`
`Daily
`01/01/2002
`
`~
`
`""-
`
`556
`
`558
`
`)
`
`552
`
`\_
`
`554
`
`Fig. 19
`
`Page 00025
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 25 of 28
`
`US 2001/0029178 A1
`
`(
`
`(
`
`I I
`
`I
`,~
`
`L - . - - - ' - - - - - - - ' 1 Host
`
`Fig. 20 (a) MT1
`
`Fig. 20 (b) MT2
`
`(
`
`602
`
`604
`
`I
`612 ~
`I
`614
`y
`I 610
`1
`(
`:1 ,...._ --'------.., ---,1
`I
`~--------------~'
`I
`I
`I
`I
`,-t 600
`I
`,---1-r____,.--~-r------., '
`:
`I L - - - -1 - . . - - -_ , J : Host
`I
`I
`I
`612 .~ 610
`614
`{
`I
`(
`,
`'I r-----L----,Ij"""--~1
`:
`I
`
`I
`
`Fig. 20 (c) MT3
`
`I
`I
`'
`I
`, ...
`I
`I
`1
`
`: I
`
`602
`
`(
`
`614
`(
`
`604
`
`(
`
`I
`I aoo
`.,..-,--
`, i
`I I
`1 Host
`I
`612 ~
`y
`I e1o
`I
`I
`I
`I
`
`(
`
`Page 00026
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 26 of 28
`
`US 2001/0029178 A1
`
`,--- 625
`
`Fig. 20 (d) MT1
`
`630 632
`C L
`I
`
`634
`(
`
`Host
`
`625
`
`I
`I
`
`I
`I
`
`Host
`
`I
`I
`,(-- 625
`
`I
`I
`
`Host
`
`634 r
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`MT2
`
`MT3
`
`630 632
`[
`[
`I
`
`(
`
`630 632
`[
`[
`I
`
`634
`(
`
`Page 00027
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 27 of 28
`
`US 2001/0029178 A1
`
`START
`
`650
`
`(
`
`ARE ENTRIES MADE TO
`SCHEDULING TABLE?
`
`655
`
`UPDATE
`SCHEDULING
`TABLE
`
`665
`
`IS REQUEST FOR
`SCHEDULING TABLE
`REC'D?
`
`y
`
`TRANSMIT
`SCHEDULING
`TABLE REPLY
`PACKET
`
`N
`
`680
`
`Fig. 21
`
`Page 00028
`
`

`
`Patent Application Publication Oct. 11, 2001 Sheet 28 of 28
`
`US 2001/0029178 A1
`
`START
`
`N
`
`DOES HOST DESIRE
`TO OBTAIN MOBILe
`SCHEDULING TABLE?
`
`TRANSMIT SCHEOUUNG TABLE
`REQUEST PACKET
`
`705
`
`TIME OUT PERIOD
`EXPIRED?
`
`y
`
`N
`
`Fig. 22
`
`Page 00029
`
`

`
`US 2001/0029178 A1
`
`Oct. 11, 2001
`
`1
`
`WIRELESS SOFTWARE UPGRADES WITH
`VERSION CONTROL
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`
`[0001] This application is a continuation-in-part of co(cid:173)
`pending, commonly assigned U.S. patent application Ser.
`No. 09/023,857, filed on Dec. 10, 1998 and entitled "Wire(cid:173)
`less Software Upgrades with Version Control" which is a
`continuation-in-part of co-pending, commonly assigned
`U.S. patent application Ser. No. 09/023,857, filed Feb. 13,
`1998 and entitled "Wireless Software Upgrades with Version
`Control" which is a continuation of commonly assigned U.S.
`Pat. No. 5,848,064, issued Dec. 8, 1998 and entitled "Wire(cid:173)
`less Software Upgrades with Version Control".
`
`TECHNICAL FIELD
`
`[0002] The present invention relates generally to wireless
`software upgrades in wireless communication systems.
`More particularly, the present invention relates to a system
`and method in which software upgrades are provided wire(cid:173)
`lessly to mobile devices upon detecting that software cur(cid:173)
`rently in the mobile devices is outdated.
`
`BACKGROUND OF THE INVENTION
`
`[0003]
`In recent years, the use of wireless (e.g., cellular)
`communication systems having mobile devices which wire(cid:173)
`lessly communicate with a network, such as a local area
`network (LAN) and a wide area network (WAN), has
`become widespread. Retail stores and warehouses, for
`example, may use cellular communications systems to track
`inventory and replenish stock. The transportation industry
`may use such systems at large outdoor storage facilities to
`keep an accurate account of incoming and outgoing ship(cid:173)
`ments. In manufacturing facilities, such systems are useful
`for tracking parts, completed products, defects, etc.
`
`[0004] A typical cellular communication system includes
`a number of fixed base stations or access points intercon(cid:173)
`nected by a cable medium often referred to as a system
`backbone. Also included in many cellular communication
`systems are intermediate base stations which are not directly
`connected to the system backbone. Intermediate base sta(cid:173)
`tions, often referred to as wireless base stations or repeaters,
`increase the area within which base stations connected to the
`system backbone can communicate with mobile devices.
`Unless otherwise indicated, the term "base station" will
`hereinafter refer to both base stations hardwired to the
`network and wireless base stations.
`
`[0005] Associated with each base station is a geographic
`cell. A cell is a geographic area in which a base station has
`sufficient signal strength to transmit data to and receive data
`from a mobile device with an acceptable error rate. Typi(cid:173)
`cally, base stations will be positioned along the backbone
`such that the combined cell area coverage from each base
`station provides full coverage of a building or site. Thus,
`mobile devices roaming within such an area can maintain
`continuous communication with a host computer or other
`device situated along the system backbone.
`
`[0006] Each mobile device roaming within a building or
`site is typically preloaded with software to provide both
`application level and operational level instructional code
`
`(referred to generally herein as "operating software"). The
`mobile device includes one or more processors which
`execute the operating software, thereby allowing the mobile
`device to carry out its appropriate functions. The software is
`stored in memory in the mobile device and may be executed
`at any time depending on the particular operational needs of
`the mobile device.
`
`[0007] Due to changing market needs and advancements
`in technology, for example, it often happens that the soft(cid:173)
`ware which is preloaded into a mobile device becomes
`outdated prior to the time the mobile hardware device
`becomes obsolete. Therefore, a number of methods for
`upgrading the operating software stored in a mobile device
`have been developed.
`
`[0008] One known method for updating software in a
`mobile device is by physically connecting the mobile device
`to a computer capable of upgrading the software. In order to
`upgrade software using this technique it is typically neces(cid:173)
`sary to employ one or more service technicians to assist in
`connecting the mobile device to the computer with a cable
`or the like and executing the software upgrade routine. This
`results in down time for the mobile device and related
`service costs.
`
`[0009] Another known method of updating the operating
`software in a mobile device involves wirelessly transmitting
`software upgrades to the mobile device. When executing a
`wireless software upgrade, a mobile device transmits a
`request to the host computer (via a base station) requesting
`that the host computer transfer the upgraded software. In
`order to ensure a mobile device has the most recent version
`of the operating software, each program within the operating
`software must be downloaded periodically from the host
`computer and stored in the mobile device. Unfortunately, the
`periodic transfer of upgraded operating software to the
`mobile device can be extremely time consuming and
`becomes increasingly more time consuming as the number
`of mobile devices within the system increases. Furthermore,
`since there is no way to determine if software has been
`changed since the previous time the mobile device software
`has been upgraded, time is frequently wasted updating the
`mobile device operating software with the same version of
`software which already exists in the mobile device.
`
`[0010]
`In view of the aforementioned shortcomings asso(cid:173)
`ciated with existing systems and techniques for upgrading
`mobile device operating software, there is a strong need in
`the art for a system and method which does not require
`significant down time or service costs. Moreover, there is a
`strong need in the art for a system and method which avoids
`the inefficiencies associated with conventional wireless
`techniques for upgrading the mobile device operating soft(cid:173)
`ware.
`
`SUMMARY OF THE INVENTION
`
`[0011] A wireless communication system and method is
`provided in which software upgrades are wirelessly trans(cid:173)
`mitted to a mobile device based on a determination of
`whether such an upgrade is necessary.
`
`[0012] According to one embodiment, a wireless commu(cid:173)
`nication system includes a system backbone, a host com(cid:173)
`puter coupled to the system backbone, at least one base
`station coupled to the system backbone, the at least one base
`
`Page 00030
`
`

`
`US 2001/0029178 Al
`
`Oct. 11, 2001
`
`2
`
`station including a base station transceiver for communicat(cid:173)
`ing wirelessly with mobile devices within the system, and at
`least one mobile device having a mobile device transceiver
`for communicating wirelessly with the host computer on the
`system backbone via the at least one base station. The at
`least one mobile device includes a software update schedule
`table for providing one or more times at which the mobile
`device is to inquire and obtain available software upgrades.
`By providing the at least one mobile device with a software
`update schedule table, the at least one mobile device can be
`configured to obtain wireless software upgrades at prede(cid:173)
`termined times. For example, such predetermined times may
`correspond to times when the host computer is at a low-load
`level. In this manner, the amount of activity the host
`computer is subjected to at higher activity or peak times is
`reduced.
`[0013] Entries in the software update schedule table may
`be made manually through a keypad or other user input
`associate with the at least one mobile device or wirelessly
`through communications received from the host computer.
`By providing for wireless updates of the software update
`schedule table, the host computer can, for example, schedule
`updates with multiple mobile devices after a known update
`of the software in the host computer or FTP server is
`completed. Preferably, wireless updates provided by the host
`computer are such as to schedule each mobile device to
`correspond with the host computer and/or FTP server in
`sequential, non-overlapping time intervals during low-load
`periods so as to minimize wireless interference and conten(cid:173)
`tion in obtaining access to the upgrades software files.
`[0014]
`In the event the mobile device is in a sleep mode
`during a scheduled time for conducting an inquiry as to
`whether any upgrades of operating software is available, a
`processor of the mobile device is configured to temporarily
`place the mobile device in a fully operation mode until a
`process of determining and obtaining any upgrades operat(cid:173)
`ing software is complete. In this manner, updates may be
`scheduled at low activity periods without the need for an
`operator to physically activate the mobile device to a full
`power state.
`[0015]
`In accordance with one particular aspect of the
`invention, a wireless communication system includes a
`system backbone, a host computer coupled to the system
`backbone, at least one base station coupled to the system
`backbone, the at least one base station including a base
`station
`transceiver for communicating wirelessly with
`mobile devices within the system, and at least one mobile
`device having a mobile device transceiver for communicat(cid:173)
`ing wirelessly with the host computer on the system back(cid:173)
`bone via the at least one base station. A method of operation
`includes the steps of maintaining in the at least one mobile
`device a software update schedule table indicating at least
`one time at which the at least one mobile device is to inquire
`as to whether an upgrade of operating software is available,
`determining in the at least one mobile device whether the
`software update schedule table indicates it is time to inquire
`as to whether an upgrade of operating software is available,
`in the event the at least one mobile device determines from
`the software update schedule table that it is time to initiate
`obtaining the upgrade of operating software, the at least one
`mobile device determining whether a version of the oper(cid:173)
`ating software stored in the at least one mobile device is a
`current version of the operating software, and wirelessly
`
`updating the operating software stored in the at least one
`mobile device if it is determined that the operating software
`stored in the at least one mobile device is not the current
`verswn.
`[0016]
`In accordance with another particular aspect of the
`invention, a wireless communication system is provided.
`The wireless communication system includes a system back(cid:173)
`bone, a host computer coupled to the system backbone, at
`least one base station coupled to the system backbone, the at
`least one base station including a base station transceiver for
`communicating wirelessly with mobile devices within the
`system, at least one mobile device having a mobile device
`transceiver for communicating wirelessly with the host
`computer on the system backbone via the at least one base
`station, and wherein the at least one mobile device includes
`a software update schedule table providing at least one time
`at which the at least one mobile device is to determine
`whether to selectively update mobile device operating soft(cid:173)
`ware with at least one of the host computer and an FTP
`server coupled to the system backbone based on an initial
`comparison in accordance with a predetermined criteria
`indicative of whether updating of the mobile device oper(cid:173)
`ating software is appropriate.
`[0017]
`In accordance with still another aspect of the
`invention, a mobile device is provided. The mobile device
`includes a processor, a memory coupled to the processor, a
`transceiver for wirelessly transmitting and receiving infor(cid:173)
`mation, and a software update schedule table stored in the
`memory, the software update schedule table providing at
`least one entry indicating a time at which the at least one
`mobile device is to determine whether to selectively update
`mobile device operating software with at least one of a host
`computer and an FTP server coupled to a system backbone
`based on an initial comparison in accordance with a prede(cid:173)
`termined criteria indicative of whether updating of the
`mobile device operating software is appropriate.
`
`[0018] To the accomplishment of the foregoing and related
`ends, the invention, then, comprises the features hereinafter
`fully described and particularly pointed out in the claims.
`The following description and the annexed drawings set
`forth in detail certain illustrative embodiments of the inven(cid:173)
`tion. These embodiments are indicative, however, of but a
`few of the various ways in which the principles of the
`invention may be employed. Other objects, advantages and
`novel features of the invention will become apparent from
`the following detailed description of the invention when
`considered in conjunction with the drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0019] FIG. 1 is a block diagram of a wireless commu(cid:173)
`nication system in accordance with an exemplary embodi(cid:173)
`ment of the present invention;
`[0020] FIG. 2 is a block diagram of a mobile terminal in
`accordance with the present invention;
`[0021] FIG. 3a is a block diagram of a host computer in
`accordance with the present invention;
`[0022] FIG. 3b is a block diagram of an FTP server in
`accordance with the present invention;
`[0023] FIG. 4 illustrates the contents of a bootptab table
`stored in memory within the host computer, the bootptab
`
`Page 00031
`
`

`
`US 2001/0029178 Al
`
`Oct. 11, 2001
`
`3
`
`table including the internet protocol (IP) addresses and boot
`file package names associated with each mobile terminal in
`the system in accordance with the present invention;
`
`[0024] FIG. Sa illustrates the general format of the pack(cid:173)
`age definition files stored in memory within the host com(cid:173)
`puter, wherein each package definition file includes infor(cid:173)
`mation identifying operating software to be used by mobile
`terminals within the system and information indicating the
`version of the operating software in accordance with the
`present invention;
`
`[0025] FIGS. 5b, 5c and 5d represent exemplary package
`definition files in accordance with the present invention;
`
`[0026] FIG. 6 is a block diagram of a base station in
`accordance with the present invention;
`
`[0027] FIGS. 7(a)-7(e) represent schematically a process
`in which information packets are exchanged between a
`mobile terminal and the host computer (via a base station) in
`order to identify and transfer upgraded operating software in
`accordance with an exemplary embodiment of the present
`invention;
`
`[0028] FIGS. 7(j)-7(i) represent schematically a process in
`which information packets are exchanged between a mobile
`terminal and the FTP server (via a base station) in order to
`download updated operating software in accordance with an
`exemplary embodiment of the present invention;
`
`[0029] FIG. Sa and Sb is a system flowchart suitable for
`programming a mobile terminal to request and download
`upgraded operating software in accordance with the present
`invention;
`
`[0030] FIG. 9 is a system flowchart suitable setting up the
`host computer to respond to the mobile terminal in accor(cid:173)
`dance with the present invention;
`
`[0031] FIG. 10 is a system flowchart suitable for setting
`up the FTP server in accordance with the present invention;
`
`[0032] FIG. 11 is a system flowchart suitable for program(cid:173)
`ming the mobile terminal and setting up the host computer
`and FTP server to enable a user to select from among
`different packages of operating software available from the
`FTP server in accordance with the present invention;
`
`[0033] FIG. 12 is a block diagram of a WAN based system
`in accordance with the present invention;
`
`[0034] FIG. 13a illustrates the general format of the
`package definition files stored in memory within the host
`computer, wherein each package definition file includes
`information identifying operating software to be used by
`mobile terminals within the system and information indi(cid:173)
`cating the version of the operating software in accordance
`with an alternative embodiment of the present invention;
`
`[0035] FIGS. 13b, 13c and 13d represent exemplary pack(cid:173)
`age definition files in accordance with an alternative
`embodiment of the present invention;
`
`[0036] FIGS. 14(a)-14(h) represent schematically a pro(cid:173)
`cess in which information packets are exchanged between a
`mobile terminal and the host computer (via a base station) in
`order to identify and transfer upgraded operating software in
`accordance with an alternative embodiment of the present
`invention;
`
`[0037] FIGS. 15(a)-15(b) are system flowcharts suitable
`for programming a mobile terminal to request and download
`upgraded operating software from the host computer in
`accordance with an alternative embodiment of the present
`invention;
`[0038] FIG. 16 is a system flowchart suitable setting up
`the host computer to respond to the mobile terminal seeking
`upgraded operating software in accordance with an alterna(cid:173)
`tive embodiment of the present invention;
`[0039] FIG. 17 is a block diagram of a mobile terminal in
`accordance with another alternative embodiment of the
`present invention;
`
`[0040] FIG. 18 is a representation of a date keeper and
`time keeper stored in memory of the mobile terminal of
`FIG. 17;
`
`[0041] FIG. 19 is a software update schedule table stored
`in memory of the mobile terminal of FIG. 17;
`
`[0042] FIGS. 20(a)-20(d) are diagrams depicting an
`exchange of data between the mobile terminal and the host
`computer in accordance with the another alternative embodi(cid:173)
`ment of the present invention;
`
`[0043] FIG. 21 is a flowchart depicting the operations of
`the mobile terminal of FIG. 17 in accordance with the
`another alternative embodiment of the present invention;
`and
`
`[0044] FIG. 22 is a flowchart depicting the operations of
`the host computer in accordance with the another alternative
`embodiment of the present invention.
`
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`[0045] The present invention will now be described with
`reference to the drawings wherein like reference numerals
`are used to refer to like elements throughout.
`
`[0046] As is mentioned ab

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket