`Bier
`
`54 PORTABLE COMPUTER FOR
`SHORTRANGE GRAPHICAL MULTIPARTY
`COMMUNICATION
`75 Inventor:
`Eric A. Bier, Los Altos, Calif.
`73 Assignee: Xerox Corporation, Stamford, Conn.
`21 Appl. No.: 113,881
`22 Filed:
`Aug. 30, 1993
`
`63
`
`Related U.S. Application Data
`Continuation of Ser. No. 703,221, May 20, 1991, aban
`doned.
`51) Int. Cl. ............................................... G09G 5/00
`
`52 U.S. C. ......
`
`8 & a
`
`w w
`
`u as
`
`- a d -
`
`- - - - 345/169
`
`58 Field of Search ............... 340/706, 707, 709, 712,
`340/716, 717; 178/18, 19; 434/322, 323, 336,
`337,339, 350; 370/95.1; 34.5/156, 169, 179;
`455/89,90, 74; 395/200 MS File
`References Cited
`U.S. PATENT DOCUMENTS
`4,30,317 1/1982 Nomura et al. ..................... 434/350
`4,394,649 7/1983 Suchoff et al. ...................... 340/706
`4,545,023 10/1985 Mizzi ................................... 340/712
`4,609,776 9/1986 Murakami et al. ................... 178/18
`4,644,352 2/1987 Fujii .................................... 340/712
`4,713,808 12/1987 Gaskill .
`4,794,634 12/1988 Torihata et al. ...................... 178/18
`5,027,198 6/1991 Yoshioka ............................... 178/18
`5,051,985 9/1991 Cidon et al. ................... 370/95.1 X
`5,150,954 9/1992 Hoff.
`5,159,713 10/1992 Gaskill .
`
`56)
`
`
`
`USOO5408250A
`Patent Number:
`11
`(45) Date of Patent:
`
`5,408,250
`Apr. 18, 1995
`
`5,168,271 12/1992 Hoff .
`5,239,466 8/1993 Morgan et al. ..................... 395/200
`FOREIGN PATENT DOCUMENTS
`European Pat. Off. .
`0321084A2 6/1989
`United Kingdom .
`2165679 4/1986
`United Kingdom .
`2206718 1/1989
`88/09091 11/1988
`WIPO :
`8905023 6/1989 WIPO ................................. 340/706
`90/16030 12/1990 WIPO .
`OTHER PUBLICATIONS
`Goldbacher, A. "EDV-Chinesisch kommt aus der
`Mode', Magazine Handhelt-Computer, May, 1991.
`“The Architecture of Vedeotex Systems' by Jan Giec
`sei, 1983, pp. 174–177.
`Primary Examiner-Jeffery Brier
`Attorney, Agent, or Firm-Townsend and Townsend
`Khourie and Crew
`ABSTRACT
`57
`A portable device for silent graphical communication.
`The device has a display screen on which a user may
`scribble notes and information using a stylus. These
`notes, which are then broadcast by the device, are re
`ceived by other similar devices and displayed on the
`screens of the other devices. User of the other devices
`can respond to the received information by scribbling
`their own notes. The ensuing conversations may be
`password protected.
`
`35 Claims, 20 Drawing Sheets
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 1
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 1 of 20
`
`5,408,250
`
`FIG. I.
`
`
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 2
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 2 of 20
`
`5,408,250
`
`Z9
`
`09
`
`ANOWBW
`
`79
`
`£ €H
`
`09
`
`09
`
`
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 3
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 3 of 20
`
`5,408,250
`
`
`
`
`
`MISSION LET W BE THE
`FIRST WORD (2 BITS)
`OF THE TRANSMISSION,
`LET tog BE THE HIGH
`ORDER TWO BITS OF W.
`OO
`
`
`
`
`
`
`
`
`
`
`
`
`
`1TC9
`IS 00 (WIS
`THE FIRST WORD
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`LET wa BE THE NEXT
`WORD AT THE TRANS
`MISSION.
`ET tog2
`BE was HIGH ORDER
`TWO BITS,
`
`
`
`
`
`
`
`
`
`
`
`LET CN
`(Currentindex)
`BE THE LAST TEN
`BITS OF W.
`
`DECODE THE LAST CLOW
`ORDER) TEN BITS OF W.
`CALL THE RESULT d.
`
`
`
`C9.
`IS 0 (W IS
`A WORD OF RELA-
`TIME COORD-
`
`
`
`LETAX = THE BITS dodds
`INTERPRETED AS A SIGNED
`INTEGER. UKEWSE
`
`g
`B
`
`AS A SIGNED NEGER.
`w2 BE THE NEXT WORD
`OF THE TRANSMISSION,
`LET tog2 BE W2'S HIGH
`ORDER TWO BITS,
`
`
`
`EXECUTE COMMAND
`ALGORTHM
`FIG, 4-7
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 4
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 4 of 20
`
`5,408,250
`
`
`
`GO
`3
`
`tog
`(a)- 2
`OO
`NO
`
`
`
`
`
`
`
`E. CurrentPOld BE THE CONCATENATION
`(LAST 5 BTS OF W)(LAST O BITS OF W2)
`(LAST 10 BITS OF w8). LET
`Currentindex BE THE INDEX OF
`CurrentPod (CREATE THIS IF TIS
`NOT FOUND IN HASH TABLE b)
`vess. YES
`WORD AT THE RANS
`MISSION. ET tog3
`3
`BE w8S HIGH ORDER
`OO
`TWO BITS,
`GNORE FURTHER RANS
`MISSION DAA UN THE
`OVER COMMAND IS
`HEARD OR A LONG PAUSE
`IS ENCOUNTERED, LET
`CurrentPCC BE O,
`
`
`
`
`
`Currentindex
`(Currentindex) Ond
`YCurrentindex) ol
`hove Volues?
`
`
`
`NO
`
`
`
`8
`
`YES
`E CX BEXCurrentindex) + Axl
`ET cy. BEYCurrentindex) + Ay
`Execute the Potpoint ACOrithm
`
`NO
`
`GO
`TO
`99
`
`
`
`ET CX = gx = Ax
`LET Cy = Cy + Ay
`Execute the Plot Point Algorith
`
`DECODE THE LOW
`ORDER TEN BITS OF
`W. CALL THE
`Risit added
`
`
`
`
`
`
`
`
`
`y = THE BITS
`YES dedido NTER
`PREED AS A
`SIGNED NEGER
`
`
`
`
`
`EXOurrentindex)--x
`El YCurrentindex) <-y
`
`
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 5
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 5 of 20
`
`5,408,250
`
`
`
`
`
`
`
`
`
`
`
`START
`POINT
`PLOT
`
`
`
`DO
`Currentindex
`CNCurrentindex)
`PN(CUrrentindex)
`BSCurrentindex) Ond
`DMCurrentindex)
`oil hove
`
`
`
`
`
`="folse" OR (Review
`Currentindex)="true"
`AND NeedReview (IN
`(CUrrentindex),
`CN(Currentindex)
`="true")
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`DRAW A BLACK CRCE OF
`DIAMETER BSCurrentindex)
`CENTERED ON POINT (cxcy)
`FROM PAGE PN(Currentindex)
`OF CONVERSATION
`CN(Currentindex)
`
`ERASE A CIRCLE OF
`DIAMETER BS(Currentindex)
`CENTERED ON POINT (cxcy)
`FROM PAGE PNCCurrentindex)
`OF CONVERSATION
`CN(Currentindex)
`
`FIG. 5
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 6
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 6 of 20
`
`5,408,250
`
`
`
`CUTentindex
`hoS O volue
`
`
`
`
`
`
`
`6OOOOOOOld
`(Recuest for
`
`YES
`
`dgdgd/d605=
`E6; is:
`NUMBER)
`
`
`
`
`
`
`
`
`
`ET CLRequest
`Currentindex)
`BE "true"
`
`intindex
`d2Cld
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 7
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 7 of 20
`
`5,408,250
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CNCurrentindex)
`HAS A
`
`
`
`
`
`ERASE ALL PXES OF
`PAGE PN(currentindex)
`OF CONVERSATION
`CN(currentindex)
`
`YES
`
`LET InfoRequest
`(currentindex) BE
`d4.d3d2CCC
`
`El BSCurrentindex)
`BE d4.d3d2d do AS AN
`UNSIGNED INTEGER.
`
`LET Review
`Currentindex) BE
`"true" ET PN
`(currentindex)
`BE d4.d3...dO
`
`
`
`
`
`do...d5
`OOOO (Review
`Commond)
`
`
`
`
`
`
`
`
`
`LET Review
`
`do...d5F
`o&id Na (GEF
`Currentindex)
`Review)
`BE d4.d O
`
`
`
`
`
`
`
`
`
`
`
`GO TO 59 AND
`EXECUTE OTHER
`COMMAND ALGORTHM
`
`
`
`FIG, 6-2
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 8
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 8 of 20
`
`5,408,250
`
`d?...d5
`OOlli (Over
`OndCut)
`
`
`
`
`
`
`
`
`
`REMOVE
`CurrentPOd
`FROM podist
`
`NO
`
`
`
`
`
`
`
`= THE NUMBER
`OF THIS
`PAD?
`
`YES
`EXECUTE
`TRANSMT
`ALGORTHM
`
`COMMAND
`
`SART
`OTHER
`COMMAND
`
`59
`
`
`
`
`
`
`
`
`
`69dBC7d5C
`- OOO or OO
`(Over OR
`OverAndOut)
`
`
`
`
`
`LET wa BE THE NEXT WORD
`OF THE TRANSMISSION.
`LET tag2 BE THE HIGH
`ORDER TWO BITS OF w?,
`
`
`
`
`
`LET w8 BE THE NEXT WORD
`OF THE TRANSMISSION.
`LET tag3 BE THE HIGH
`ORDER TWO BITS OF W.
`
`
`
`
`
`
`
`E nextPCd BE THE
`CONCAENATION OF
`(LOW ORDER 5 BTS OF W)
`LOW ORDER O BITS OF wa)
`LOW ORDER TO BITS OF W3)
`
`FIG, 6-3
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 9
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 9 of 20
`
`5,408,250
`
`SAR
`NTAZE
`TRANSMIT)
`
`
`
`
`
`
`
`
`
`ET gldine BE THE
`CURRENT TIME MINUS
`SECOND, LET
`rCW BE O.
`
`
`
`END
`NTAZE
`TRANSMT
`
`FIG. 7-7
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 10
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 10 of 20
`
`5,408,250
`
`280
`
`
`
`
`
`
`
`
`
`LET time BE THE
`CURREN TIME. LET
`e.g.
`
`
`
`
`
`
`
`
`
`
`
`
`
`249
`
`EXECUTE THE
`NORMAL POINT
`ALGORTHM
`278
`
`NO
`AVE USED UP
`OUR SHARE OF TME
`FOR THIS TRANS
`MISSION
`
`
`
`
`
`ELAPSEDNYES
`TIME >
`SEcgND
`
`YES
`
`S
`290
`
`284
`
`REBROADCAST
`OLD TRANSMISSIONS
`
`288
`
`TRANSMIT PAD NUMBER OF
`THIS PAD, TRANSM
`OverAndOut COMMAND
`NAMING THE PAD NUMBER
`A THE PAD THAT COMES
`AFTER THIS PAD ON podist.
`
`
`
`
`
`
`
`
`
`AN ACTIVE
`REQUEST FOR
`INFO 2
`
`NO
`
`ELAPSED
`TIME > 8O
`SECONDS
`
`YES
`
`NO
`
`286
`
`
`
`TRANSMT PAD NUMBER OF
`THIS PAD, TRANSMT
`"OVER" COMMAND NAMING
`THE PAD NUMBER AT THE
`PAD THAT COMES AFTER
`THIS PAD ON podist.
`
`FIG, 7-2
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 11
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 11 of 20
`
`5,408,250
`
`
`
`TRANSMT PAD NUMBER OF
`THIS PAD USING DATA FOR
`MAT. TRANSMIT CURRENT
`CONVERSAION NUMBERING
`USING DAIA FORMAT ON
`PAGE 3,
`
`
`
`
`
`
`
`
`
`NO
`
`
`
`
`
`
`
`
`
`DOES
`CURRENT
`CONVERSATION
`HAVE A PASS
`WORD?
`
`
`
`
`
`
`
`
`
`
`
`
`
`TRANSMT
`PAGE
`NUMBER
`COMMAND
`
`
`
`
`
`
`
`
`
`YES
`TRANSMIT PAGE NUMBER
`COMMAND WITH TS
`LAST O BITS ENCRYPTED
`
`THIS PAD
`CURRENTLY EN
`"DRAW MODE
`
`
`
`
`
`YES
`
`
`
`
`
`CONVERSATION
`HAS PASS
`WORD?
`
`
`
`
`
`
`
`
`
`
`
`
`
`TRANSMT
`"Crow"
`COMMAND
`
`TRANSMT BRUSH SZE COM
`MAND ABSOLUTE X COOR
`DINAE OF THE FIRST
`ELEMENT OF pointst
`ABSOLUTE y COORDINATE
`OF THE FIRST ELEMEN
`OF Oonist ALL IN
`DAA FORMAT. ET
`oLost BE (x,y).
`REMOVE THE FIRST
`ELEMENT OF Oointst.
`
`
`
`gldine--THE CURRENT TIME
`
`298
`
`FIG. 7-3
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 12
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 12 of 20
`
`5,408,250
`
`(3)
`
`TRANSMT "erose"
`COMMAND WITH
`S LAST O
`BITS ENCRYPTED,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`295
`
`293
`
`(6)
`
`TRANSMT "CrOW"
`COMMAND WITH
`TS LAST O
`BITS ENCRYPTED.
`
`
`
`TRANSMT BRUSH SZE,
`ABSOLUTE X COORDINAE
`OF THE PEN, ABSOLUTE
`y COORDINATE OF THE
`PEN COMMANDS ALL
`WITH THEIR LAST 10
`BITS ENCRYPTED,
`LET post BE (x,y)
`BEFORE ENCRYPTION
`REMOVE THE FIRST
`ELEMENT OF pointlist.
`
`
`
`
`
`TO
`298
`
`FIG, 7-4
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 13
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 13 of 20
`
`5,408,250
`
`249
`
`START
`NORMAL
`PONT
`
`LET p BE THE FIRST
`ELEMENT OF pointist
`
`
`
`
`
`250
`
`O
`DIFFERS
`IN CONVERSATION
`NUMBER PAGE NUMBER, MOD
`COMMAND OR BRUSH
`SZE FROM
`Post
`
`
`
`
`
`
`
`LET deltoX BE p'S COORD
`NATE MINUS Post'S X COOR
`DINATE. LET deltoy BE p'S
`y COORDINATE MINUS Post'S
`y COORDINATE, REMOVE
`p FROM pointist.
`
`
`
`
`
`
`
`254
`
`
`
`
`
`TRANSMT rcw (encrypt
`the lost O bits if
`this converSortion hos
`O possword).
`
`YES
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`TRANSMIT p'S CONVERSATION
`NUMBER F T DIFFERS FROM
`pLost'S, TRANSMT p'S
`PAGE NUMBER F T DIFFERS
`FROM post'S' TRANSMIT
`p'S MODE COMMAND
`("drow OR "erose') F. T
`DIFFERS FROM post's
`TRANSMIT p'S BRUSH SIZE
`IF IT DIFFERS FROM post'S
`(encrypt the lost lo bits
`of edch if this converso
`tion hoS O possword)
`
`FIG, 8-7
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 14
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 14 of 20
`
`5,408,250
`
`
`
`NO
`
`TRANSMT rCW.
`ET rCW BE O.
`
`
`
`
`
`
`
`
`
`272
`
`NO
`
`- CALL THE BITS OF
`rCW rr.0...r to
`
`
`
`
`
`
`
`TRANSMIT X COORONATE
`OF p AS AN ABSOLUTE
`COORONATE TRANSM
`y COORDINATE OF p AS
`AN ABSOLUTE COORONAE
`
`
`
`END
`NORMA
`POINT
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`TRANSM
`CW.
`
`LET row BE 10 <sign
`detto'Y2 <sign getox)
`detox deltoY OO OO
`WHERE Csign geitoxe IS
`F detox IS NEGATIVE
`O OTHERWISE AND KEWSE
`FOR <sign detoye AND
`deltoX ond delito'Y ARE
`2 B QUANTES
`
`pointist
`IS EMPTY
`
`NO
`
`LET r3r2 BE
`ldetox
`LET rro BE
`ldeito Y
`
`TRANSM
`rCW,
`ET
`row be 0.
`
`
`
`FIG. 8-2
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 15
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 15 of 20
`
`5,408,250
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`LET thispod BE
`THE PAD NUMBER
`FREMPMKE
`NCLUDES
`thSPOC AND
`THAT hispod
`MMEDIAEY
`FOLLOWS stortood
`N
`-
`OverPOd-th iPad,
`
`LET podist BE EMPTY,
`LISTEN FOR tsence SECONDS.
`LET h BE WHAT WAS HEARD,
`
`
`
`WAT A RANDOM
`PERIOD OF TME
`TRANSM OVER
`COMMAND MENTION
`NG OUR PAD
`NUMBER (OPN)
`
`CONANS
`AN UNGARBED
`PAD NUMBER
`AND OVER"
`
`QQMA2
`
`
`
`
`
`E Stortpold BE THE
`PAD NUMBER FROM
`h . firstPOC- StorPCC,
`LET OverPCC BE THE
`PAD NUMBER IN THE -
`"OVER COMMAND OF
`h. ADD stortPad TO
`podist.
`30 followPOd- OverPod,
`
`
`
`
`
`
`
`
`USEN FOR A RANDOM
`PERIOD OF ME NOT
`TO EXCEED tpouse
`SECONDS, LET h BE
`WHAT WAS HEARD,
`
`
`
`
`
`36
`
`TRANSMT OUR PAD
`NUMBER TRANSMIT
`AN "OVER COM
`MAND THA MEN
`TIONS goverPad
`
`GO
`TO
`38
`
`FIG, 9-7
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 16
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 16 of 20
`
`5,408,250
`
`
`
`
`
`
`
`
`
`LISTEN FOR THE NEXT
`UNGARBED TRANSMISSION
`CAL F h.
`ET this?
`BE THE PAD NUMBER FROM
`h, LET THIS OverPoC BE
`THE PAD NUMBER FROM THE
`"OVER" coMMAND OF h.
`
`SEC
`STEN FOR t
`cSESSNRSMNe
`IS HEARD, CALL T h.
`
`
`
`
`
`
`
`OverPod =
`followPod
`
`ADD PAD NUMBER FROM
`TO podist IMME
`DATELY AFTER storPOd
`
`(E)
`
`
`
`EXECUTE TRANSMT
`ALGORTHM LE
`
`StorPCdk thispod
`
`MAKE SURE THAT
`dist MENTIONS
`MME
`DATELY AFTER
`StorPOC.
`ET
`thispod
`
`FIG, 9-2
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 17
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 17 of 20
`
`5,408,250
`
`POC POS
`Melindo
`Tin
`PASSWORD
`Christy's
`
`PASSWORD
`
`
`
`
`
`Choose C ConverSortion
`
`or
`
`
`
`"
`
`
`
`450
`
`QWERTYUIOP
`ASDFGHJK
`ZAXCVBNM
`
`FIG. 77
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 18
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 18 of 20
`
`5,408,250
`
`
`
`Christy's
`Buddies
`
`Christy's
`Buddies
`
`LET'S ALL
`MEET FOR LUNCH
`AT THE OLD WEL
`
`A 2:5 stee A.Shu- Re?
`Me loc
`Dr. VE
`
`FIG. 73
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 19
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 19 of 20
`
`5,408,250
`
`
`
`ty
`Buddies
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 20
`
`
`
`U.S. Patent
`
`Apr. 18, 1995
`
`Sheet 20 of 20
`
`5,408,250
`
`
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 21
`
`
`
`5
`
`This is a Continuation of application Ser. No.
`07/703,221, filed May 20, 1991, now abandoned.
`BACKGROUND OF THE INVENTION
`Many situations exist in which people are near to
`each other (say within a few hundred yards) and wish to
`communicate silently and graphically, across the dis
`tance that separates them. For example, if two groups of
`people, each in separate cars, are driving up to the
`mountains together, one group may wish to draw a map
`for the other group or suggest a place to stop for lunch.
`In a classroom or meeting room, individuals may wish
`to communicate with each other, even when separated
`by a large table or by several chairs. In amusement
`parks and shopping malls, parents and children may
`desire the ability to separate, yet retain the ability to
`communicate and agree on a later meeting place. In
`parking lots, airports, auditoriums, or hiking trails,
`where people often get separated from each other, peo
`ple would like be to be able to get in touch.
`25
`Some techniques for handling these problems exist.
`When several cars go on a trip together, they can com
`municate using Citizen's Band (CB) radios. People in
`classrooms and meetings can pass notes to each other by
`... passing folded pieces of paper from hand to hand. Peo
`30
`ple in large open areas can use walkie-talkies. Motorists
`in urban centers can also communicate using cellular
`phones from car to car.
`The aforementioned technologies, however, do not
`permit silent, graphical communication. The noise gen
`35
`erated by verbal communication using a walkie-talkie or
`cellular telephone is inappropriate in a classroom or
`meeting situation. While a fax machine may provide
`silent, graphical communication for some applications,
`this device requires a supply of paper and is not porta
`ble.
`
`15
`
`5,408,250
`2
`According to yet another feature of the present in
`vention, the devices can work out an initial order of
`communications by transmitting an individual broad
`cast identification number followed by an end of trans
`mission signal which includes this identification num
`ber. Other devices hear this transmission and add the
`broadcast identification number to their list of devices.
`A device which has received this broadcast and wishes
`to communicate with the first device will broadcast its
`identification number followed by an end of transmis
`sion signal that includes the first device number. The
`devices have thus worked out a communication se
`quence.
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is an isometric diagram of an embodiment of
`the present invention;
`FIG. 2 is a side view of an embodiment of the present
`invention;
`FIG. 3 is a block diagram of an embodiment of the
`present invention;
`FIG. 4 is a flow chart of a listening algorithm accord
`ing to an embodiment of the present invention;
`FIG. 5 is a flow chart of a point plotting algorithm
`according to an embodiment of the present invention;
`FIG. 6 is a flow chart of a command execution algo
`rithm according to an embodiment of the present inven
`tion;
`FIG. 7 is a flow chart of a transmitting algorithm
`according to an embodiment of the present invention;
`FIG. 8 is a flow chart of a point transmission algo
`rithm according to an embodiment of the present inven
`tion;
`FIG. 9 is a flow chart of a channel sharing algorithm
`according to an embodiment of the present invention.
`FIG. 10 is a view of a conversation menu display
`according to an embodiment of the present invention;
`FIG. 11 is a view of a log-in screen requiring pass
`word entry according to an embodiment of the present
`invention;
`FIG. 12 is a view of a screen which appears after
`incorrect password entry according to an embodiment
`of the present invention;
`FIG. 13 is a view of a conversation screen according
`to an embodiment of the present invention;
`FIG. 14 is a view of a second conversation screen
`according to an embodiment of the present invention;
`FIG. 15 is a view of an initial conversation screen
`according to an embodiment of the present invention;
`FIG. 16 is a view of a third conversation screen ac
`cording to an embodiment of the present invention;
`FIG. 17 is a view of a conversation screen having two
`conversations broadcast on the same frequency and
`having the same conversation number.
`DESCRIPTION OF A PREFERRED
`EMBODIMENT
`FIG. 1 is an isometric drawing of a communication
`device, or pad, 8 according to an embodiment of the
`present invention. FIG. 2 shows a side view of pad 8
`according to an embodiment of the present invention.
`Pad 8 contains a liquid crystal display 10, which is
`housed in a housing 12. Liquid crystal display 10 may be
`an off-the-shelf black and white 3 inchx3 inch liquid
`crystal display. Housing 12 also contains other elec
`tronic components, such as a power supply, transceiver
`and antenna needed to operate device 8. In FIG. 1, an
`electronic stylus 14 connects to housing 12 via a cable
`
`1.
`
`PORTABLE COMPUTER FOR SHORT-RANGE
`GRAPHICAL MULTIPARTY COMMUNICATION
`
`SUMMARY OF THE ENVENTION
`The present invention allows persons to engage in
`silent, graphical communication using a small portable
`45
`device. The present invention thus permits users to
`communicate in meetings and in other locations where
`voice communication is impractical or inappropriate.
`According to one feature of the present invention, a
`device is equipped with a flat panel display, a stylus, and
`50
`a short-range radio transceiver. A person holding the
`device can communicate with another person having a
`similar device by writing a message on the liquid crystal
`display and transmitting the message. People can thus
`communicate silently across a distance.
`55
`According to another feature of the invention, sev
`eral people can participate in several conversations
`simultaneously.
`According to yet another feature of the invention, the
`devices used for silent, graphical communications are
`able to work out a conversation order for themselves
`without the need for a central control system. Each
`device stores a list of devices it has heard transmitting.
`At the end of each transmission, the device broadcasts
`its own identification number and the identification
`65
`number of the device which should broadcast next. The
`order of broadcast is deduced from the sequence in
`which these transmissions are heard.
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 22
`
`
`
`10
`
`5,408,250
`3
`4
`When transmitting data, cooperating pads 8 use time
`16. FIG. 2 shows an optional track ball 17 which may
`also be used as an input device in lieu of, or in addition
`slicing to share the available bandwidth. Each pad 8 has
`to, stylus 14 depicted in FIG. 1. A sliding on/off switch
`several time slots each second in which to transmit data.
`located on housing 12 activates device 8.
`The number of time slots allocated to each of the pads
`FIG. 3 contains a block diagram of pad 8 system
`and the duration of these time slots limit the total num
`elements. System elements include an input device 30
`ber of pads 8 which can operate in a given area. For
`which in a preferred embodiment comprises electronic
`example, data sent in a single time slot is a packet. If
`stylus 14. Input device 30 may also consist of a track
`each packet requires 4 milliseconds to send and each
`ball, 17 or optionally a touch sensitive screen may be
`pad is allowed to send 20 packets per second, each pad
`used. Input device 30 is used to input data to pad 8 by
`transmits data for 80 milliseconds each second. This
`writing on liquid crystal display 10. Liquid crystal dis
`example time slicing scheme limits the total number of
`play 10 displays to the user the data entered with input
`pads in a given area to twelve.
`device 30 as well as information received from other
`When a pad 8 is turned on, the pad must find a time
`pads 8. Alternatively, liquid crystal display 10 may
`slot in which to broadcast. The pad listens for a short
`consist of a conventional video screen.
`interval to determine which slots are in use. During its
`Information written onto display 10 is digitized by
`time slot, a pad must broadcast some data to preserve its
`digitizer 40. Digitizer 40 stores and plots display infor
`place. For example, if the user is actively drawing with
`mation as a series of points and corresponding coordi
`the stylus, the pad should describe the new coordinates
`nates under control of a central processing unit 45.
`or the pad can ask for information about existing con
`20
`Central processing unit 45 governs operations of pad 8
`versations. If no slots are available, pad 8 continues to
`and coordinates the transmission and receipt of commu
`listen and cannot participate in a conversation until a
`nication data. CPU 45 also keeps track of those conver
`slot does become available.
`sations received by pad 8 in which the user is participat
`Optionally, the pad transmission protocol can system
`ing. Commands may also be input by selecting from a
`25
`atically reduce the number of time slots allocated to
`menu displayed on display 10 or by direct entry using a
`each pad when a new pad enters the conversation. In
`virtual keyboard. Operating instructions for central
`this protocol, it is unlikely that a time slot would be
`processing unit 45 are stored in memory 50. Memory 50
`unavailable and pad 8 can participate in the existing
`also stores user-entered commands and data as well as
`conversations. However, the collective performance of
`current conversation screens.
`30
`the pads steadily decays as more pads actively broad
`Data processed by CPU 45 and digitizer 40 is trans
`cast information and users may notice delays in the
`mitted for display on other pads 8 by transceiver 55
`transmission and receipt of conversation data.
`over antenna 60. Similarly, transceiver 55 receives at
`Each pad 8 can listen to all packets. The packets are
`antenna 60 communication data which has been broad
`cast from other pads 8. Received data is processed by
`sorted in software by CPU 45 according to conversa
`35
`CPU 45 and digitizer 40 for display on display 10.
`tion number. Each conversation has a unique identifier,
`Transceiver 55 may be constructed so as to transmit on
`or conversation number that is chosen at random when
`public radio frequencies allocated for spread-spectrum
`a new conversation is started. The conversation number
`communication. Such a transceiver would be suitable
`is broadcast, at periodic intervals, by any pad 8 which is
`for longer range communications. Alternatively, trans
`updating the state of that conversation. Pads 8 are there
`ceiver 55 could employ an infrared transmission scheme
`fore able to detect which conversation numbers are
`similar to that used in remote control of household
`currently in use and which are not. This information
`appliances.
`can be displayed on screen 10 of each pad 8. By choos
`Pad 8 may optionally include a speaker 62 which
`ing an unused conversation number, the user can start a
`alerts the user to incoming messages, updated conversa
`new conversation. The user can enter an existing con
`45
`tion screens and/or error signals. Data and address
`versation by selecting that conversation number.
`buses 64 permit communication between system ele
`When a pad 8 enters the middle of a conversation, the
`nets.
`screen is updated to reflect the bit map that the conver
`A power supply 65 supplies the power necessary to
`sation has accumulated so far. On the theory that the
`run pad 8 electronic components. In a preferred em
`50
`most recent parts of the conversation are the most inter
`bodiment of the present invention power supply 65 may
`esting, in one embodiment of the invention, each pad
`comprise batteries. However, a solar cell, or other
`routinely broadcasts the last few hundred draw and
`transportable power source may be used. In addition,
`erase commands, in reverse order. This operation may
`pad 8 may also be connected to an AC power source via
`be done during periods when the stylus is not moving.
`an AC to DC converter and appropriate connector (not
`If the existing conversation is password protected,
`shown) for use in conference room environments.
`pads can store undecoded draw and erase commands
`Operational Overview
`until the password is entered. Upon entry of a pass
`word, the old commands can be decoded and acted on
`To communicate with others, the user simply writes
`all at once to bring pads up to date.
`on the pad using electronic stylus 14. This input to
`Pads can also participate in multiple conversations
`screen 10 is digitized by digitizer 40. The digitized mes
`simultaneously using several bit maps. Each conversa
`sage is processed by CPU 45 for transmission by trans
`tion has its own bit map. Only one bit map is displayed
`ceiver 55 as a graphical data set. The graphical data set
`is comprised of the stylus coordinates which are recon
`on the screen at a time. Bit maps from other conversa
`structed into a bit map by the receiving pad. Optionally,
`tions are kept up to date by acting on the commands
`65
`the entire bit map may be transmitted if the broadcast
`from their conversations. The user can switch from one
`medium has sufficient bandwidth or if a pad is merely
`conversation to another by deselecting the current con
`rebroadcasting information to update another pad.
`versation and selecting another conversation.
`
`15
`
`55
`
`IPR2020-00910
`Garmin, et al. EX1042 Page 23
`
`
`
`5,408,250
`6
`called currentPad. See step 108. If the listening pad has
`not heard from the broadcasting pad before, it adds the
`broadcasting pad to its list, padList, of known pads. The
`listening pad assigns the broadcasting pad an index IB,
`storing Binahash table H using the broadcasting pad's
`pad number as a key. If the broadcasting pad has been
`heard before, the listening pad looks up the broadcast
`ing pad's number in H to find the index IB. In both cases,
`the listening pad stores the index IB in currentIndex.
`This index will be used to access entries in the arrays
`CN, PN, DN, BS, X, and Y to store and retrieve infor
`mation about the transmitting pad. When the listening
`pad receives a conversation number in step 102, the pad
`also stores it in CNcurrentIndex).
`When the listening pad receives a pair of absolute
`coordinates (step 110), the pad stores them in Xcurren
`tIndex and YcurrentIndex). Then the listening pad
`tries to draw a new dot on the screen. If arrays CN, PN,
`BS, and DM all have values for the currentIndex, then
`the listening pad finds the bitmap associated with page
`PNcurrentIndex of conversation CNcurrentIndex
`and draws (or erases depending on DMcurrentIndex)
`a dot of diameter BScurrentindex) at coordinates
`(XcurrentIndex), YicurrentIndex). See step 114.
`When the listening pad receives a non-zero pair of
`relative coordinates, (X, Y2), the listening pad looks to
`see in step 118 if Xcurrentindex and YcurrentIndex
`are defined. If not, the listening pad ignores the relative
`coordinates. See step 120. If X(currentIndex and Y
`currentIndex are defined, the listening pad updates X
`and Y in step 124 as:
`Xcurrentindex-currentIndex+x(*- : 1 if sign bit
`for x is 1)
`
`0000000<1st 5 bits) 00 (10 more
`bits)00<last 10 bits)
`01 <1.0 bit conversation number
`10<x sign bite <y sign bit) <2 bits x> <2
`bits y <2 bits x> <2 bitsy)
`11 00000 00000
`11 00000 00001
`
`30
`
`35
`
`YcurrentIndex-currentIndex-Y(*-1 is sign
`bit for y is 1)
`
`5
`Detailed Description of Device Operation
`Pads 8 use a common data and channel sharing com
`mand protocol as well as a common data encoding
`protocol when intercommunicating. The several basic
`types of data transmitted between pads 8 are summa
`rized in Table 1. The commands transmitted between
`pads 8 are summarized in Table 2.
`Data may be sent as a stream of bits, in which no bit
`is differentiated from any other. Data reliability is im
`10
`proved, however, by sending the data in a set of fixed
`size words with a synchronization signal between each
`one. For example, in a 12 bit word, to distinguish pad
`numbers, conversation numbers, coordinates, and con
`mands, the first 2 bits of each word can be allocated as
`a tag describing the type of data. The following conven
`tion may be used: 00 represents pad number; 01 a con
`versation number; 10 a word of relative coordinates;
`and 11 represents all other commands. When both X and
`y coordinates are provided, X coordinates may be desig
`20
`nated first.
`Up to ten bits are used to encode commands. A com
`mand and its data can fit in a single word. For example,
`if all words beginning with 1100001 are interpreted as
`the "page number” command, then the last 5 bits can
`25
`encode the page number itself.
`Using the above conventions, each of the several
`types of command and data information can be encoded
`as follows:
`
`5
`
`Pad Number:
`
`Conversation
`Number:
`Relative X-Y
`Coordinates:
`Draw Mode:
`Erase Mode:
`Request for
`Conversation
`List:
`Page Number:
`ErasePage
`Command:
`Request for
`Info:
`Brush Size:
`Over:
`OverAndOut:
`Review:
`End Review:
`Absolute X-Y
`Coordinates:
`
`45
`
`50
`
`11 00000 00010)
`11 00001 <5 bit page numbers
`11 00010<5 bit number of page to erases
`11 00011 <5 bit page number>)
`11 00100<5 bit brush size>
`11 00101 < 1st 5 bit pad numbers 00<10
`more bits)00<last 10 bits
`11 0011.<1st 5 bits pad numbers) 00<10
`more bits) 00<last 10 bits)
`11 01000<5 bit page numbers
`11 01001 <5 bit page numbers
`11 1 <9 bits of x or ye)
`
`After this update, the listening pad draws a new dot on
`the screen. If page PNcurrentIndex of conversation
`CNcurrentIndex is currently displayed on the listen
`ing pad, then the new dot is immediately visible to the
`user. Otherwise, the new dot is not be visible until the
`user requests display of that page at a later time. Points
`are plotted by executing steps 125 and 126 according to
`the point plot algorithm diagrammed in FIG. 5.
`If the word received by a pad is not a conversation
`number, pad number or coordinate pair, the received
`word is a command. The listening pad then branches
`from the listening algorithm of FIG. 4 to the command
`algorithm in step 128. FIG. 6 contains a flow chart of
`the command algorithm. When the listening pad re
`Each pad has an array, CN, of conversation numbers,
`ceives a draw or erase command, step 150 notes this
`an array, PN of page numbers, an array DM of drawing
`mode in DMcurrentIndex. When the listening pad
`modes (draw or erase), an array BS of brush sizes, and
`55
`receives a brush size command step 154 stores the size in
`arrays X and Y of pen coordinates. The arrays contain
`BScurrentindex. The listening pad records all con
`enough elements to handle the maximum number of
`mands that it receives or transmits, sorted by the con
`pads that could be in a room at once, and are initialized
`versation to which they belong. If the current conversa
`to an initial value at power up.
`tion is password-protected, then the last ten bits of all
`When a pad is not broadcasting a pa