Home
Radio Desk User Manual
Contents
1. MAC PUT HEADER 1 7 1 7 2 0 1 MAC AQUIRE BEACON 2 7 3 0 8 0 DEV GET DATA 2 3 0 8 0 9 0 MAC PUT DATA 4 0 9 1 2 0 7 MAC TRANSMIT DATA 5 1 9 1 9 0 1 duration estimated POWER MANAGER 6 2 2 0 1 duration estimated DEV GET DATA 1 7 2 1 2 3 3 7 MAC SWITCH CHANNEL 8 6 6 1 0 9 MAC START RX 9 7 7 1 SCHEDULER RESTART 10 Total 2 5 5 6 Example Task execution in RadioDesk keyboard 9 B 8 7 oO 5 2 6 0 g 5 0 ae a 4 4 3 n 2 S 0 0 1 2 3 4 5 6 7 8 Time in ms 8ms is one frame Important notes 1 Timing reference 0 is when beacon data receiving is started after sync word has been detected 2 The measurements above are done by examining the timer value of the slave keyboard This value is incremented each 100 5 resolution is therefore 100uS and there are 80 timer ticks in one frame Hence tasks which execute in less time than 100uS might appear to take no time which is the case for MAC TRANSMIT DATA for instance 3 This is actual execution time on the MCU and does not take into account neccessary idle time for radio and i o devices to complete their tasks beacon sending etc 4 As we can see only 2 4 8 30 of the CPU time is used on synchronous and asynchronous tasks in the keyboard Code executed in the timer interrupt is added to this Color codes RadioDesk User Manual Asynchronous not mandatory task Asy
2. Csn Csn Sclk HT82K68E 9 ei also Ts 27 So HT82K96E connects to f CC2500 CC2500 with USB scroll wheel 9400 9400 buttons etc gdo2 gdo2 lt c ADNS 6030 Mouse Dongle Figure 10 Example of RadioDesk system with dongle and laser mouse Note 9400 is not used in RadioDesk firmware but may be used in the future 51 Small factor USB dongle The USB dongle has been designed to exhibit a minimum form factor To achieve this a 4 layer PCB has been used as well as a chip antenna solution HTK96E low speed USB MCU from Holtek Semiconductor was selected for the dongle This MCU is powered directly from USB bus power A 12 MHz crystal is used as clock source The USB MCU communicates with the CC2500 transceiver using a bit banged serial interface and reports data received from the keyboard and the mouse to the PC A LED is included to show the link status The CC2500 2 4 GHz RF transceiver uses a balun circuit to interface with the single ended chip antenna The chip antenna is an advanced design from Fractus which provides excellent antenna performance even though the size is very small The CC2500 is powered from a 3 3V linear regulator The RF circuitry the antenna and the voltage regulator are placed on the top side of the PCB while the USB MCU is mounted on the bottom side Actually these directions are reversed with regards to the usual rotation of the USB plug so
3. Levas H3 1 1OH1NO2OH2IMW PEN ga NF ei J Sag S 310H uu gn gu wd EN INA ARVN 7131413 xavw oviandi3 XHvACOWIODMI WISN Juv W 3 1 Figure 15 Page 23 Revision 1 3 RadioDesk User Manual 1912 aans aqvas aanss Vl vv 1332342 ON sma ON wosa azis BQVLIOA Navya oma 3ivd 5 Sv 18528 ANVdWO2 ON 12VHINO2 z MOUNId Id 005299 NOW BL AE E Page 24 Revision 1 3 Figure 16 Keyboard schematic page 2 RadioDesk User Manual 13365 93055 Vl ON q13323H2 1 P Wl NMYHC 31vd 5 28820 ON 12VHINO2 40223 isa T 05 7 0 90223 wa A n 273 T A QS Y WZx AZZ 169 A 148 any 3 2 4 3 M xx6222 odip pap 5 EUUSTUY 9 20 8 081 7 ag 1 1815 1 T T 8
4. Sv NOJOdIH2 18820 AYN ANVdAOS ON 12VH1NO3 NOILON SN3S HHE Z BLd E2S So 3125 5N358 5 5 SUN 53954 5 54 28 2 SXZ MOHN Josues 008222 403 A 6252 amp YOLVINDAY 39Vvl O0A NIE 184146 USS NIGZ g iC SXZ MOBNI NOLLON SN3S ugs NOLLOW SN3S b x 44 55 5 5 4 1 sS SINTSNIS dub 5 seed zE os os Se 7755 5935 4 15 gt gar us LERE EE zoad Er 8 18 oa IBJS NIH Ac aodd 178187825 z NiH z uld Ha3sl T HISHS 1 a 5 FT BUGS Slag 82 HOSN3S 2 140 ES l1HVd dH H3 1 10H1INO2OHJINW vXZ MOHNId sosuas 2 1 SOW SN3S 289078 1 1 OSIA SN35 289078 XBVW OVIOndI3 xuvA 3 Ll HVAT WINGS ans fld AWWW 3 39 Figure 19 Mouse schematic page 1 Page 28 1 3 ision Rev RadioDesk User Manual 12 aqvas aanss 21 vv 1332342 ON ON W2S2 3715 5 2 Wt 1 asnow 0252223 3ivd S TvAOHddV SV NOJdIHJ 18520 3AYN ANVdAOS ON 12VH1NO3 4 S 54 on x RS em 8 nf Ls PG
5. 18528 3AYN ANVdAOS ON 12VH1NO3 ag 22 4 8720273 En lt EE 809255 51 5 SZ X HX NaI 2 kp J z va vH x1H12938 BI X USX Z v0 NG0 3 Figure 12 USB dongle schematic page 2 Page 18 Revision 1 3 RadioDesk User Manual 13365 37725 43055 21 vv 1332342 A38 ON ON W2S2 3715 wi NM WC 298255 sma SV NOJOdIH2 18820 3AYN ANVdAOS ON 12VH1NO3 a a 05 3 84N Z80 SdI 3 T oe 20 8 15 58 4 12 1 08 3784 20987843 1 5 289872 11 QI USX NB8I 3 183 BS Y 9822 0 057 HX Z v dO22 3 182 A rere Non a A T by USX 28907 001 2 85 289 4 2273 T 163 34728987 95 9 i 1 8 289072 1 2 8572 ZO v8 Adi 203 1811 i 85 20 8 4801 2 GS 1813 572 4 1 a 288 4801 3 122 4 1813 vlc 15 A E T 96 2090 442 3 183 ZAA dZ 1013 y ezana
6. 857 TE TR 3 4 bs al peur The 80 S HH 872090 EE H f E090 ZH H v asn Figure 14 USB dongle schematic page 4 Page 20 Revision 1 3 RadioDesk User Manual Reference Value part number Description Manufacturer A1 Compact Reach Xtend Chip antenna Fractus C1 100 nF X5R 10 Capacitor 0402 C2 100 nF X5R 1096 Capacitor 0402 C3 10 uF X5R 15 Capacitor 0805 C4 2 2 UF X5R 10 Capacitor 0603 C5 47 pF NPO 5 Capacitor 0402 C6 100 nF X5R 10 Capacitor 0402 C7 100 nF X5R 10 Capacitor 0402 C8 100 nF X5R 10 Capacitor 0402 C9 47 pF NPO 596 Capacitor 0402 C10 47 pF NPO 596 Capacitor 0402 C11 10 nF X7R 1096 Capacitor 0402 C12 100 nF X5R 1096 Capacitor 0402 C13 47 pF NPO 596 Capacitor 0402 C41 100 nF X5R 1096 Capacitor 0402 C51 100 nF X5R 1096 Capacitor 0402 C81 27 pF NPO 5 Capacitor 0402 C91 220 pF X7R 10 Capacitor 0402 C101 27 pF NPO 596 Capacitor 0402 C111 100 nF X5R 1096 Capacitor 0402 C121 100 pF NPO 596 Capacitor 0402 C122 1 0 pF 0 25 pF Capacitor 0402 C123 1 8 pF NPO 0 25 pF Capacitor 0402 C124 1 5 pF 0 25 pF Capacitor 0402 C131 100 pF NPO 596 Capacitor 0402 C132 1 0 pF
7. 20 250 j atav 3 10 250 atav lt 5 05 15 Faz sq3sl gt x qj svieu RIIA usaj x usg Naa zoas zota 119799 1531918099 5 285233 a Figure 13 USB dongle schematic page 3 Page 19 Revision 1 3 RadioDesk User Manual 1 aqvs 21 vv 1332342 ON ON wosa 3215 2 wi NM ve naw gsn alSuen 805255 ama 31vd 5 SV 3AVN ANVdADO ON 23 OS Boag IS a735 781293u 2089 zz lt BN p 8 8 8 LN 55 7 1 1 i s 55 25 i E Ee jHA 88d viva agsn 284 3 dqa8sn avd 1250 2 2550 Evd Say Svd QHAL 9vd IBAL ZVd 087 dN Z8 8 dL 73 872890753 ME 2405 395 281 zn P n E zs Bom E 3 Pri 23 z SAL z p Eh 5 s 3 5 P lt UN 3 18 8 5 art Ej E s 5 e pa wh 2 T 1 1 H ES 5 E E 1 855 s 2 5 5 5 pierus a i 4 8 ml amp P 8 2 AS 15 AP 8
8. 0 25 pF Capacitor 0402 C141 100 nF X5R 1096 Capacitor 0402 C151 220 pF X7R 1096 Capacitor 0402 C181 220 pF X7R 1096 Capacitor 0402 D3 CL150YCD LED yellow SMD L121 1 2 nH 0 3 nH Multi layer inductor 0402 L122 1 2 nH 0 3 nH Inductor 0402 L131 1 2 nH 0 3 nH Inductor 0402 P1 CONN10 MALE Connector 0 9mm pin male only for test P2 USB plug type A connector P3 CONN10 MALE Connector 0 9mm pin male only for test R1 33 2 Resistor 0402 R2 100 2 Resistor 0402 R3 10 2 Resistor 0402 R4 100 KQ 2 Resistor 0402 R6 4 7 Q 5 Resistor 0603 R7 33 2 Resistor 0402 R8 33 Q 2 Resistor 0402 R9 1 5 KQ 2 Resistor 0402 R10 4 7 Q 5 Resistor 0603 R102 10 2 Resistor 0402 R104 10 2 Resistor 0402 R106 10 2 Resistor 0402 R171 56 196 Resistor 0402 RadioDesk User Manual Revision 1 3 Page 21 R205 270 2 Resistor 0402 U1 CC2500 CC2500 2 4 GHz RF Chipcon transceiver U2 HT82K96E SOP20 USB MCU Holtek Semiconductor U3 NJM2871BF03 3 0V LDO regulator New Japan Radio X1 X 26 000 20 20 10 16 26 000 MHz crystal 20 20 ppm tolerance HC 49 NX5032 SMD X2 X 12 000 50 50 10 12 12 000 MHz crystal 50 50 ppm tolerance HC 49 SMD Table 5 USB dongle bill of materials 5 2 Wireless keyboard The wireless keyboard electronics consists of a small PCB which connects to the main keyboard matrix using carbon contacts All
9. 16 5 2 Wireless keyboard po cae padece dde des 22 9 37 6 A o READ dem eed d ede eds 27 6 The RadioDesk reference design 34 0 1 OVOIVIOWS i tct Rc diae ret qne des 34 6 2 Code structure ep 34 6 3 Code generation and 35 0 4 MACG turictionality etre EN ere dettes 37 0 5 rede e ETUR re PROMO e eret d eset Leti 38 6 6 SIAVE edat et RH e dM Ue Te deter s 41 6 7 Slavescheduler De ete ea ees 43 6 8 Adding slave features 2 rer te d ege Ee A IO ep ria 46 6 9 Power management Eee fei eee Uere 46 T ModifICatiOris eut RO t oe desee ptite ca ea t etas 48 47 Suggestions to lower price cire irt eer ri eee PRA E Fer tenes 48 7 2 Suggestions for longer battery life time 48 7 3 Suggestions for advanced 48 7 4 Suggestions for applying RadioDesk to other 48 8 Documenthistory s ioni Bate Beirat 49 Table of figures Figure 1 Basic RadioDesk frame 5 Figure 2 Typical RadioDesk data 7 Figure 3 Basic packet format 8 Figure 4 Suggested mouse data 22255246 10 Fi
10. APP Slaves Reads data from mouse and keyboard and uses the MAC to communicate across the RF link Master transfers data between the RF link and the USB interface Table 8 Firmware layers RadioDesk User Manual Revision 1 3 Page 34 MASTER COMMON SLAVE dongle h m APPLICATION dongle c common h LAYER niie hoech main c scheduler h scheduler h mac_slave c mac_resync c mac_wakeup c mac_scheduler c mac_config h mac_pairing h MAC LAYER mac_freqhop c mac_radiodesk c mac_dongle c mac_wor c mac_keyboard c mac mouse c PHYSICAL LAYER rf lib h rf lib c rf config c hal timer c buffer c hal dongle h HARDWARE hal ioport c hal spi h hal timer c hal nextchannel c hal keyboard h hal mouse h ABSTRACTION hal spi asm hal keyboardscan c hal zwheel h LIBRARY USB software ioport c ioport c hal spi asm hal spi asm Figure 24 Firmware layers and associated files 63 Code generation and maintenance The RadioDesk firmware is delivered as a zip file The file contains the code the documentation and a list of files and functions in the system This list inventory html contains details on where the files and functions are located as well as a short description of each files contents The firmwar
11. Ace sayuag NOILOW 2195 52 8 lt 2 8 2 5 ed EG XZ MOHNId ZN g2 gan uas x 5 d 26 E Hid H2S SON ME P mae sui ZNIE 27018 2 T 2 za 444 9 15 PUB SCRL BTN 25 Figure 23 Button and sensor board for laser mouse Page 32 Revision 1 3 RadioDesk User Manual Reference Value part number Description Manufacturer C1 10 uF X7R 20 Capacitor 1206 C3 27 pF NPO 596 Capacitor 0402 C5 27 pF NPO 5 Capacitor 0402 C7 100 nF X5R 10 Capacitor 0402 C8 100 nF X5R 10 Capacitor 0402 C9 4 7 yF X5R 1096 Capacitor 0603 C10 4 7 pF X5R 10 Capacitor 0603 C20 4 7 uF X5R 10 Capacitor 0603 C21 4 7 uF X5R 10 Capacitor 0603 C41 100 nF X5R 1096 Capacitor 0402 C51 100 nF X5R 1096 Capacitor 0402 C81 27 pF NPO 596 Capacitor 0402 C91 220 pF X7R 1096 Capacitor 0402 C101 27 pF NPO 5 Capacitor 0402 C111 220 pF X7R 1096 Capacitor 0402 C141 220 pF X7R 10 Capacito
12. 2250 46 ava D e x E T amp Eva 5 lt S La s Y 2 x 58 vy 5 m v 2 z3 4 8 uo pJeo SEIS aAA SvYd055 3883ZBI sn Ta T 2 2 g Bi x 78 3 Ed W H X 982 nai 3 2099 82 1 55 z T szava D CECI a usa H ggm Page 26 Revision 1 3 Figure 18 Keyboard schematic page 4 RadioDesk User Manual Reference Value part number Description Manufacturer C2 27 pF NPO 5 Capacitor 0402 C3 27 pF NPO 596 Capacitor 0402 C5 10 uF X7R 20 Capacitor 1206 C6 100 nF X5R 1096 Capacitor 0402 C8 100 nF X5R 1096 Capacitor 0402 C41 100 nF X5R 1096 Capacitor 0402 C51 100 nF X5R 1096 Capacitor 0402 C81 27 pF NPO 5 Capacitor 0402 C91 220 pF X7R 1096 Capacitor 0402 C101 27 pF NPO 596 Capacitor 0402 C111 220 pF X7R 1096 Capacitor 0402 C141 220 pF X7R 1096 Capacitor 0402 C151 220 pF X7R 1096 Capacitor 0402 C181 220 pF X7R 1096 Capacitor 0402 D1 CL150GCD LED green SMD D3 CL150URCD LED red SMD D4 CL150YCD LED yellow SMD D5 20 0030 Schottkey diode L1 BLM11A102S EMI filter bead Murata P1 PINROW 2 Pinrow 2 P3 CON3 Connector 0 9 mm pin R1 100 2 Resistor 0402 R2 00 Resistor 0603 R3 00 Resisto
13. Table of contents 1 4 2 About cv re ie 4 3 cte eere tinae aite ethnic 4 4 RadioDesk 5 eei tate teo 5 4 25 etiem al ied 5 4 3 Physicallayer ded eee 6 4 4 Frequency hopping been eta dene dee tao a aed e ete eo ei datae 6 4 5 Data eee rete ai ied 7 4 6 eer e eiie La iate eh 8 4 6 1 General packet nennen 8 4 6 2 Beacon payload ert e Lnd e i etg e edt edi 8 4 6 3 Data payload eee ree Heal dei e t 9 4 6 4 Mouse 10 4 6 5 Keyboard dala u u uu etre ee ecd i ete ede etus 10 4 7 Ds and pairing ere e d get e Let cedet 10 4 8 Power saving uote dean teh deme dome 11 4 9 Baton iieline u u Ip OPTION dep Tett 13 4 9 1 Optical laser Mouse tee 13 4 9 2 Keyboard ahaa E E depen 15 4 9 3 USB dongle triremes 15 5 The RadioDesk reference design hardware eee 16 USB
14. 32 Firmware layers and associated 00 35 File organisation ice edet ee e ordeo ERRARE RO a iac qe has 36 Dongle state diagram er e Ee RR p retired 38 Slavemodes 2 ae munt e e reb E teur eter Soa Bed 38 Dongle TOW serr aa Tsa 40 Slave states aree eU E e me Le OE ede A 41 Slave program flow eri Rp hte ene 42 Power management ideis a epi das 46 1 Introduction RadioDesk is Chipcon s platform for wireless HID Human Interface Device devices This platform is based on Chipcon s SmartRF 04 radio ICs and includes a complete reference design as well as an advanced RF adaptive frequency hopping protocol The RadioDesk reference design is a complete production ready wireless desktop keyboard and mouse design Focus is on low cost a robust RF link in the face of heavy interference from other 2 4 GHz RF systems and long battery lifetime The RadioDesk protocol is an advanced adaptive frequency hopping protocol and designed specifically for wireless HID use It is more efficient and optimised for this purpose compared to other more general purpose protocols Interoperability between different implementations of RadioDesk has not been a priority as this would compromise the main goals Implementers are also free to modify RadioDesk to suit their specific purposes Note that RadioDesk is not
15. EX Page 30 Revision 1 3 Figure 21 Mouse schematic page 3 RadioDesk User Manual 1919 issus aqvs 93055 CREE E RE T 82 a now 2252223 ake ama 4 5 Sv NOJdIHJ 3AYN ANVdAOO ON 19YHINO2 25 A R2 R IBK 8402 R IBK 0402 F Sepp ec uc z a 84 SON SN3S Z NL x 1H285 NI amp ITNIED 2 Z ple EIS i i i Hid H2s az q31 458 6 aec n p S S 3 3 5 5 8 As AS 2 iz me a s 1250 EC x 2550 hi Sas Er fr 82905 38 9281 zn a n 208 2 2 18 P k a x E P 5 3 z T SZBIVIIN1B AGE AGE QI X USX Z v N80I 3 a Jd z v Figure 22 Mouse schematic page 4 Page 31 Revision 1 3 RadioDesk User Manual 13268 awas aanss Vi vv ON ON wosa pseog sosuag 3ivd ST1vAOHddVv N0O3dIH3 25520 Ee ANVdWO3 ON 12vHINO2 12 289873 i sase ED CIN 8402 X7R K 25 b gt C_IN_ 482_X7R_K_25 IN gt Iv C I88N 0402 X5R K 18 1 ens 5 488 0482 18 8
16. NO device in SLEEP mode turn off sensor and radio MCU to halt wake up after 1 s turn on sensor and radio Figure 31 Power management RadioDesk User Manual Revision 1 3 ___ Cm Page 46 The parameters for power management are configurable from device to device as the usage patterns of a keyboard and a mouse differ The keyboard skips the semi active mode entirely and enters sleep after a given timeout Configuration is found in the file scheduler h for the device in question RadioDesk User Manual Revision 1 3 Page 47 7T Modifications 7 1 7 2 7 3 7 4 Suggestions to lower price The USB dongle could be changed to a hockey puck design to save cost of balun circuit and chip antenna Three AAA cells could be used in the mouse instead of two AA cells This will shorten the battery lifetime but make it possible to use a linear regulator instead of the switch mode regulator used in the standard design Suggestions for longer battery life time Require the user to wake up the mouse by pressing a key when the mouse has been inactive for a long time This allows you to shut off both the radio and the optical sensor increasing the battery lifetime Use more than two AA cells in the keyboard to extend the battery lifetime Increasing the RF data rate to 500 kbps will reduce the on time of the radio reducing the current consumption somewhat reduce radio output power Suggest
17. 5 5 Eso 8 8 41 5 2 8 gt ra sd 4 BA 84 5 lt i z 8 amp tz Edo WYK 3 e oF i B ul 21 T 83 n T 2 b 1 g 0 6 T lt 22 OL 81818541 21 028965 40138uu02 u0jsnj Id 0 29 Revision 1 3 Figure 20 Mouse schematic page 2 RadioDesk User Manual 1 5 aqvs 93055 21 vv 1332342 ON ON wosa 3215 AW NM ves 1HVd JH ama 31vd 5 Sv 18528 ANVdADOO ON 19YHINO2 AEE 2078 NBII 28 8 03 183 AN A ZN k ux 40223 20 0 74022 73 isa T T E 85 X WiX Z va 022 3 we 2 9 T Wo 5 25 20 0 24222 0S I 0dN Z0v8 d 2 2 22 1 T 1013 183 62 L lt Hy a zans n 1 gt E F 2 java 317017017017000 92 3728907388 TOSSA ix ef AY 1073s0x 5 5 109105 gt os 2 15 tig sview Maas as ai S27 usg er Nese oe oa 9799 1153199099 y 098 INV z 285255 ca 2
18. Layer MAC Medium Access RSSI Received Signal Strength Indication RadioDesk User Manual Revision 1 3 Page 4 4 RadioDesk protocol 4 4 Overview The RadioDesk protocol is an advanced protocol for wireless HID devices and includes adaptive frequency hopping The protocol was based on the following design criteria e Coexistence with existing 2 4 GHz systems e Use of ultra low cost MCUs e Long battery life time e Low latency RadioDesk has been designed to be easily customizable to the implementer s requirements It can support a variable number of peripherals various data formats both one way and two way RF links and so on RadioDesk is a master slave protocol In a standard wireless mouse or keyboard system the USB or PS 2 dongle will be the master and the other devices will be slaves To save power the protocol has been designed for asymmetric power consumption It is assumed that the master has a plentiful source of power while the slaves are power constrained This holds true in most HID systems RadioDesk uses time division multiplexing TDMA to support multiple devices A big advantage of the TDMA approach is that it provides infinite attenuation between the various devices unlike a CDMA or FDMA approach where differing signal strengths can cause problems A frame is divided into n 2 time slots where n is the number of slaves in the system In the first time slot the master transmits a beacon This be
19. User Manual Revision 1 3 Page 10 Another approximation is that approximately one collision will occur if you have N units within range This turns out to be 4048 units for a 24 bit ID or 256 units for a 16 bit ID The following table gives the upper bound on the collision probability for 16 bit and 24 bit IDs assuming a random distribution Number of units Upper bound on probability of Upper bound on probability of within range collision 24 bit ID collision 16 bit ID 1 0 0 2 5 96046E 08 1 52588E 05 4 3 57628E 07 9 15527E 05 8 1 66893E 06 0 000427246 16 7 15256E 06 0 001831055 32 2 95639E 05 0 007568359 64 0 000120163 0 030761719 128 0 000484467 0 124023438 256 0 001945496 0 498046875 512 0 007797241 1 1024 0 031219482 1 Table 4 Probability of ID collisions As can be seen the probability of a network collision is remote when using a 24 bit ID as long as the number of units within range is below several hundreds So many units will never be within range of each other even in a very crowded office environment Problems due to network collisions will be less likely than problems due to hardware failures in the field Using a 16 bit ID is only recommended where only a few units will ever be within range of each other In some cases such a system is not practical for example when using ROM based MCUS and another form of pairing should be used The conventional way of d
20. day for 5 days a week During this time keyboard usage is irregular but the total amount of time that the radio is active will be 1096 of the time the keyboard goes from active to sleep after 1 seconds of non activity This gives a total active time of around 20 minutes per day In active mode the power consumption of the MCU is 0 7 mA while the radio average current is 6 8 mA same calculations as for the optical mouse in active mode This gives a total average current of 7 5 mA 20 minutes per day is equal to a 1 25 duty cycle This gives average current of around 0 1 mA Sleep mode current is approximately the same assuming that the radio and MCU are active for 64 ms every 5 ds to maintain information about frequency changes and so on This gives a total consumption of 0 2 mA Please see the Excel spreadsheet for detailed calculations 4 9 3 USB dongle The USB standard mandates that any USB device that can wake up the computer should not draw more than 0 5 mA when the PC is in the low power suspend state To achieve this the RF transceiver in the dongle must be power cycled usually it is on all the time as in active mode the USB current limitation is 100 mA Assuming the USB MCU and mandatory USB pull up resistors draw 0 25 mA this leaves 0 25 mA or 250 uA for the radio Since the CC2500 power down current with wake on radio enabled is only 1 5 uA this can be ignored in the calculation Taking the worst case CC2500 c
21. is currently receiving dongle has not received dongle does not take the slave into account as it has been absent for too long datapackets from slave data recently from slave and assumes that a new datapacket will arrive soon P e cT 7 from slave Figure 27 Slave modes RadioDesk User Manual Revision 1 3 Page 38 In a normal operating environment at least one slave will be in AQUIRE mode at any given time As a result the dongle has to wait until each slave has been in either ACTIVE mode or INACTIVE mode before executing two frequency changes successively Replacement of an active channel is carried out if and only if all of the conditions listed below are satisfied Some channel has reached the packet loss threshold No frequency change has taken place after a slave has entered acquire mode The RSSI scan has found a free channel The new channel is at least 3MHz away from any of the currently active channels At least one slave has received the latest beacon The RSSI scan is carried out every cycle on the first available channel that is not blocked Channels are blocked when they are replaced or when there is too much noise detected The list of blocked channels is periodically cleared Figure 28 shows the structure of the dongle firmware The PC polls the RadioDesk dongle for keyboard mouse data every 10ms low speed HID device and the dongle will report whatev
22. is either shut off out of range or in suspend mode The mouse then enters deep sleep In this mode the optical sensor is shut entirely off the scroll wheel is shut off the MCU is in power down mode and the radio shut off If the user presses a mouse button the mouse first tries a sends wake up messages and tries to wake the PC from suspend mode If it is not successful the mouse gives up and resumes deep sleep Figure 9 shows what events trigger transitions between the different power modes Movement or button press Movement or button press ______ Button press _____ i x 7 N z E Sleep Deep sleep x N N N PA Z E 7 DASS ed 7 5 4d P 755 No beacons received for 2 seconds No movement or button presses for y seconds No movement or button presses for x seconds Figure 9 Optical mouse power mode transitions In active mode the MCU is active the scroll wheel is active the optical sensor is continually on and the radio is listening for beacons and transmitting data back to the master All parts of the mouse except the radio are drawing maximum current the whole time The radio is in RX mode for one time slot 1 4 of the total 8 ms frame duration for mouse keyboard combo and in TX mode for the time it takes to send one packet assuming a 20 byte packet this is 0 64 ms The radio will be in IDLE synthesizer running when it is not transm
23. packet if they do not have data to provide If a slave transmits data to the master the master will use the acknowledge bits in the next beacon to confirm the data transfer If the appropriate acknowledge bit is not set the slave can retransmit the packet in the next frame Figure 2 shows a typical RadioDesk usage scenario No activity Receive 4 Scan Beacon 5 Receive 5 Scan Beacon 6 Receive 6 Scan Beacon 7 Y Y Y Y Y Y Y Y 2PTU 1PTU 1PTU 2PTU 1PTU 1PTU 2PTU 1PTU 1PTU Activity Dongle Receive 4 Scan Beacon 5 Receive 5 Scan Beacon 6 Receive 6 Scan Beacon 7 A Y v Y 2PTU 1PTU 1PTU 2PTU 1PTU 1PTU 2PTU 1PTU 1PTU 1PTU 1PTU Search for Search for Search for Mouse beacon Transmit 5 beacon Transmit 6 beacon 1PTU 1PTU Z Keyboard Search for Transmit 5 Search for Transmit 6 Searehifor beacon beacon beacon Figure 2 Typical RadioDesk data flow RadioDesk User Manual Revision 1 3 Page 7 4 6 Packet format 4 6 1 General packet format RadioDesk employs a general packet format but the packet format can be modified to suit the application if necessary Preamble Sync word Length Payload IMS N D 32 bit 32 bit 8 bit E 16 bits Its Its Its bytes Figure 3 Basic packet fo
24. the LED is mounted on the same side as the MCU as to be visible when plugged into a horizontally oriented USB socket When laying out your own PCB it is very important to copy the PCB layout of the RF section exactly Layer 2 is used for a ground plane while layer 3 is used to route power RadioDesk User Manual Revision 1 3 Page 16 If price is more important than physical size then it is possible to use copy the RF section and PCB antenna from the keyboard or mouse and connect this to the USB MCU and other circuitry in the dongle design In this case a 2 layer PCB can be used The RF layout should be copied exactly from the keyboard or mouse paying attention to ground planes as well The usual alternative to a small USB dongle is to make a hockey puck formed device that connects to the PC via a USB cable gt N 1 SHEET 1141 DWG NO FSCM NO A CHIPCON AS t2508 dongle RF PART t 176 4 208 RF part connec GDO2 TAL DATE 02557 CONTRACT NO APPROVALS DRAWN CHECKED 550 5502 s 5 7413924 MICROCONTROLLER REGCTAL VOLTAGE REGULATOR Figure 11 USB dongle schematic page 1 RadioDesk User Manual Revision 1 3 Page 17 12 13365 aqvs 93055 Zil vv 1332342 A38 ON ON 53 3zis ivl lt 025223 Navya 3ivd S TvAOHddV Sv
25. the electronics are powered directly from the batteries A HT82K68E serves as the system MCU reading the keyboard matrix and running the radio protocol The CC2500 2 4 GHz RF transceiver uses a novel differential PCB antenna This antenna has been designed to match the CC2500 RF differential impedance avoiding the need for any matching components or balun circuit This ensures an absolute minimum number of external components the CC2500 only requiring a single biasing resistor a 26 MHz crystal two crystal loading capacitors as well as decoupling capacitors Three LEDs have been included to indicate caps lock num lock and scroll lock status These may be illuminated only when the user types on the keyboard in order to save power or even replaced with a custom LCD display the LEDs are not implemented in RadioDesk firmware because it would require drilling holes in the keyboard chassis to make them visible The keyboard design does not support extended functionality like a scroll wheel and additional keys but this can very easily be added RadioDesk User Manual Revision 1 3 Page 22 8862595 now 1 13385 ON 005222 ome Sv ON JVHINOJ NO21531 5X2 MOHNId usa 128 3 os 05 2009 1 2009 2005 suusius 21
26. 44 8 20907 3 85 2090 442 2 08 84 2090742273 183 A A Uu Uu zo 3sox zr 107250 1099105 15 usa zoas 1S31viagodq9 8 7 Ja anas R me E 805222 in 1 __ 1 zm 91 81 01 1 808 92 x 4 128 Page 25 Revision 1 3 Figure 17 Keyboard schematic page 3 RadioDesk User Manual 1919 issus 5 93055 vv 1332342 ON ON nosa azis vl 2 ama 31vd 5 SV NOJdIHJ Z66z ANVdADOO ON 15 lt s s 7 x 2 lt 52 Ed amp ueeug 12 4 ac pa lt E Lo al is lt 8 3 ai 28 z z ni lt 2 2 2 4 434081 137431 1331 ias 031 3 DS OEC ea lt zz 24 sud 8 dd ge i 13d Idd Je 1 E Bi e zi Sz E ag n E 5 lt e 83d gad ng 3 S ai 2 434 gt tz iz a aad ead qz S lt e 189 iad Beal g 8 1937239 BL 3 1 aX Z lt 5 789 437 3d Re sad i lt S iE a LIA 8 884 gt J lt 271 288 1250 83 1
27. a one off project by Chipcon Chipcon intends to continue to improve and optimise these materials Make sure you are kept updated with the latest developments by subscribing to our Developer s Newsletter This advanced 2 4 GHz solution has many advantages compared to a conventional 27 MHz design The most important are the improved range and the possibility of having many systems operating in a small area The RadioDesk reference design firmware source code as well as hardware Gerber files are available free of charge please contact your local Chipcon representative to receive these files 2 About this manual This manual presents both the RadioDesk protocol and the RadioDesk reference design It provides all the technical material needed for an implementer to duplicate and modify both the hardware and software It also explains in detail how the design works and possible ways of modifying it 3 Definitions HID Human Interface Device the term used in USB nomenclature covering keyboard mice and other user interface devices TDMA Time Division Multiple Access a method for supporting multiple devices where devices coexist by transmitting at different times PTU Protocol Time Unit the length of a time slot CDMA Code Division Multiple Access FDMA Frequency Division Multiple Access FEC Forward Error Correction CRC Cyclic Redundancy Check FSK Frequency Shift Keying MSK Minimum Shift Keying HAL Hardware Abstraction
28. acon serves three purposes it allows for data transfer from the master to the slaves inform the slaves of the network status and allow the slaves to synchronise their timing to the master After the beacon the slaves transmit data to the master if they have data to report The last time slot is used by the master to scan a channel for use in the frequency adaptivity Time slot 0 Time slot 1 Time slot 2 Time slot 4 Time slot 0 Beacon Keyboard Mouse control Frequency scan Beacon Frame Figure 1 Basic RadioDesk frame structure Figure 1 shows how this looks in a system with three slaves a keyboard a mouse and a remote control Once a frame is complete the next frame follows immediately afterwards The slaves can power down at any time they are not required to respond to the beacon unless they have data to report 4 2 Terminology As described above the basic protocol period starting with a beacon and ending just before the next beacon is called a frame Each frame is sent and transmitted on a new channel in the frequency hopping sequence A frame is divided into time slots There is sufficient space in a time slot to transmit or receive a single packet Each time slot is dedicated to a single unit The time slots are per definition one PTU Protocol Time Unit long RadioDesk User Manual Revision 1 3 Page 5 A packet contains data that is sent from one unit to another It
29. aster should report to the PC that all buttons are released This prevents stuck buttons if the radio link goes down 4 6 5 Keyboard data Boot functionality demanded by PC BIOS consists of the first byte of modifier keys then up to 6 key codes Modifier keys Key 1 Key 2 Key 3 Key 4 Y Y Y mm 8 bits 8 bits 8 bits 8 bits 8 bits Figure 5 Suggested keyboard data If LED indicators for caps lock num lock and so on are included data can be sent in the single data byte available in the beacon packet 47 IDs and pairing The RadioDesk reference design uses 16 bit IDs but may easily be amended to use 24 bits This serial number is embedded into the OTP MCU in the master device In order to minimise the chance of collisions a random ID should be selected before starting a manufacturing batch and then the IDs should be incremented sequentially for each set in the batch Randomizing the start number is wise otherwise the first production units for each manufacturer would start at O and be likely to be equal to equipment from other manufacturers The likelihood of two different sets having the same ID can be found from the so called Birthday Theorem in statistics so called as the archetypical use is to find out how likely it is that two persons in a group share the same birthday 0 2N Equation 1 Birthday theorem q is the number of units and N is the number of possible IDs RadioDesk
30. consists of a preamble sync word and payload data followed by a CRC The packet format is described in more detail later on A channel is a logical number applied to a physical frequency RadioDesk uses up to 64 channels numbered from 0 to 63 even though the physical frequencies used for each channel may vary depending on the implementation Active channels are the 4 channels that are active in the frequency hopping scheme 4 3 Physical layer RadioDesk is designed to operate in the worldwide 2 4 GHz license free frequency band but could be ported to work at other frequencies Since the CC1100 is register compatible with the CC2500 it is very easy to port RadioDesk to work in the US 902 928 MHz frequency band for instance The implementer has to make sure that RadioDesk complies with appropriate regulatory requirements for instance duty cycle or frequency hopping requirements RadioDesk is designed to operate with a RF data rate of 250 kbps The RadioDesk reference design uses the CC2500 transceiver and utilizes MSK as modulation method It is easy to modify the system to operate at different data rates One very simple modification is to increase the data rate to 500 kbps RadioDesk can also be implemented on other RF transceivers For instance some implementers may want to utilize an IEEE 802 15 4 compatible radio such as the CC2420 The data rate is the same but the number of total channels need to be reduced Othe
31. d on packet loss statistics 6 5 Master The USB dongle is the master device of RadioDesk and responsible for synchronisation frequency selection and data transport It stays one PTU in each time slot and the slaves use beacon reception to synchronise with their master The four states time slots are shown in Figure 26 Each state corresponds to one PTU or frame slot The dongles main responsibility is to transport data from the connected devices to the host computer over USB in a manner which is transparent to the driver state state E N N BEACON_SLOT KEYBOARD_SLOT MOUSE_SLOT FREQHOP_SLOT send beacon to slaves receive keyboard packet receive mouse packet scan RSSI on one channel when not in suspend flag bad active channels for mode frequency change if required 27 C next active channel Figure 26 Dongle state diagram In addition to keeping track of time the master controls and initiates frequency changes on the active channels The dongle executes a frequency change if the following criteria are met with respect to the state of the slaves 1 The dongle has detected packet loss on a channel 2 slaves who are in AQUIRE mode have acknowledged the previous frequency change Slave modes are shown in Figure 27 no data packet received no data packet received in the last 5 seconds last frame Slave mode ACTIVE N Slave mode AQUIRE N Slave mode INACTIVE UN dongle
32. der msdev contains Microsoft Visual Studio Project files for the source code Note that the code cannot be built using Visual Studio It is merely there to aid source code navigation and other code organisers like Ultra Edit or Code Warrior may equally well be used Basic configuration parameters are found in include radiodesk mac config h Network ID range 0x0000 Ox7FFF define NETWORK ID Units to include Zdefine INCLUDE KEYBOARD define INCLUDE MOUSE Zdefine NUM DEVICES The main configurable parameter NETWORK 10 must be unique for each dongle in production batch The Units to include is important for implementers who require a system with only one slave Uncomment the redundant slave and set NUM DEVICES to 1 Basic RF parameters are found in config h Data rate programming RF 500KBPS define RF 250KBPS MSK FEC ENABLE Output power values defined in rf lib h Zdefine OUTPUT POWER OUTPUT M1 DBM 1DBm RadioDesk supports 500 kBit sec data rate in addition to the default 250 kbps At 500 kbps the timing allows FEC to be used The output power is also set in this file 64 MAC functionality The core of RadioDesk is implemented in the MAC layer Timing properties device access and frequency agility are all managed here The MAC is the interface between the applications at both ends of the link it uses the RF PHY layer and the CC2500 to establish a connect
33. e is built using the HT IDE3000 development suite from Holtek which is available from the Holtek WEB site www holtek com Please contact Holtek for emulator hardware HT ICE and interface boards It is recommended to unpack the code to the folder C Radiodesk in order to build directly from the delivery Otherwise the HT IDE3000 project files must be RadioDesk firmware and documentation is delivered together in a ZIP file RadioDesk User Manual Revision 1 3 reassembled Page 35 The directory structure is shown in Figure 25 C RadioDesk is the root RadioDesk 421 docs ao msdey 2 03 i 55 H sa applications 89 27 dongle a keyboard C lasermouse 8 71 mouse H sniffer include C1 2500 C dongle C G keyboard GB lasermouse mouse GB J radiodesk 421 slave sa C3 too Figure 25 RadioDes lib 421 2500 2 dongle 27 ht82k68e_keyboard C ht82k68e_lasermouse 421 ht amp 2k68e mouse2030 e ht amp 2k96e dongle 423 keyboard 421 mouse C radiodesk C slave ls File organisation User Manual Revision 1 3 Page 36 The HT IDE300 project files are located as shown below e Jsrc applications dongle ht82k96e rd dongle prj e Jsrc applications keyboard ht82k68e rd Jsrc applications lasermouse ht82k68e rd lasermouse prj The fol
34. e is needed on the PC side the USB dongle firmware is written to fulfil the USB HID requirements so the keyboard and mouse will work with any operating system that supports USB Human Interface Devices HID The RadioDesk protocol uses adaptive frequency hopping on four active channels picked from 64 possible The system is always hopping on four channels and a channel is replaced if the packet loss count exceeds a programmed threshold For instance a channel will be replaced if jammed by a WLAN system 6 2 Code structure The RadioDesk firmware is divided into four distinct layers interfacing each other through a set of functions macros and definitions files functions and macros have prefixes that clearly indicate which layer they belong to The exception is the application layer where no prefixes are used Layer Description HAL Defines the interface between the MCU and the RF chip sensors and other IO devices It also defines the internal registers of the MCU RF PHY Defines the properties of the RF communication link This is typically settings like data rate modulation formats etc The RF layer is used by the MAC to establish a link between the master and the slaves MAC Defines how the RadioDesk devices communicate across the RF link Includes addressing timing frequency agility pairing and retransmission The RF chip handles some of the MAC functionality address filtering being an example of this
35. e used to send data from master to slaves Caps lock status etc Table 2 Beacon payload 4 6 3 Data payload Byte Name Field Bit Length Purpose Comments pos pos 0 ID 16 bits Unique ID for each RadioDesk network 3 TYPE TYPE 7 5 3 bits Type of packet 001 Mouse 010 Keyboard RESYNC 4 1 bit Set if device is waking up Cleared by first ACK from dongle Sequence 3 0 4 bits Control number retransmissions 4 Status 7 0 1 bit Paired bit Set when a slave has been paired 4 6 0 7 bits Implementation May be used dependent to report say motion sensor status number of characters in the keyboard buffer 5 Data max Used to report bytes data from slaves to master mouse movements keyboard hits etc Table 3 Data payload RadioDesk User Manual Revision 1 3 Page 9 4 6 4 Mouse data The optical sensor typically provides two 8 bit delta values for X and Y movement This is also what is required for boot functionality by the PC BIOS Button status Delta X Delta Y Scroll wheel Additional data Y S 8 bits 8 bits 8 bits 8 bits max g bits Figure 4 Suggested mouse data In the additional data field it s possible to send data such as battery status scroll wheel data and so on When buttons are pressed the mouse should send data packets in each frame The master should implement a keep alive function so that if no data is received from the mouse for several frames the m
36. en made The pseudo random sequence can be implemented as a 15 bit shift register with the appropriate XOR feedback By setting the shift register to a value it is possible to select a RadioDesk User Manual Revision 1 3 Page 6 position in the sequence This is called the seed by analogy to random number generator algorithms Two units can ensure that they are at the same place in the sequence by comparing the value of the entire shift register The seed is transmitted in beacon packets so that slaves can synchronise with the pseudo random sequence of the master The implementer might choose to use a purely sequential switch between the four active channels This would make the two seed bytes in the beacon redundant 4 5 Data flow The master transmits a beacon packet in the first time slot of each frame The beacon packet contains protocol status information and data which the master wants to communicate to the slaves In a system where the master needs to transmit more data to the slaves than there is place for in the beacon packet there are two possibilities Either the time slot length can be extended or an extra time slot can be added for beacon transmission When a slave has data to transmit it listens for a beacon and then transmits a packet in its dedicated time slot To listen for beacons is not mandatory for a slave it is free to go into power down mode at any time to save power In addition the slaves do not need to transmit a
37. er data is available RadioDesk User Manual Revision 1 3 Page 39 dongle main initialise USB interface lt v send beacon packet wait until end of beacon frame v receive keyboard packet flag kb change to USB wait until end of kb frame kb packet received increment missedPacket Count update kb mode to AQUIRE or INACTIVE depending on missedPacketCountKb YES missedPacketCountKb 0 set mouse mode to ACTIVE v receive mouse packet flag mouse change to USB wait until end of mouse frame ouse packe received increment missedPacket Count update mouse mode to AQUIRE or INACTIVE depending on missedPacketCountMouse YES Y missedPacketCountMouse 0 set mouse mode to ACTIVE e v do RSSI scan on one channel store ban channel for further use depending on RSSI value calculate next channel change current active channel if set frequency for new beacon wait until end of RSSI scan frame neccessary based on packet loss Figure 28 Dongle program flow RadioDesk User Manual Revision 1 3 Page 40 6 6 Slave The slave when active listens for beacon packets and transmits its data in the assigned time slot Apart from packet transmission and reception there are no synchronous activiti
38. es activity in the slave The rest of the time the slave scans inputs mouse sensor keys buttons etc or sleeps to conserve power If the slave loses a large number of beacons it tries to resynchronise by scanning the currently active frequencies If this fails it scans the whole frequency range beacon received state RECEIVE BEACON state UPDATE set transceiver in RX mode scan inputs and set outputs and receive beacon on the if required predetermined active channel strobe datapacket in fill txfifo with data from apropriate slot if required previous i o update timer end of frame timer strobe TX Figure 29 Slave states RadioDesk User Manual Revision 1 3 Page 41 slave main issed too man YES search for beacon beacons NO Y wait for packet signal or timeout beacon and synchronise estimate timer received YES synchronise timer validate beacon packet Scan and buffer inputs beacon OK YES prepare data packet wait until slave slot strobe data packet missedBeaconCount 0 power managment based on missed beacon count and no sensor activity frame count wait for end of frame Y Calculate new frequency and select RF channel Scan and buffer inputs synchronisation incremen
39. es have been changed or after a reset then the probability distribution follows the curve in Figure 8 RadioDesk User Manual Revision 1 3 Page 11 Resync after sleep 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 Probability of synchronisation N 6 8 10 12 14 16 Number of frames Figure 6 Resynchronisation after sleep Resync after channel switch 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 Probability of synchronisation N 6 8 10 12 14 16 Number of frames Figure 7 Resynchronisation after channel switch Resync after reset condition 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 Probability of synchronisation 100 150 200 Number of frames Figure 8 Resynchronisation after reset RadioDesk User Manual Revision 1 3 Page 12 Typical HID devices will be used erratically with periods of use being separated by long periods of inactivity Studies show that the user can tolerate somewhat longer latency for the first event after a period of inactivity The device should therefore look at the time since the last event and switch into a low power mode after a certain period of inactivity This approach has been adopted by the manufacturers of movement sensors and is used in optical mice 4 9 Battery life time Battery lifetime is one of the key parameters for a wireless HID solution In order to estimate this it is necessary to know the characteristics of the battery
40. gure 5 Suggested keyboard nnns 10 Figure 6 Resynchronisation after 12 Figure 7 Resynchronisation after channel 2 12 Figure 8 Resynchronisation after 12 Figure 9 Optical mouse power mode transitions 14 Figure 10 Example of RadioDesk system with dongle and laser mouse 16 Figure 11 USB dongle schematic 1 17 Figure 12 USB dongle schematic 2 eee eene 18 Figure 13 Figure 14 Figure 15 Figure 16 Figure 17 Figure 18 Figure 19 Figure 20 Figure 21 Figure 22 Figure 23 Figure 24 Figure 25 Figure 26 Figure 27 Figure 28 Figure 29 Figure 30 Figure 31 USB dongle schematic 3 19 USB dongle schematic 4 20 Keyboard schematic 1 23 Keyboard schematic 2 24 Keyboard schematic page 3 25 Keyboard schematic 4 eene nnns 26 Mouse schematic page 1 28 Mouse schematic 2 29 Mouse schematic 3 0 100 30 Mouse schematic 4 31 Button and sensor board for laser
41. ined device Agilent has provided the following usage profile for a typical business user home users usually use their systems much less and will get correspondingly longer battery life times RadioDesk User Manual Revision 1 3 Page 13 1 496 of active usage with minimum latency 4 0 of inactive usage with higher latency on wake up 94 696 power down with the highest latency on wake up The mouse supports four different power modes e Active where the optical sensor is turned on all the time the scroll wheel is active the MCU is active and the radio is receiving listening to beacons and transmitting position data to the master If no activity is detected for 800 milliseconds the mouse goes into semi active mode Semi active where the optical sensor is being duty cycled to save power the scroll wheel is not active the MCU is active and the radio is listening to beacons If activity is detected the mouse goes to active mode If no activity is detected for 60 seconds while in semi active mode the mouse goes into sleep mode e Sleep where the optical sensor is being duty cycled at a low rate the scroll wheel is not active the MCU is in sleep most of the time and the radio polls for beacons at regular intervals If activity is detected the mouse goes into active mode If beacons have not been detected for 400 milliseconds the mouse enters deep sleep mode e When beacons have been found for 400 milliseconds then the PC
42. ion over the air Timing synchronisation is based on the beacon message transmitted at the start of each frame The slaves synchronise their clock on detection of the sync word of the beacon The only other synchronised activity in the slave is the transmission of data back to the master RadioDesk User Manual Revision 1 3 Page 37 Data collection power management and buffering of data are carried out independently of the synchronised activities Device access is based on the network identifier Every set of RadioDesk units needs a unique ID to allow identification and to avoid interference The network ID serial number is an integral part of the message in both directions RadioDesk uses address filtering to reject messages from neighbouring RadioDesk networks Pairing provides flexibility when combining master and slave units When powered up the slaves have no ID and address filtering is disabled All beacon messages are received but only the first beacon with a sufficiently high signal strength is considered for pairing If the beacon contents indicate that the master is not paired to any device of this type the slave will respond and the master subsequently accept the binding request At this point the slave enables address filtering and beacons from other networks are ignored The Frequency agility scheme of RadioDesk is based partly on packet loss partly on noise measurements The decision to replace a channel is entirely base
43. ions for advanced functionality USB dongle could be modified to add PS 2 option To take full advantage of the two way radio link it is possible to include an LCD display on the keyboard This can indicate caps lock num lock and scroll lock status as well as time and date currently playing artist and song for a Media PC calculator etc Force feedback technology can be added to the mouse in order to alert the user about system warnings etc This would use standard force feedback actuators such as those used in game pads Wireless desktop wireless keyboard and mouse could add a third remote control unit especially useful for Media PCs This would entail adding a time slot to the frame format It is possible to extend the range of the RF link by increasing the RF output power This can be done by adding two T R switches and a single transistor power amplifier to the RF circuitry This will require the use of single ended antennas and it is important to consider regulatory requirements as well Another possibility for extending the range is to use a lower RF data rate This will increase the latency and the power consumption but will allow a longer RF range without increasing the output power A third possibility is to utilize a different RF frequency For instance it is quite simply to port the existing design to the CC1100 to work in the US 902 928 MHz frequency band for instance The porting would involve changing the RF frequency setti
44. ised with reception of the beacon The frame length of 8 ms gives a total of 80 ticks per frame The beginning and end of the frame are utilised by RadioDesk for beacon reception and frequency hopping the rest is available to the application The task names referred to in Table 9 are implemented as macros The body of the macros executes the task sets a complete flag and then jumps back to the beginning of the main loop Synchronous tasks take a relative tick time as argument The actual implementation of the scheduler is located in two files lib slave slave c and include keyboard scheduler h or include mouse scheduler h The task macros are defined in scheduler h the calls are done from slave c RadioDesk User Manual Revision 1 3 Page 43 Table 9 Slave tasks MAC AQUIRE BEACON Listen for Yes Yes SYSTEM receive and validate beacon DEV GET DATA 2 Read and buffer user data TX FIFO data em eem je management SEN GET DATA 1 Read and USER buffer user data d cnn PN ad change 1 5 Prepare for SYSTEM beacon reception MAC PUT HEADER Move packet Yes No SYSTEM header to TX FIFO Tick depends of the time slot for the slave 19 for keyboard 39 for mouse RadioDesk User Manual Revision 1 3 Page 44 Task name Task Tstart Tstop Duration T between tasks Comment
45. itting or receiving In semi active mode the MCU is active the scroll wheel is turned off the optical sensor is being duty cycled and the radio is listening to beacon packets being in IDLE for the rest of the time In sleep mode the MCU is waking up at intervals the scroll wheel is turned off the optical sensor is being duty cycled and the radio is being woken up periodically The radio wakes up every 5 ds to check for beacons and frequency changes When it wakes up it needs to resync 90 of the time this will take less than 8 frames RadioDesk User Manual Revision 1 3 Page 14 In deep sleep the slave is completely off and the unit has to be woken up by a button press It will then scan for beacon and afterwards try to wake up the master if no beacon is found Please see the Excel spreadsheet for detailed calculations on power consumption 4 9 2 Keyboard The keyboard is usually less power intensive than the mouse because the system need only wake up when a key press is detected Again the usage pattern has a great deal of influence on the battery life time Since the CC2500 supports a voltage supply range of 1 8 3 6V and the MCU used supports a voltage supply down to 2 2V it is attractive to run all the circuitry directly from the batteries to save cost It is estimated that the system can utilise 8096 of the total battery life time if it cuts off at 2 2V In heavy business usage the keyboard might be used 4 hours a
46. nchronous mandatory task Synchronous mandatory task Revision 1 3 Page 45 6 8 Adding slave features The keyboard and mouse firmware delivered with RadioDesk contains the basic functionality of standard keyboard and mice The keyboard implements standard keys only Extensions like media keys scroll wheels and trackballs are not included as these may vary between implementations The mouse implements movement three standard buttons and the scroll wheel Example Adding trackball code to a keyboard To make this example simple we assume that the last two bytes of the keyboard packet can be used to transfer trackball movement data to the master The framework for adding trackball code is in place the file config h contains a definition which controls whether a keyboard has trackball functionality or not The definition is commented out by default Furthermore the implementer must add this own trackball sampling code in the interrupt service routine for the timer This may be done in the macro O POLL keyboard h 6 9 Power management ge a M 2 too many beacons missed period NO over medium period YES NO over longer device in DEEP SLEEP mode turn off sensor and radio MCU to halt wait for button wakeup device in ACTIVE mode no powersaving device in SEMI ACTIVE mode power cycle sensor 1096 duty cycle period
47. ngs and re routing the PCBs since antennas and matching circuitry are different at 900 MHz Suggestions for applying RadioDesk to other applications Gaming controllers joysticks gamepads dance mats motion controllers etc Remote controls Other star networks where master is not power limited RadioDesk User Manual Revision 1 3 Page 48 8 Document history Revision Date Description Changes 2005 05 04 Initial release 11 2005 07 18 Update for firmware rev 0 97 2005 07 27 Update for firmware rev 0 98 2005 09 16 Update for firmware rev 1 02 RadioDesk User Manual Revision 1 3 Page 49
48. oing pairing is having a button on each of the units and then require the user the press these buttons to pair the devices the likelihood of another unit close by being in pairing mode at the same time is very remote This works well but requires the user to perform this procedure every time the batteries are changed The master contains a fixed ID which the slaves bond to This is done because the master will lose power every time the PC is switched off while the slaves can rely on battery power RadioDesk implements a simple pairing scheme where the master has a fixed ID and the slaves attempt to bind to the dongle when they are reset The slave will attach to the first encountered master sending a beacon that it receives with a signal strength above a certain threshold 4 8 Power saving RadioDesk allows the slaves to power down at any time in order to save as much power as possible When a slave wakes up it first checks the channels that were active when it powered down If it does not find the beacon in a predefined number of tries it goes into search mode and searches all the 64 possible channels When searching the slave hops between random frequencies If no frequency changes have occurred since the slave went to sleep Figure 6 shows the probability of finding the beacon after a certain number of frames If a single frequency has been changed then the probability distribution in Figure 7 is correct If all four frequenci
49. r 0402 C151 220 pF X7R 1096 Capacitor 0402 C181 220 pF X7R 10 Capacitor 0402 D1 20BQ030 Schottkey diode 2A JP1MALE PINROW 2X4 Pinrow 2x4 JP2MALE PINROW 2X4 Pinrow 2x4 L1 554020 472 Power Inductor 4 7uH Coilcraft L2 BLM11A102S EMI filter bead Murata P1 Battery connector P2 PINROW_2X5 Pinrow 2x5 P3 PINROW_2X5 Pinrow 2x5 R1 100 2 Resistor 0402 R2 10 kO 2 Resistor 0402 R3 82 Q 2 Resistor 0603 R4 10 2 Resistor 0402 R5 10 2 Resistor 0402 R6 1 2 Resistor 0402 R7 180 2 Resistor 0402 R8 10 296 Resistor 0402 R171 56 196 Resistor 0402 U1 CC2500 2 4 GHz RF transceiver Chipcon U2 HT82K68E SOP20 Keyboard MCU SOP20 Holtek 04 561070 Synchronous boost switch Texas Instruments X1 X 26 000 20 20 10 16 26 000 MHz Crystal 20 20 ppm tolerance HC 49 NX5032 SMD X2 KR600MLWB 6MHz resonator Kingstate Table 7 Mouse bill of materials RadioDesk User Manual Revision 1 3 Page 33 6 The RadioDesk reference design firmware 6 1 Overview The RadioDesk reference design firmware runs on the Holtek MCUs used in the mouse the keyboard and the dongle The firmware except the USB related code and the SPI interface to the RF chip is written in C The firmware is designed with MCU portability in mind Porting to a different controller would only involve changing the HAL and the aforementioned parts written in assembly Note that no softwar
50. r 0603 R6 00 Resistor 0603 R171 59 196 Resistor 0402 TESTCON PINROW 2X5 Pinrow 2x5 for test U1 CC2500 2 4 GHz RF transceiver Chipcon U5 HT82K68E SSOP48 Keyboard MCU SSOP48 Holtek x1 X_26 000 20 20 10 16 26 000 MHz crystal 20 20 ppm tolerance HC 49 NX5032 SMD X3 KR600MLWB 6MHz resonator Kingstate Table 6 Keyboard bill of materials 5 3 Wireless mouse The wireless mouse is implemented on two PCBs The lower PCB includes the micro switches for the buttons scroll wheel and optical sensor while the upper PCB contains the rest of the electronics The electronics are powered from a TPS61078 switch mode regulator from Texas Instruments The reason for this is that the Agilent ADNS 6030 laser sensor needs a supply voltage between 3 0 and 3 6 V The same antenna and RF solution is used in the keyboard and the mouse The Z wheel or scroll wheel is of an optical type where a LED shines through the wheel itself presenting a quadrature signal that is detected by two photo transistors The mouse buttons are implemented using standard micro switches RadioDesk User Manual Revision 1 3 Page 27 aqvas 431158 21 vv 1332342 A38 ON ON W2S2 3715 asno W 0903232 ana 3iva
51. r than that the software may be left essentially unchanged Parameter Allowed range Unit Frequency range 2401 2464 MHz Frequency spacing 1 MHz Data rate 250 500 if FEC is to be used kbps Modulation FSK or MSK PLL lock time start time from 192 us IDLE blanking period PTU 2000 us Spread spectrum technique Adaptive frequency hopping Number of channels used 4 active selected from 64 possibilities Table 1 Basic physical layer parameters 44 Frequency hopping RadioDesk is an adaptive frequency hopping protocol Both the master and the slaves change frequency for each frame RadioDesk uses four active frequencies at any one time These are selected from a set of 64 possible channels The master scans through all 64 channels continuously at a rate of one channel each frame If one of the active channels has significantly worse performance than the best non active channel then the master switches out the bad channel with the good one To ensure that the active channels are not so close together that a single wide band interferer could jam all of them at once there is a limitation on the channel selection algorithm The frequency hopping is controlled by a 15 bit pseudo random sequence This sequence has a length of 32767 bits Since 32767 is not divisible by 2 and 2 bits are used to determine the channel used the RadioDesk hopping sequence will only repeat after 32767 hops have be
52. rmat The packet starts with a preamble which is used to settle the receiver chain Sync word is then sent to differentiate different systems This is followed by a length byte which indicates the length of the payload field excluding the CRC and the length byte itself The last part of the packet is a 16 bit CRC used to check for packet corruption 4 6 2 Beacon payload The beacon contains 12 bytes of payload the meaning of each field is shown in Table 2 below Byte Name Field Bit pos Length Purpose Comments pos 0 Network ID 16 bits Unique ID for each RadioDesk network 2 Seq type TYPE 7 5 3 bits Type of 000 Beacon packet 4 0 5 bits Reserved for future use 3 Status POWER 7 1 bits Enable power SAVE saving in slaves Reserved 6 2 5 bits Not used MOUSE 1 1 bits Indicate that a bind request mouse may bind KEYBOARD 0 1 bits Indicate that a bindrequest keyboard may bind 4 Hop 16 bits Current sequence position in hop info sequence 6 Ack 8 bits Ack of slave LSB slave 0 messages MSB slave 7 previous 0 keyboard frame 1 mouse 7 Active Byte pos 7 channels CH1 Byte pos 8 CH2 Byte pos 9 RadioDesk User Manual Revision 1 3 Page 8 CH3 Byte pos 10 CH4 RESERVED 7 6 2 bits Not used FREQ 5 0 6 bits Active frequency on channel 11 Data Reserved 7 0 7 bits Application dependent can b
53. t is powered from 1 or 2 alkaline cells using a switch mode boost converter This may be required if other circuitry requires a 3 3V supply for example the optical sensor in a wireless mouse and size constraints forbid the use of more than 2 cells This increases cost USD 0 30 in large quantities and some battery capacity is wasted because the voltage regulator efficiency is never 10096 but it does work down to the minimum battery voltage and enables very small designs using a single cell In order to estimate battery lifetime the easiest technique is to calculate an average current draw and then divide the capacity by the average current to find the battery life time in hours Please note that battery capacity will be slightly lower when a varying current is drawn than if the current was constant To calculate an average current it is necessary to calculate the length of time spent in various states and how much current is drawn in each state In order to simplify checking different scenarios for power consumption Chipcon has made Excel spreadsheets that perform the appropriate calculations These spreadsheets are enclosed in a ZIP file together with this document 4 9 1 Optical laser mouse An optical or laser mouse is typically the most power intensive user interface device because of the current consumption of the sensor A LED is also used to provide light for the sensor The mouse will therefore usually be the most power constra
54. t missed beacon count Figure 30 Slave program flow RadioDesk User Manual Revision 1 3 Page 42 6 7 Slave scheduler Although the RadioDesk is delivered with keyboard and mouse scanning firmware the customer might want to either modify an existing HID device or use RadioDesk for other types of devices game pads voting buttons etc Customising the slave software requires an understanding of the basic mechanisms of the slave application scheduler The scheduler tasks that are 1 Executed at a time relative to beacon reception 2 Executed when MCU capacity is available Asynchronous tasks include input scanning buffering and power management Inputs may in principle be scanned and buffered anywhere in the RadioDesk frame The slaves buffer data in order not to lose user input if the link is poor The keyboard firmware uses a ring buffer for key hits The mouse code accumulates the movement offsets The mouse and keyboard software splits input scanning in two parts one scan just after the power manager and one between beacon reception and data transmission This gives a sample rate of twice the frame rate If even higher rates are needed e g scroll wheel or track ball extra sampling may be used The scroll wheel requires a sample rate of 100 uSec hence it is implemented in the interrupt service routine of the tick timer The slave scheduler is based on ticks of 100 uSec duration these are synchron
55. that will be used as well as knowing how the device will be used In many aspects alkaline AA or AAA cells are ideal for powering a HID device They are inexpensive and available just about everywhere Good quality AA cells have a rated capacity of 2850 mAh while AAA cells are rated to 1250 mAh End of life voltage is usually given to be 0 9 V Depending on the MCU and other circuitry used several voltage regulation schemes are possible 1 The unit may be powered directly from the batteries The 2500 2550 radio supports a voltage supply range of 1 8 3 6 V This fits very well with the 1 8 3 2 V range of two serially connected alkaline cells If the other circuitry in the unit can also operate with this input voltage range then this is the preferred option as it provides the lowest cost and utilizes the battery capacity to the best extent It is possible to use direct powering even if the minimum supply voltage of the MCU or another critical component is more than 1 8V but then the battery life time will be reduced accordingly 2 The unit is powered from 4 alkaline cells using a 3 V or 3 3 V linear regulator This will allow the unit to utilize the whole battery capacity but 4 batteries are physically bulky This can be a good solution for a wireless keyboard as space is generally not a problem but is not practical for a wireless mouse because of size and bulk Some capacity is wasted in the voltage regulator 3 The uni
56. urrent consumption in RX of 15 6 mA into account the duty cycle must be lower than 0 25 15 6 or 1 696 This means that the CC2500 can be active for 16 ms every second For the specific purpose of waking up a PC from suspend mode it is suggested that a single channel approach is taken The reason for this is that long latency is usually acceptable it is not a problem in the wake up scenario since wake up itself takes many seconds Secondly most interferers are only transient in nature so a device jamming the wake up frequency for several seconds is not likely Wake up functionality would not be possible at all using a low cost MCU if it were not for the CC2500 wake on radio function which enables the MCU to stay in the lowest power state while the radio scans for activity It is mended that the wake up channel be selected based on the network ID If wakeup is used the keyboard and mouse will be programmed to transmit a long several second series of wake up messages on the wake up channel when user action occurs and the mouse and keyboard cannot find a beacon RadioDesk User Manual Revision 1 3 Page 15 5 The RadioDesk reference design hardware The RadioDesk reference design consists of a wireless mouse wireless keyboard and small form factor USB dongle The hardware has been designed with very low cost components and with large scale manufacturability in mind
Download Pdf Manuals
Related Search
Related Contents
INSTALLATION MANUAL Onkyo 29400086 User's Manual Gerador de Partida Automática Conext™ TORNADO T/PROCAP & T/PROCAP/WELD Instruções iTrain anfangen mit Copyright © All rights reserved.
Failed to retrieve file