NEW DATABASE - 350 MILLION DATASHEETS FROM 8500 MANUFACTURERS
DS1990A DS1991 DS1992 DS1993 DS1994 DS1995 DS1996 DS1982 DS1985 DS1986 DS1920 - Datasheet Archive
1 iButtonTM Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABLE OF CONTENTS 1 iButtonTM Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . II. Identification by Touch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . III. Alternate Identification Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A. Bar Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B. Magnetic Stripes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C. Chip Cards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D. RF Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IV. Basics of iButton Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A. Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B. Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C. Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D. Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V. iButton Application Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B. iButton Recorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C. iButton Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D. Touch Transporter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E. Archive Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VI. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Product Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 I. Common Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 A. Mechanics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 B. Electrical Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 C. ROM Registration Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 C.1. Family Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 C.2. Serial Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 C.3. Special Rules for Customer Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 C.4. Example of a PrivatetoPublic Code Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 II. Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 A. MicroCans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 A.1. DS1990A DS1990A Serial Number iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 A.2. DS1991 DS1991 MultiKey iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 A.3. DS1992 DS1992 Memory iButton: 1KBit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 A.4. DS1993 DS1993 Memory iButton: 4KBit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 A.5. DS1994 DS1994 Memory Plus Time iButton: 4KBit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 A.6. DS1995 DS1995 Memory iButton: 16KBit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 A.7. DS1996 DS1996 Memory iButton: 64KBit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 A.8. DS1982 DS1982 AddOnly iButton: 1KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 A.9. DS1985 DS1985 AddOnly iButton: 16KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 A.10. DS1986 DS1986 AddOnly iButton: 64KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 A.11. DS1920 DS1920 Temperature iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 B. Solder Mount Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 B.1. DS2405A DS2405A Addressable Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 B.2. DS2404S DS2404SC01 Dual Port Memory Plus Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 III. Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 IV. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 081297 1/6 i 1 2 2 2 2 3 3 3 3 3 5 5 5 8 8 8 8 8 8 8 TABLE OF CONTENTS 3 Mechanical Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 II. MicroCans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 A. Package Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 B. Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 C. Temperature Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 D. Human Readable Engraving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 III. iButton Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 IV. iButton Mounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 A. ThroughMount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 B. Press Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 C. Spring Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 V. Special Mounting Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 VI. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4 Electrical Standards and Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 I. 1WireTM Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 B. Write Time Slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 C. Read Time Slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 D. Presence Detect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 E. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 F. Overdrive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 II. 1Wire Interface Electrical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 A. Parasite Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 B. PullUp Resistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 C. Margin Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 III. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5 Logical Standards and Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 I. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A. Protocol Architectural Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A.1. Physical Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A.2. Link Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A.3. Network Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 A.4. Transport Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 A.5. Presentation Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 B. Section Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 II. Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A. FaultTolerant Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A.2. ROMSection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A.3. Memory Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 B. Command Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 B.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 B.2. Bit Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 C. MicroLAN Networking Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 C.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 C.2. Command Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 C.3. Search ROM Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 C.4. Overdrive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 081297 2/6 ii TABLE OF CONTENTS D. Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 D.1. Memory iButtons (NV RAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 D.1.a. Transfer Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 D.1.b. Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 D.1.c. Writing with Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 D.2. AddOnly iButtons (OTP EPROM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 D.2.a. Transfer Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 D.2.b. Status Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 D.2.c. Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 D.2.d. Writing with Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 III. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6 Special Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 II. ROM/NV RAM Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 A. DS1990A DS1990A Serial Number iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 B. DS1991 DS1991 MultiKey iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 B.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 B.2. Scratchpad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 B.3. Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 B.4. Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 B.5. Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 C. DS1992 DS1992 Memory iButton 1K Bit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 D. DS1993 DS1993 Memory iButton 4K Bit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 E. DS1994 DS1994 Memory iButton 4K Bit NV RAM with Real Time Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 E.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 E.2. Register Map, Device Control, Device Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 E.3. Interrupt Signalling and Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 E.3.a. Alarm Versus Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 E.3.b. Interrupt Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 E.3.c. Interrupt Signalling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 E.3.d. Interrupt Acknowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 E.3.e. Conditional Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 F. DS1995 DS1995 Memory iButton: 16K Bit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 G. DS1996 DS1996 Memory iButton: 64K Bit NV RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 III. AddOnly iButtons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 A. DS1982 DS1982 AddOnly iButton: 1KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 B. DS1985 DS1985 AddOnly iButton: 16KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 C. DS1986 DS1986 AddOnly iButton: 64KBit OTP EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 IV. Other MicroCan Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 V. SolderMount Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 A. DS2407 DS2407 Addressable Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 B. DS2404S DS2404SC01 Dual Port Memory Plus Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 VI. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7 iButton File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 II. Data Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 III. Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 IV. Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 V. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 081297 3/6 iii TABLE OF CONTENTS 8 Systems Integration Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 II. ESD Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 III. DS9097 DS9097 COM Port Adaptor for IBMCompatible PCs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 A. DS9097 DS9097 COM Port Adaptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 B. AddIn Cards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 IV. Interfaces To Other Computers And Operating Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 A. 8250 UART for Serial Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 B. iButton Peripheral Control Card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 C. Phantom Bus Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 D. RS232C RS232C iButton Terminal Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 V. Microcontroller Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 A. General Interfacing Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 B. BiDirectional Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 C. Programmable Data Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 D. Fixed Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 VI. Microprocessor Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 VII. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 9 Systems Integration Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 II. IBMCompatible PC Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 A. Device Drivers for MSDOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 A.1. Advantages of InterruptLevel Device Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.1.a. Hardware Independence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.1.b. Interchangeability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.1.c. AddIn Card Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.1.d. Convenient Linkage to High Level Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.2. Specification of the Interrupt Level Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 A.2.a. The DOW Interrupt (Link, Network and Transport Layers) . . . . . . . . . . . . . . . . . . . . . . 96 A.2.b. The TMEX Interrupt (Presentation Layer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 B. Dynamic Link Libraries for Microsoft Windows (TMEXGEN and TMEXCOM) . . . . . . . . . . . . . . . . 107 B.1. Version Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 B.2. Basic Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 B.2.a. TMSetup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 B.2.b. TMTouchReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 B.2.c. TMTouchByte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.2.d. TMTouchBit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.2.e. TMClose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3. Extended Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.a. TMFirst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.b. TMNext . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.c. TMAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.d. TMStrongAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.e. TMStrongAlarmAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 B.3.f. TMRom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.3.g. TMFirstAlarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.3.h. TMNextAlarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.3.i. TMReadPacket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.3.j. TMWritePacket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.3.k. TMBlockIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 B.4. TMEX Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 B.4.a. TMFirstFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 081297 4/6 iv TABLE OF CONTENTS B.4.b. TMNextFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.c. TMOpenFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.d. TMCreateFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.e. TMCloseFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.f. TMReadFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.g. TMWriteFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 B.4.h. TMDeleteFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.4.i. TMFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.4.j. TMAttribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.4.k. TMReNameFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.5. Session Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.5.a. TMStartSession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.5.b. TMValidSession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 B.5.c. TMEndSession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 C. EXAMPLE PROGRAMS UTILIZING TMEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 C.1. MS DOS Programming Examples in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 C.1.a. TTYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 C.1.b. TDIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 C.1.c. TDEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 C.1.d. TATTRIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 C.1.e. TCOPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 C.1.f. TFORMAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C.1.g. TREN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C.1.h. TPEEK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C.2. Other iButton Utilities for MS DOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 C.2.a. TVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 C.2.b. TCHK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 C.2.c. TOPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 C.2.d. TMEMCOPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 D. Programming Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.1. General Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.1.a. BIOS Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.1.b. Calling from Application Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.2. Linkable Device Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.2.a Independence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 D.2.b. Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 III. iButton Usage With Other Computers And Operating Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 IV. Microcontroller Programming Support For iButtons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 A. TouchReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 A.1. Alarm Pending . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 A.2. Short Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 A.3. Adaptive Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 B. Touchbit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 C. Touchbyte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 D. Access System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 E. Hardware Interrupt Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 V. Usage Of iButtons With Centralized Computers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 VI. TMEX2.00 Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 VII. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 081297 5/6 v TABLE OF CONTENTS 10 Validation of iButton Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . II. Touch Validator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . III. Default Data Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IV. Chapter Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . APPENDIX 1 UNDERSTANDING AND USING CYCLIC REDUNDANCY CHECKS WITH . . . . . . . . . . . . iButton PRODUCTS Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Description Dallas Semiconductor OneWire CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CRC16 Computation for RAM Records in iButtons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 124 124 124 124 125 126 127 127 132 APPENDIX 2 141 I. II. III. IV. V. VI. USE OF ADDONLY iButton FOR SECURE STORAGE OF . . . . . . . . . . . . . . . . . . . . . . . . MONETARY EQUIVALENT DATA Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddOnly iButton as an Alternative Technology for Monetary Tokens . . . . . . . . . . . . . . . . . . . . . . . . . . Electronic Crediting and Debiting of AddOnly iButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Calculating Bit Permutations from Unique Registration Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Description of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 141 141 142 143 144 APPENDIX 3 EXAMPLE OF iButton USAGE IN A BANKING APPLICATION . . . . . . . . . . . . . . . . . . . . . . IATA.0 File Format And Description (Track 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ABA.0 File Format and Description (Track 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATM.0 File Format and Description (Track 3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 145 146 146 147 APPENDIX 4 MANAGING CONCURRENT INTERRUPTS IN iButton I/O SOFTWARE . . . . . . . . . . . . . . 149 081297 6/6 vi PREFACE Memory iButtons are highcapacity, generalpurpose electronic data carriers, each with a registered serial number. Organized like a floppy disk, Memory iButtons can store data files for multiple applications within the same device. This manual summarizes technical and mechanical specifications for the iButtonTM family. It is intended as a guide to enable readers to integrate iButtons in their own identification systems. The contents are as follows: Chapter 1. iButton concept. Chapter 2. iButton product line. Chapter 3. Mechanical details of iButton products. Chapter 4. Electrical details of iButton systems. Chapter 5. Logical behavior of iButtons. Chapter 6. Devicespecific features of iButtons. Chapter 7. iButton file structure. Chapter 8. Hardwareinterfacing iButtons. Chapter 9. Softwareinterfacing iButtons. Chapter 10. Validation of iButton Standards. Appendix Background information on cyclic redundancy checks and examples of iButton applications. Index. 081297 1/1 vii iButtonTM OVERVIEW 081297 1/151 1 CHAPTER 1: iButtonTM OVERVIEW iButtons can be read without expensive electro optical equipment. iButtons can hold up to 100 times the data of bar codes, with larger capacities in development. Each iButton proves its identity by its unique serial number. The serial number of an iButton acts as a globally unique node address to access the device as part of an unlimited network. The contents of the chip data carriers can be changed while attached to an object. iButtons can accommodate over one million changes. A clamshell, steel container called a MicroCan is better suited to harsh operating environments. Handheld equipment can be made smaller, lighter, and less expensive since virtually no energy is needed to read or write. All communication with iButtons is reduced to a single signal plus ground for a simple, selfaligning contact. Long and short pulses encode the binary 1's and 0's. Because iButtons are digital circuits, they talk directly to other chips in a computer, resulting in minimal cost interface using one CMOS/TTL logic signal. A reader/writer for iButtons can be implemented with just one spare I/O line of a microcomputer, often a free resource in a system. I. Introduction Although humanreadable labels have been used for ages, it was the advent of computerreadable labels that quickly revolutionized the way grocery stores operate and made possible the overnight delivery of packages. When errorprone and time consuming key entry was replaced by bar codes, it became convenient to build large databases to help in making accurate and timely decisions. In the next step in the evolution of labelling technology, inkonpaper bar codes are surpassed by silicon media. With Dallas Semiconductor's automatic identification technology, a chip becomes the label that can serve as a standalone data base. Attached to an object or carried by a person, the chip identifies and carries relevant information available instantly with little or no human intervention. People access secure areas with convenience, health care professionals accurately create records, and workers efficiently track items as they travel along the assembly line. Three distinct limitations of bar codes are overcome by chips: 1. They hold significantly more information. III. Alternate Identification Technologies 2. Information on the chip can be changed; chips can be updated via computer while affixed to their object. iButtons expand on existing Auto ID technologies. This section discusses some of the limitations of existing technologies and how iButtons overcome them. 3. Cost of access points, that is the communication with computers, is drastically lower because of direct, chiptochip digital data transfers. A. Bar Codes Bar code systems require electromechanical printers and complicated electrooptical readers that must cope with marginal signals as they occur with changing scanning speed, varying scanning angle, poor contrast or dirt. Sunlight impairs the readability of the bar code due to high ambient light. After the reflected light is converted to an electrical signal, the symbology must be decoded to obtain the desired character code. II. Identification by Touch The lowest cost method of making a chip into a computerreadable label is to extend its internal connections out to electrical contacts suitable for probing. The simplest arrangement is a single data lead plus a ground contact. In this way, a twopiece stainless steel container called a MicroCanTM serves both as protective housing and electrical contacts: surface (data) and rim (ground). Its circular shape guides a simple, cup shaped probe over its rounded surfaces even if struck with significant misalignment. The 16 mm button shape serves all iButtons. By contrast, iButtons need no optics or decoding since the information can be stored as ASCII characters. It can deliver the ASCII characters directly, at a rate of 2,000 characters per second (16.3 kbps). This open information structure allows system integration which is both hardware and software independent. Furthermore, the "scanner", "printer", unique reference number and the computer interface are built into the chip. While iButtons share some of the characteristics of bar codes, these chipbased data carriers have many advantages over inkonpaper technology: 081297 2/151 2 B. Magnetic Stripes D. RF Tags Another method of identification is magnetic stripes on plastic carriers (e.g., credit cards) or paper ticket stock. Like bar codes, this method must overcome analog signals. Further, data can be altered easily with just a small magnet. Strong magnetic fields common to many environments can inadvertently erase data. Magnetic stripes are also sensitive to dirt that will scratch the reading coil of the card reader and damage the tape itself. Since the data density of magnetic stripes is significantly higher than that of bar codes, the readers need precise mechanics for correct alignment and smooth and continuous movement of the card. Magnetic stripes are unsuitable for labeling; they have to be removed from the object not only for writing but also for reading. Although RF Tags are very convenient, they have some inherent problems. Depending on the desired range of reception, the energy consumption may be quite high. Wide variations in the minimum and maximum range make zoning difficult. RF Tags are prone to interference from intentional transmitters (radio stations) and unintentional transmitters (electronic equipment, engines, neon lamps, etc.). More serious problems are the availability of frequencies for the receive and transmit channels and the approval of national authorities. Every country has its own rules and frequencies, which prevents a common standard for worldwide use. Another issue usually neglected is the influence of electromagnetic fields on human bodies. iButtons, by contrast, are selfcentering. No alignment is required; a simple touch is all that is required to access digital information. iButtons do not need radio frequencies, since data is transferred by electrical conductivity during the momentary contact. This allows their use without any license in every country. The metal package shields iButtons against electromagnetic fields and allows troublefree operation even under intense electromagnetic fields. Multiple iButtons sharing the same conductive surface can be individually read or written by the same contact. The specificity of the contact makes zoning precise and the digital communication gives contact ranges up to 300 meters. C. Chip Cards Chip cards are credit cardsize, multilayer plastic cards that contain a complete microcontroller or memory and an 8contact, goldplated probe area for connection with the host computer and power supply. They are not designed for high resistance intermittent contacts. Since chip cards have eight contacts versus iButton's two, they are sensitive to alignment and the sequence in which contacts are made. For economic reasons, the contacts carry only a thin soft gold plating which may easily wear off, exposing the copper layer. Exposed copper forms a hard oxide which decreases the contact quality and leads to card malfunction. Another problem with cards is mechanical bending. The plastic material itself is flexible but the chip inside is as hard as glass. The chip can crack or the thin gold wires connected to the chip can rip off. Chip cards are also unsuitable for labeling, since they have to be removed from the object for both reading or writing. The whole system functions only if the card is inserted in the right way (four possibilities) and all eight contacts are made. Due to the limited lifetime of the contacts and the multi layer structure, chip cards are throwaway products at prices that are not throwaway. IV. Basics of iButton Operation A. Technology An iButton is a chip housed in a stainless steel enclosure. To keep the cost of access low, the electrical interface is reduced to an absolute minimum, i.e., one data line plus ground. The energy needed for communication is "stolen" from the data line ("parasitic power") . Figure 11 gives a general overview of an iButton. The chip inside is produced using CMOS technology and consumes only leakage current when in an idle state. To keep energy consumption as low as possible during active times, and to be compatible with existing logic families, an iButton's data line is designed as an open drain output (see Figure 12). The current source from the data line to ground returns the data line to ground if the iButton is removed from the probe. The open drain interface makes iButtons compatible with all microprocessors and standard logic systems. In a CMOSenvironment, only a nominal 5 k pullup resistor to 5V VDD is required to get normal operating conditions on an opendraintype bidirectional port (see Figure 13). If input and output of the processor use separate pins, the wiring shown in Figure 14 will provide an appropriate interface. iButtons, on the other hand, are designed for poor, intermittent contacts and withstand large mechanical stresses. They need only two contacts, which are insensitive to angular orientation. By design it is not possible to probe iButtons incorrectly. 081297 3/151 3 iButton BLOCK DIAGRAM Figure 11 1WIRE CHIP DATA IN ADDRESS CONTROL MULTIPLEXER MEMORY POWER DATA OUT iButton INTERNAL DATA INTERFACE Figure 12 DS19xx 1WIRE PORT I/O RX TX 5µA Typ. 50 OHM MOSFET BUS MASTER CIRCUIT (OPEN DRAIN) Figure 13 BUS MASTER VDD 5 k RX TX 081297 4/151 4 BUS MASTER CIRCUIT SEPARATE I/O Figure 14 BUS MASTER VDD 5 k RX TX B. Protocol (after touching), the iButton pulses the data line low to tell the master that it is on the line and is waiting to receive a command. This waveform is called a presence pulse. The master can also request an iButton to give a presence pulse by issuing a reset pulse. If the iButton receives a reset pulse or is disconnected, it will sense a low level on the data line and will generate a presence pulse just after the line reaches the high level again. A complete Reset/Presence Pulse sequence is shown in Figure 16. In a simple environment as described above, an optimized approach for bidirectional communication, called the 1Wire protocol, is used. The serial transfer is done halfduplex (i.e., either transmit or receive) within discretely defined time slots. In every case, the microcontroller (as the master, using a cupshaped probe) initiates the transfer by sending a command word to the buttonshaped slave iButton. Similar to electric plugs, where the male and female ends define sink and source, in the touch environment the cupshaped probe defines the master and the button shape indicates the slave. This clean definition avoids conflicts like masters talking to each other. D. Data Transfer After the presence pulse, the iButton expects to receive a command. Any command is written to the iButton by concatenating writeone and writezero time slots to create a complete command byte. Commands and data are sent bit by bit to make bytes, starting with the least significant bit. The synchronization of master and slave is based on the sharp slope that the master generates by pulling the data line low. A certain time after this slope, depending on data direction, either the master or the slave samples the voltage on the data line to get one bit of information. This method of operation is called data transfer in time slots. Each time slot is independently timed so that communication pauses can occur between bits if necessary, without causing errors. Figure 15 illustrates the general characteristics of this communication. The data transfer in the opposite direction (reads from iButton) uses the same timing rules to represent a 1 or a 0, respectively. Since iButtons are designed to be slaves, they leave it to the master to define the beginning of each time slot. To do this, the master simply initiates a writeone time slot to read a data bit. If the iButton has to send a 1, all it has to do is wait for the next time slot. If it has to send a 0, the iButton will hold the data line low for a specified time, in spite of the release by the master. An example of a complete command sequence starting with a presence pulse and ending with data is shown in Figure 17. The activity of the master is drawn in bold lines. Gray lines mark the response of the iButton. Thin lines indicate that neither is active. The line is pulled high by a resistor. C. Synchronization Data transfer cannot be done before the iButton and master are connected, i.e., before the memory touches the data and ground line of the microcontroller. Just a few microseconds after the connection is established 081297 5/151 5 DATA TRANSFER IN TIME SLOTS Figure 15 RECOVERY TIME FALLING EDGE INITIATES AND SYNCHRONIZES EACH BIT WRITE ONE TIME SLOT BEGINNING OF NEXT BIT WRITE ZERO TIME SLOT BEGINNING OF NEXT BIT 15 µs max ACTIVE TIME SLOT (60 µs min) RESET AND PRESENCE PULSE Figure 16 MASTER DRIVES THE DATA LINE LOW FOR A RESET iButton DRIVES DATA LINE LOW FOR PRESENCE DETECT RESET PULSE PRESENCE PULSE RESET SEQUENCE 081297 6/151 6 EXAMPLE READ ROM Figure 17 VDD Presence pulse 1 1 0 0 1 ROM Data 64 bits Command 8 bits Touch 1 0 0 0 1 1 0 0 Initiation of time slot (High ³ Low) defined by host, remaining timing determined by iButton and resistor. Timing defined by host LINE TYPE LEGEND: Bus Master Resistor pullup iButton 081297 7/151 7 V. Memory iButton Application Example as a data dump for iButton Recorders (D) and iButton Editors (F). The dumped data can then be read by the system PC (E) or by an iButton Editor (F). The system PC can also write data to a Transporter (E) to be dumped later to an iButton Editor (F). A. Introduction The attached Memory iButtons are mini databases for their associated object. For a minimal system, the user needs at least one personal computer to read and write Memory iButtons. For mobile workers, it is necessary to read and write Memory iButtons on the go. To allow this, many portable computers including iButton Recorder, iButton Editor, and Touch Transporter have been developed by independent companies. Figure 18 shows a general application example including all components and possible data paths. E. Archive Computer This computer can hold an inventory of all objects carrying iButtons. It receives new data about the objects, their contents and location via iButton Recorders (H), Transporters (E), iButton Editors (I) or directly (B). It can write to Memory iButtons either via iButton Recorder (H,A), iButton Editor (I,C) or directly (B). It also can load new application software to iButton Recorders (H). B. iButton Recorder The iButton Recorder is a penshaped mobile reader/ writer for Memory iButtons. It can display (optional), rubber stamp, prompt the operator, read/write (designated A and G in Figure 18), store and timestamp data from readings and dump that data either to a Transporter (D), another iButton Recorder (K), an iButton Editor (L), or to the system PC (H). The iButton Recorder loads its own application software via the serial port adaptor from the PC (H). VI. Chapter Summary iButtons let users convert manual information gathering, data transport and identification into a completely electronic system. Equivalent to a document number, the unique serial number of each iButton acts as node address within an unlimited network. The memory acts as buffer storage, collecting information while insulated from the network. Data is then deposited to the network with a simple touch. In contrast to paper labels, Memory iButtons can be read and written, making them reusable for a virtually unlimited number of cycles. A kind of re writable silicon label, the Memory iButton replaces paper documents that are difficult to attach to objects and are prone to damage or illegibility. Data stored in Memory iButtons is directly available as a digital signal, which is the native language of all computers. C. iButton Editor iButton Recorders are especially relevant where many Memory iButtons need predefined data updates. The iButton Editor is a handheld computer that provides all the functions of the iButton Recorder and additionally can accept data and commands via its keyboard. It can read and write data from/to Memory iButtons (C) and Transporters (F), exchange data with the system PC (I), read iButton Recorders, and supply data to be read by iButton Recorders (G). iButton provide a very high immunity to electromagnetic fields, mechanical stress and dirt. They can be reprogrammed with the same probe that reads them. No additional equipment is required to keep information uptodate, permitting Memory iButtons to be recycled for thousands of uses. The flexibility and the excellent price/performance ratio of silicon auto ID technology is based on standard massproduced iButtons and customerspecific software. To realize a specific application, first a data flow chart including type and quantity of data must be detailed. D. Touch Transporter For technical and economic reasons, networks cannot be made to link every point. Therefore other data carriers are needed, such as floppy disks. Like floppy disks, Memory iButtons are general data carriers. If a higher capacity Memory iButton is needed than is currently produced, Memory iButtons can be ganged together to form a larger capacity Memory iButton, referred to as a transporter. This highcapacity Memory iButton can act 081297 8/151 8 9 TOUCH TRANSPORTER D A A G iButton RECORDER K iButton RECORDER A G A C L B H MEMORY iButtons ATTACHED TO OBJECTS L C I B iButton EDITOR iButton PROBE SERIAL PORT ADAPTOR DS9097 DS9097 F TOUCH TRANSPORTER E iButton ENVIRONMENT AND DATA FLOW CHART Figure 18 081297 9/151 081297 10/151 10 PRODUCT OVERVIEW 081297 11/151 11 1012) devices of the same family code were produced per year, this number range would be sufficient for 281 years. In addition there are 128 family codes available. If the most significant bit of the family code is set, the device's functionality is still the same as that of the standard device, but the serial number follows special rules. CHAPTER 2: PRODUCT OVERVIEW I. Common Features A. Mechanics The iButton MicroCan is 16.3 mm in diameter. There are two standard thicknesses: 3.1 mm and 5.9 mm. Devices that are powered by the master via the data line (parasitepowered) are available in both package types. All other devices are available in the 5.9 mm MicroCan only. Figure 21 shows the mechanical outlines of both versions. Since the lid of either MicroCan is the same, both can use the same probe. The flange at the bottom of the MicroCan allows for flexible mounting. Further details of iButton mechanics are found in Chapter 3. C.3. Special Rules for Customer Codes If the custom flag of the family code is set, a part of the number pool is reserved to designate specific customers. That is, the 12 most significant bits of the serial number allow 4096 different customers each to have their own special device. The code for these 12 bits is assigned by Dallas Semiconductor with the first customer order. Since the ROM section is 64 bits, and 8 bits are taken each for family code and CRC, there remain 36 bits to store customerdefined data together with unique serial numbers. Customerspecific devices require special registration and ordering procedures to control access to only one customer. Customerspecific devices can be made public if officially authorized by the originator. B. Electrical Behavior Other features common to all iButtons are the serial 1Wire protocol, presence detect, and communication in discrete time slots. These electrical details are discussed in Chapter 4. C. ROM Registration Number A laserprogrammed ROMsection, containing a 6byte deviceunique serial number, a onebyte family code, and a CRC verification byte, is also common to all iButtons. Details about the CRC are found in Chapter 5. Depending on their requirements, customers have four options for using the remaining 36 ROM bits. Option A allows the eight most significant bits of this range to be programmed with customerdefined data, leaving 28 bits for unique serial numbers (268.4 million combinations). Option B allows the 12 most significant bits to be customerdefined, still allowing 16.8 million unique serial numbers. With Option C, the customer can specify the 16 most significant bits; the pool of unique serial numbers, however, diminishes to 1.05 million. Option D allows the 20 most significant bits to be defined by the customer, but the total number of unique serial numbers reduces to just 65,536. A more complete description of customerspecific devices is available on request. C.1. Family Code The family code is a typespecific value that references the device's functionality and capacity. The lower seven bits of the family code indicate the device type; the most significant bit of the family code is used to flag customerspecific versions. Thus 128 different standard devices can be coded. C.2. Serial Number The 48bit (6byte) serial number can represent any decimal number up to 2.81*1014. If 1000 billion (1.0 * Figure 21 O 14.55 O 16.25 O 17.35 O 14.55 0.50 0.50 O 16.25 O 17.35 3.10 All dimensions are in millimeters 081297 12/151 12 5.89 C.4. Example of a PrivatetoPublic Code Conversion o f signature of the first 7 bytes. It allows fast checking of the complete communication sequence. If the CRC calculated by the reading master matches the CRC read from the device, the reading was completely correct. This is one of the reasons why iButtons don't require stable electrical contacts. One of the components inside the DS1994 DS1994 Memory Pluse Time iButton is the DS2404 DS2404, also available separately. Depending on the application, this chip may be connected to a microprocessor using its 3wire interface, while the 1Wire interface operates as iButton. One such application is the Touch Pen chip set, where dualporting the DS2404 DS2404 is required. Dallas Semiconductor has customized the chip so that it can be distinguished from a singleported DS2404 DS2404. In order to make the customized chip generally available, the privateto public conversion has been authorized. Instead of 04H, this customized version carries the family code 84H to mark it as a custom part. The 12 most significant bits of the serial number are coded 001H to indicate dualport operation. Using Option A, the customer field is programmed 00H, leaving 28 bits for serialization. This chip is available as part number DS2404S DS2404SC01 (SOIC package). Because of its design and the strict control of the manufacturing process, the DS1990A DS1990A is a unique electronic identifier that is impractical to be counterfeited. It is appropriate for applications where absolute identification is required. A.2. DS1991 DS1991 MultiKey iButton Like the DS1990A DS1990A, the DS1991 DS1991 incorporates a serial number with family code and CRC. To this it adds a 64byte nonvolatile scratchpad RAM, and three independent passwordsecured nonvolatile RAM areas of 48 bytes each, called subkeys. For every secured RAM area there is also a public identification field of eight bytes. Figure 23 illustrates the internal organization of the device. II. Devices The DS1991 DS1991 is designed as a high security electronic key that allows access to different applications with only one device. In fact, each of the three keys can be regarded as a protected application file. The ID field contains the file name, and the secured RAM houses the access code. Thus several persons can use the same access code although they carry different samples of the DS1991 DS1991. A. MicroCans The sections below explain the different versions of iButton MicroCans. Table 21 gives a complete overview of the product family. A.1. DS1990A DS1990A Serial Number iButton The simplest iButton is the DS1990A DS1990A, a factoryprogrammed ROM. Since the information is stored in laser cut polysilicon links (not as charge on gates or as states of flipflops), the DS1990A DS1990A needs no energy to retain data. Furthermore, almost no energy is required for operation. The DS1990A DS1990A uses the voltage of the data line and stores a minimum of charge internally to maintain operation during the presence pulse and the low time of any time slot during a read operation. Figure 22 shows how data is organized within the DS1990A DS1990A. The DS1991 DS1991 is tamperproof. If the wrong password is used to read data, the device will output random numbers. If a new password is programmed, all data in the subkey data field is automatically erased. Although direct write access is possible, the scratchpad should be used as intermediate storage to verify data before it is copied to its final place. This ensures that garbled data is not accepted, even if the contact should break during communication. Depending on the application, the scratchpad alternatively can be used as unprotected, generalpurpose read/write memory. The first byte to be transmitted out of the ROM is the family code. After this, the guaranteed unique serial number follows, least significant byte first. The last byte is a cyclic redundancy check (CRC). The CRC is a kind 081297 13/151 13 iButton DEVICES Table 21 Device Type Family y Code Serial Number Memory Bits y Type Protected NV RAM bits Real Time Clock Interval Timer Cycle y Counter DS1990A DS1990A 01H yes DS1991 DS1991 02H yes 512, NVRAM 3 * 384 DS1992 DS1992 08H yes 1K, NVRAM DS1993 DS1993 06H yes 4K, NVRAM DS1994 DS1994 04H yes 4K, NVRAM yes yes yes DS1995 DS1995 0AH yes 16K, NVRAM DS1996 DS1996 0CH yes 64K, NVRAM DS1982 DS1982 09H yes 1K, EPROM DS1985 DS1985 0BH yes 16K, EPROM DS1986 DS1986 0FH yes 64K, EPROM DS1920 DS1920 10H yes 16, EEPROM TEMPERATURE iButton DATA STRUCTURE DS1990A DS1990A Figure 22 high address MSB CRC byte LSB low address family code 01 6byte serial number ROM DATA STRUCTURE DS1991 DS1991 Figure 23 high address MSB CRC byte LSB 6byte serial number low address family code 02 ROM 48byte secure RAM 8byte password 8byte ID field page 0 48byte secure RAM 8byte password 8byte ID field page 1 48byte secure RAM 8byte password 8byte ID field page 2 64byte unprotected scratchpad 081297 14/151 14 page 3 A.3. DS1992 DS1992 Memory iButton: 1KBit NV RAM (usually January 1st, 1970, 00:00:00 hours). Thus any variance with countrydependent daylight savings rules become a matter of application software and can be handled as required. Furthermore, this representation simplifies calculations of time intervals between events and allows a simple algorithm to improve the accuracy by calibration. As with all iButtons, the DS1992 DS1992 contains a unique serial number. The internal 128 bytes of nonvolatile RAM are organized as four final storage areas of 32 bytes each and a scratchpad of 32 bytes (see Figure 24). The RAM can be read starting at any byte position of any page. Writing is only possible via the scratchpad. After the data is verified against the original by reading the scratchpad, the copy scratchpad command copies it to the final position. This way of writing data guaranties that even if the contact should break during communication with the device, garbled data will not reach the final destination; it will stay in the scratchpad. The interval timer can be used as a stopwatch to count the time between certain events of the application environment or as a tool to timecontrol a machine, since the DS1994 DS1994 includes a feature to generate interrupts. To obtain operation statistics, the cycle counter keeps track of how often the application equipment has been switched on; the interval timer adds up the operation time. This application, however, requires that the DS1994 DS1994 be mounted within the equipment. Also when the DS1994 DS1994 is used in a touch environment, it gives useful information about the frequency of its use and the average time of each touch. The RTC together with the RTC alarm register provides a timelimited access function. As soon as a certain time point is reached, access to a secured building for example is denied by the controlling computer. Alarms or interrupts can even be indicated without using a computer. A.4. DS1993 DS1993 Memory iButton: 4KBit NV RAM The DS1993 DS1993 is a larger version of the DS1992 DS1992. As Figure 25 shows, the DS1993 DS1993 has four times the storage capacity of the DS1992 DS1992. Of course, it has its own family code within the ROM. The DS1992 DS1992 and DS1993 DS1993 are each designed as identification device and mobile data carrier in one unit. Using a special data structure, these devices can store multiple independent application files. Moreover, for secured access, the public serial number can be used as a seed together with a secret keyword to encrypt nonpublic data files. Although encrypted data can be read, it is impractical to duplicate since no two serial numbers are the same. The ability to writeprotect the counters and lock the alarm registers within the DS1994 DS1994 converts the device into an nonresettable expiration controller. All these extra features and their related registers and control flags are located in page 16. The access method is exactly the same as for the RAM. Although the scratchpad is involved for writing, the command structure allows writing single or multiple bytes. A.5. DS1994 DS1994 Memory Plus Time iButton: 4KBit NV RAM The DS1994 DS1994 adds to the DS1993 DS1993 a realtime clock, interval timer and cycle counter, plus alarm features for these counters. With the exception of the family code, the DS1994 DS1994 is completely compatible with the DS1993 DS1993. The extra registers for clock, etc. are located in another page at the high end of the memory. Figure 26 shows details. A.6. DS1995 DS1995 Memory iButton: 16KBit NV RAM For applications that require storing several files of different size, the capacity of the DS1993 DS1993 may be insufficient. The DS1995 DS1995 quadruples the available storage capacity of earlier Memory iButtons to 16K bits or 64 pages of 32 bytes. (See Figure 27.) Since the DS1995 DS1995 has the same logical structure and understands the same set of commands as other NV RAM iButtons, it is completely compatible with existing application software. The unique family code indicates the extended capacity. With respect to time representation, the clock has features different from common real time clocks on the market. The clock in the DS1994 DS1994 is a binary counter with a resolution of 1/256 second. Minute, hour, day, month and year are recalculated from the number of seconds that have elapsed since an arbitrarily chosen "zero date" 081297 15/151 15 DATA STRUCTURE DS1992 DS1992 Figure 24 high address MSB CRC byte LSB low address family code 08 6byte serial number ROM 32byte intermediate storage scratchpad 32byte final storage NV RAM page 0 32byte final storage NV RAM page 1 32byte final storage NV RAM page 2 32byte final storage NV RAM page 3 DATA STRUCTURE DS1993 DS1993 Figure 25 high address CRC byte MSB LSB 6byte serial number low address family code 06 ROM 32byte intermediate storage scratchpad 32byte final storage NV RAM page 0 32byte final storage NV RAM page 1 32byte final storage NV RAM page 15 081297 16/151 16 DATA STRUCTURE DS1994 DS1994 Figure 26 high address MSB CRC byte LSB low address family code 04 6byte serial number ROM 32byte intermediate storage scratchpad 32byte final storage NV RAM page 0 32byte final storage NV RAM page 1 32byte final storage NV RAM page 15 30byte RTC, Timer, Counter and control page 16 DATA STRUCTURE DS1995 DS1995 Figure 27 high address CRC byte MSB LSB 6byte serial number low address family code 0A ROM 32byte intermediate storage scratchpad 32byte final storage NV RAM page 0 32byte final storage NV RAM page 1 32byte final storage NV RAM page 63 081297 17/151 17 A.7. DS1996 DS1996 Memory iButton: 64KBit NV RAM pages. When reading data or status information, an on chip CRC generator protects the data stream against potential transmission errors. The DS1996 DS1996 quadruples the capacity of the DS1995 DS1995 to 64K bits or 256 pages of 32 bytes (see Figure 28). Using the same commands as other NV RAM iButtons, the DS1996 DS1996 allows easy upgrading of existing systems. As with all iButtons, this device has a unique family code. A.9. DS1985 DS1985 AddOnly iButton: 16KBit OTP EPROM With 16 times the memory capacity of the DS1982 DS1982, the DS1985 DS1985 is the smallest AddOnly iButton that completely supports storage and update of multiple application files. Details on how this is accomplished are discussed in Chapter 7. The memory is organized as 64 pages of 32 bytes. Figure 210 shows details. In addition to the application memory, there are 88 bytes of status memory dedicated as redirection bytes, flags and write protect bits. A special read command is implemented to signal redirection before time is wasted by reading invalid data. The other functions of the DS1985 DS1985 are exactly the same as the DS1982 DS1982. Both the DS1995 DS1995 and DS1996 DS1996 substantially surpass the capacity of existing mobile read/write data carriers, such as serial memory cards or magnetic stripes. Using the serial number as a seed together with a secret keyword allows storage of public and encrypted data files in the same device. Chapter 7 shows further ways to use the large capacities of these devices. A.8. DS1982 DS1982 AddOnly iButton: 1KBit OTP EPROM The DS198x series of iButtons uses EPROM that does not require an embedded energy source to maintain data. Like the DS1990A DS1990A, the energy for operation is taken directly from the data line. As a standard feature, the DS1982 DS1982 contains a ROM section with a serial number and family code. The memory is organized as four pages of 32 bytes each (see Figure 29). A.10. DS1986 DS1986 AddOnly iButton: 64KBit OTP EPROM The DS1986 DS1986 is the 64K bit upgrade of the DS1985 DS1985. As shown in Figure 211, the memory is organized as 256 pages of 32 bytes. The extended memory capacity requires that the status memory be expanded to 352 bytes. All other features of the DS1986 DS1986 are identical to the DS1985 DS1985. The DS1982 DS1982 is read in the same way as other Memory iButtons; however, writing is done differently. Before a data byte arrives at the final memory location, it first is written to a onebyte scratchpad. The subsequent verification involves checking the write command itself, the destination address, and the data using an 8bit CRC. If the verification is positive, a pulse of 1 ms at 12V will copy the data from the scratchpad to the memory. This procedure prevents writing incorrect data even if the contact should break during communication with the device. The outstanding feature of AddOnly iButtons is the impossibility of deleting data. If data needs to be updated this is done by patching it with another page, thus leaving a permanent trail of changes. It is possible to reconstruct the original and intermediate versions of data. Due to a hardware writeprotect feature, the devices are tamperproof. If the writeprotect bits are programmed, there is no chance to falsify a single bit of the corresponding page or the redirection byte. A sophisticated verification is essential for EPROM devices since once data is written incorrectly, it cannot be changed. When data needs to be updated, the old data is "redirected" and a new set of data is added. This mode of operation explains the name "AddOnly iButton" for this group of iButton products. It is not possible to erase AddOnly iButtons. Each page can be individually hardwareprotected against subsequent write attempts. Thus every update will leave a permanent audit trail. A.11. DS1920 DS1920 Temperature iButton As the name states, this device is a memory plus thermometer in a MicroCan. Instead of a memory, the user has access to a 9bit converter as if it were memory, giving a resolution of 0.5°C to a control register. A unique ROM section is also standard with these devices, allowing one to build a chain of thermometers and to read all of them from one location. The accuracy of temperature measurement is 0.5°C within the range of 0°C to +70°C. In the ranges of 40°C to 0°C and +70°C to +85°C, the accuracy decreases to 1°C. The temperature conversion time is about one second. This device is discussed in greater detail in Chapter 6. Flags indicating whether a page of data is writeprotected or redirected are stored in the eight bytes of status memory of the device. Writing to the status memory employs the same integrity procedures as for the data 081297 18/151 18 DATA STRUCTURE DS1996 DS1996 Figure 28 high address MSB CRC byte LSB low address family code 0C 6byte serial number ROM 32byte intermediate storage scratchpad 32byte final storage NV RAM page 0 32byte final storage NV RAM page 1 32byte final storage NV RAM page 255 DATA STRUCTURE DS1982 DS1982 Figure 29 high address CRC byte MSB LSB 6byte serial number low address family code 09 ROM 1byte scratchpad 32byte final storage EPROM 32byte final storage EPROM page 1 32byte final storage EPROM page 2 32byte final storage EPROM unused page 0 page 3 redirection bytes unused writeprotect bits data memory 8 bytes status memory 081297 19/151 19 DATA STRUCTURE DS1985 DS1985 Figure 210 high address MSB CRC byte LSB low address family code 0B 6byte serial number ROM 1byte scratchpad 32byte final storage EPROM 32byte final storage EPROM page 1 32byte final storage EPROM redirection bytes page 0 page 63 bit map of used pages writeprotect bits redirection bytes writeprotect bits data memory 88 bytes status memory DATA STRUCTURE DS1986 DS1986 Figure 211 high address CRC byte MSB LSB 6byte serial number low address family code 0F ROM 1byte scratchpad 32byte final storage EPROM 32byte final storage EPROM page 1 32byte final storage EPROM redirection bytes page 0 page 255 bit map of used pages writeprotect bits redirection bytes 081297 20/151 20 writeprotect bits data memory 352 bytes status memory B. Solder Mount Products III. Commands This section contains products that share the same electrical and logical characteristics as iButtons, but cannot be made available as MicroCans since they have communication ports in addition to the 1Wire bus. They are normally used in the wiring of MicroLANs. All iButton devices support the ROM commands to read the family code, serial number and CRC and to search for ROM contents. The Skip ROM and Match ROM are not applicable with the DS1990A DS1990A since there is no other memory accessible. Common to many devices are the scratchpad commands Read, Write and Copy. Also widely used is the Read Memory command. Because of its very special application, the DS1991 DS1991 also requires a command to write passwords. B.1. DS2407 DS2407 Addressable Switch The DS2407 DS2407 (formerly referenced as DS2405A DS2405A) is a combination of two open drain transistors ("switches") with associated digital sensors and 1Kbit of EPROM. It can be employed to remotely sense the state of mechanical switches, or together with power transistors, to control a solenoid or DC motor. Since the DS2407 DS2407 is completely in compliance with the 1Wire standards and also includes a unique family code and serial number, many of these devices can be connected in parallel to form a 1Wire bus. This allows, for example, monitoring of all sensors of a burglar alarm system with the absolute minimum of wiring, only two wires. The DS2407 DS2407 can also be used for diagnostics of digital circuits, e.g., by sensing the logical state of a node or forcing a node to 0 emulating a malfunction or to gate a signal. Only one additional wire needs to be routed through the printed circuit board to implement this feature. For more details, see Chapter 6. For applications where a stable contact is available, the DS1991 DS1991 supports a Write Memory command. Table 22 summarizes iButton commands. The Skip ROM command allows getting to the data faster if the registration number is not of interest. Although some devices share the same commands, it does not necessarily mean that the binary command word is the same. This holds for the DS1991 DS1991 because of its special application areas. The DS1992 DS1992 to DS1996 DS1996 have the same command words. Due to their different memory technology, the DS1982 DS1982 to DS1986 DS1986 require a special set of commands. Although they use the same command codes as the NV RAM devices, the effects of the commands will be different. For compatibility reasons, the effect of the Read Memory command is identical to the other Memory iButtons excluding the DS1991 DS1991 and DS1982 DS1982 B.2. DS2404S DS2404SC01 Dual Port Memory Plus Time The 1Wire MicroLAN is a generalpurpose single master network for digital communication. All iButtons have a builtin MicroLAN interface as a standard feature. Another MicroLAN device is the Addressable Switch, mentioned above. IV. Chapter Summary The iButton family has consistent operating characteristics. The logical functions range from simple serial number and passwordprotected memory, 64K bits of nonvolatile RAM or EPROM and beyond, to a real time clock plus 4K bits of nonvolatile RAM. Common to all of them is an individual serial number and the 1Wire protocol electrical interface. If any writable memory is included, writing is done first to a scratchpad. The size of the scratchpad may vary: one byte (EPROM devices), 32 bytes (SRAM devices) or 64 bytes (passwordprotected memory). After writing, data is verified before it is transferred to its final destination to insure data integrity. Reading is always done directly. In order to provide universal access to the MicroLAN, the DS2404S DS2404SC01 Dual Port RAM Plus Time has been developed. This device has both 1Wire and a 3Wire serial microcontroller interface. It provides 512 bytes of memory plus a real time clock. A special family code distinguishes this device from other 1Wire products. The DS2404S DS2404SC01 can be used to make complex functions involving microcontrollers behave as if they were iButtons. The DS2404S DS2404SC01 is discussed in more detail in Chapter 6 of this book. 081297 21/151 21 iButton COMMANDS Table 22 ROM Commands Scratchpad p Commands Read Skip Ski Match Search Read Write Wi Copy DS1990A DS1990A yes DS1991 DS1991 Device Type Memory y Commands Password Commands Status Commands Read Write Write Read R d Write yes yes yes yes yes DS1992 DS1992 yes yes yes DS1993 DS1993 yes yes yes DS1994 DS1994 yes yes yes DS1995 DS1995 yes yes yes DS1996 DS1996 yes yes yes DS1982 DS1982 yes yes yes yes DS1985 DS1985 yes yes yes yes DS1986 DS1986 yes yes yes yes DS1920 DS1920 yes yes recall 081297 22/151 22 MECHANICAL STANDARDS 081297 23/151 23 CHAPTER 3: MECHANICAL STANDARDS F5) or a customerspecific version. Customerspecific devices can be branded 001 through FFF (hexadecimal) in combination with a special family code. Independently of this, a customer specific name can also be put in place of the name "DALLAS". I. Introduction iButtons identify the objects they are affixed to. Since these objects have an abundance of different shapes and sizes, there are many ways to mount an iButton. This chapter provides details on MicroCans, iButton probes and mounting techniques. III. iButton Probes iButton are read or written with a probe. The basic probe is shown in Figure 33a. It is also available with tactile feedback (Figure 33b). The standard probe is usually preferred when the probe is fixed and the iButton is mobile. II. MicroCans A. Package Types An iButton is packaged in the F5 flanged MicroCan as shown in Figure 31a. This package is the standard for all devices that contain an internal energy source. Devices that are powered by the master (parasitepowered) can be made available in this package as well as the thinner F3 package (Figure 31b). If the iButton is read by a mobile reader like the iButton Recorder, or in general if long contact dwells are required, the probe with tactile feedback performs better. iButton Probes are usually mounted on panels. A retaining ring pressed on from the back side provides sufficient mechanical hold (see Figure 33c). The cross shaped cross section of the iButton Probe's back end prevents twisting the connected wires after mounting. For some applications, a handheld wand for iButtons is convenient. This wand consists of a handgrip mount and an iButton probe with tactile feedback. Figure 34 shows details. B. Stability MicroCans are made from solid stainless steel with a thickness of 0.254 mm. The insulating material between the bottom part and the top contact is UVinhibited black polypropylene. This design gives excellent mechanical stability and is corrosionresistant. All MicroCans withstand mechanical shocks of 500 g (1 g = 9.81 m/s2) in all directions. A drop from a height of 1.5 m to a concrete floor does not damage the can or its contents. The same holds for a constant force of 110 Newton on either side of the can. Repeated probing does not degrade the contact since there is no plating; iButtons will withstand a minimum of one million probing cycles. IV. iButton Mounts A. ThroughMount The flange at the bottom of the MicroCan makes the part ideally suited for throughmounting. This technique can be used to mount iButtons as personal identification labels for access control and time stamping for accounting purposes. Figure 35 shows a practical example. The retaining ring DS9093RA DS9093RA is press fit on the iButton from the front side of the label. C. Temperature Range iButtons (DS1990A DS1990A, DS1982 DS1982 to DS1986 DS1986) have been specified for the extended temperature range of 40°C to +85°C (40°F to 185°F). The operating temperature range of the DS1920 DS1920 is even larger. Devices containing lithium cells (DS1991 DS1991 to DS1996 DS1996) should not be stored or operated below 40°C or above +70°C (40°F or 158°F). At 55°C the electrolyte of the lithium cell freezes; above 85°C the vapor pressure of the electrolyte increases, causing diffusion through the seal, which dries out the cell after some time. The throughmount system can also be used to mount iButtons on large containers. An iButton retainer as shown in Figure 36 can easily be screwed on metal or plastic containers. This plastic part is designed for the F5 MicroCan. Since the bottom of the MicroCan is pressed against the container and because of the guarding rim of the retainer, this mounting is well suited for harsh environments. The retainer in Figure 36 can be screwed or popriveted. A special version of the retainer with a pin instead of one hole allows the use of only one screw or rivet to reduce mounting time. D. Human Readable Engraving All MicroCans are laserbranded to provide all important information about the device. (See Figure 32.) The part number is at the bottom. The extension XXX of the part number may indicate the package type (F3 or 081297 24/151 24 MICROCAN DIMENSIONS Figure 31 R 0.25 R 0.66 14.55 0.35 0.50 16.25 ± 0.15 0.40 5.89 ± 0.15 17.35 +0 0.15 a) F5 MicroCan R 0.25 R 0.66 14.55 0.35 0.50 16.25 ± 0.15 0.40 3.10 ± 0.15 17.35 +0 0.15 b) F3 MicroCan All dimensions are in millimeters. 081297 25/151 25 iButton ENGRAVING ON STAINLESS STEEL LID Figure 32 YYWW REGISTERED CC RR FF SSSSSSSSSSSS YYWW CC SSSSSSSSSSSS RR FF ZZZZ = = = = = = XXX: YEAR, WORK WEEK CRC 12 DIGIT HEX SERIAL # PACKAGE REV. FAMILY CODE GENERIC PART NUMBER NNN 001 through FFF for Custom Code F3 For F3 Package F5 For F5 Package iButton PROBE Figure 33a DATA CONTACT 12.7 DIA 21.0 DIA MOUNTING POST 9.5 DIA 18.3 DIA. 16.5 DIA. 1.9 GROUND CONTACT DS9092 DS9092 10.1 22.3 iButton PROBE WITH TACTILE FEEDBACK Figure 33b DATA CONTACT 4.0 DIA. 21.0 DIA MOUNTNG POST 9.5 DIA. 18.3 DIA. 16.6 DIA. 2.7 DS9092T DS9092T 10.1 GROUND CONTACT 22.3 40.1 All dimensions are in millimeters. 081297 26/151 26 MOUNTING AN iButton PROBE Figure 33c RETAINING RING PANEL MOUNTING HAND GRIP PROBE Figure 34 GROUND CONTACT A 21.0 DIA. 12.1 DIA A 101.6 1 meter DATA CONTACT SECTION AA DS9092GT DS9092GT a) Hand Grip Probe, dimensions PIN 1 HANDGRIP MOUNT DS9092GT DS9092GT CONNECTOR PINOUT DATA PIN 4 GROUND PIN 3 All dimensions are in millimeters. b) Hand Grip Probe 081297 27/151 27 THROUGHMOUNT IDENTIFICATION LABEL Figure 35 iButton FLANGE a) b) RETAINING RING THROUGHMOUNT FOR CONTAINERS Figure 36 DS9093P/S DS9093P/S 5.3 3.0 MINIMUM REQUIRED CLEARANCE B NOTE: PIN IS REPLACED WITH A THRU HOLE ON DS9093S DS9093S iButton A 2.0 A 30.9 2.0 B SECTION BB a) c) 46.9 4.4 3.8 REF. 2.0 5.0 DIA. NOTE: PIN IS REPLACED WITH A THRU HOLE ON DS9093S DS9093S 5.2 DIA. 35.0 SECTION AA b) All dimensions are in millimeters. 081297 28/151 28 PRESS FIT MOUNT Figure 37 iButton min. 2.0 mm B. Press Fit Another way to mount iButtons on printed circuit boards are MicroCan Clips. Figure 310 shows the standard clip DS9094F DS9094F and a surface mount version DS9094FS DS9094FS to be used with the F5 MicroCan. These clips are similar to common battery clips but prevent contact if one tries to insert a MicroCan in the reverse direction. In contrast to the DS9098 DS9098, the DS9094F DS9094F accepts the MicroCan horizontally not vertically. MicroCans are very stable. For that reason, they can be directly mounted on metal casings. To do this, first a cavity must be milled into the metal. Then the iButton is inserted and the rim of the cavity is pressed down so that it tightly holds the MicroCan in its position. Figure 37 shows this technique. In order to contact iButtons with a probe, a minimum clearance of 3.0 mm around the iButton is required (Figure 36a). The protrusion of the iButton above the surface must be at least 2.0 mm. In principle, it is possible to mount iButtons on rotating parts and to use sliding spring pressed contacts, as shown in Figure 311, though mounting hardware for this application is not yet available as a standard product. A similar mounting technique is used with the plastic keyring shown in Figure 38. The slot in this keyring provides the elasticity to insert or withdraw flanged MicroCans. Mechanical dimensions allow its use with both the F5 and F3 MicroCan and standard iButton Probes. The DS9100 DS9100 Touch and Hold Probe is shown in Figure 312. This probe is similar to the DS9098 DS9098 MicroCan Retainer. An F5 MicroCan will fit completely into the DS9098 DS9098 retainer, but the flange and about 1/3 of the can will stick out if pressed into the DS9100 DS9100. As a probe, the DS9100 DS9100 allows reading iButtons on contact. At further pressure the stiff springs of the DS9100 DS9100's outer ring will hold the MicroCan sufficiently to give a good contact to both the ground and the data lid. To increase the strength of holding, future versions of F5 MicroCans may have a tiny indentation at the outer rim. This will have no impact on probe contact or mounting techniques explained in this chapter. C. Spring Hold Certain applications may require mounting iButtons on printed circuit boards. The most advanced singlepiece retainer for F5 MicroCans is the DS9098 DS9098 (see Figure 39). Like the MicroCan, it is made from stainless steel. Selective tinlead plating provides optimal solderability. By design, this retainer is compatible with standard pickandplace and cleaning equipment. At the first insertion of an iButton, the inner contact breaks away from the outer ring and acts as a spring to hold the MicroCan with a force of a minimum of two Newtons. The cross section view AA in Figure 39a explains how the iButton is held and how it can be easily removed again. 081297 29/151 29 SNAPIN KEY RING Figure 38 B R7.1 6.3 R8.2 3 PL. R8.7 22.7 15.1 A 38.1 A 7.7 B 2.2 4.8 20.6 SECTION BB 3.4 All dimensions are in millimeters. SECTION AA DS9098 DS9098 iButton RETAINER Figure 39a Section A-A 8.0 5.90 B A A B Section B-B 11.4 All dimensions are in millimeters. 081297 30/151 30 19.9 Dia. 12.95 4.34 16.66 Dia. Tin - lead plated side RECOMMENDED PCB LAYOUT Figure 39b 14.3 Opening in solder mask ÌÌÌÌ ÌÌÌÌ ÌÌÌÌ Copper cladding >0.3 Kg/m2 or >34 µm (>1 oz/sq. ft.) with soldermask overlay 4.0 11.3 copper 18.3 Center Data Outer ring Ground All dimensions are in millimeters iButton MOUNTING CLIPS FOR PCBs Figure 310 19.1 DATA 23.4 11.9 0.97 DIA. FINISHED HOLE 2 PL. CONTACT DETAIL 4.7 16.7 GROUND DS9094F DS9094F a) DS9094F DS9094F 10.8 0.8 X 0.6 b) PCBLayout for DS9094F DS9094F 5.1 3.2 DATA 29.4 31.3 11.9 17.6 GROUND 2.5 2.5 2 PL. c) DS9094FS DS9094FS 8.2 2 PL. d) PCBLayout for DS9094FS DS9094FS All dimensions are in millimeters. GROUND DATA e) Insertion of an iButton 081297 31/151 31 SPINNING WHEEL Figure 311 SPIN DATA iButton TOUCH AND HOLD PROBE Figure 312 TOUCH BAR Figure 313 iButton PLASTIC SLEEVE GROUND OPTIONAL STRANDED STEEL CABLE DATA PLATED STEEL TUBE 081297 32/151 32 SPLIT CONDUIT Figure 314 GROUND INDENTATION iButton iButton GROUND RUBBER WASHER DATA SPRING GALVANIZED STEEL PIPE DATA V. Special Mounting Examples VI. Summary Some applications require mechanical tolerances that are large compared to the size of an iButton. In such cases, the surface of the iButton can be extended to obtain the required tolerances. One way to do this is to build a Touch Bar with the iButton inside (Figure 313). Another possibility is to cut the handling rod of a container, put the iButton into the middle, and mount the rod again keeping one part electrically insulated from the other (Figure 314). iButtons are electronic chips housed in a stainless steel package. Special probes, clips and retainers are available for reading and writing iButtons. iButtons can be mounted on objects using either special retainers, metal forming techniques or adhesives. Further, the MicroCan's surface can be extended for applications that require larger contact surfaces. 081297 33/151 33 MULTIPURPOSE CLIP DS9101 DS9101 Figure 315 WIRE FEED THRU RIVET HOLE iButton RETAINER STRAP FEED THRU's LIFTER ENTRY GUIDE 081297 34/151 34 ELECTRICAL STANDARDS AND CHARACTERISTICS 081297 35/151 35 15 µs to 60 µs. This means that the actual slave sampling may occur anywhere between 15 and 60 µs after the start condition, which is a ratio of 1 to 4. During this time frame the voltage on the data line must stay below VILMAX or above VIHMIN. This explains the basic form of the write1 and the write0 time slots (Figures 41 and 42) as they are needed to write commands or data to iButtons. The duration of a low pulse to write a 1 (tLOW1) must be shorter than 15 µs; to write a 0 the duration of the low pulse (tLOW0) must be at least 60 µs to cope with worstcase conditions. CHAPTER 4: ELECTRICAL STANDARDS AND CHARACTERISTICS I. 1Wire Interface Timing A. Introduction iButtons are selftimed silicon devices that require electrical contact for operation. The timing logic provides a means of