DS1977(3)

๐Ÿ’– NAME ๐Ÿ’–

DS1977(3) โ€” the Password Protected 32kbit Memory iButton, from the One-Wire File System manual. She's a lil memory queen with a lock on the door and she knows it. ๐Ÿ‘‘


๐Ÿฆ‹ SYNOPSIS ๐Ÿฆ‹

Non-volatile memory, bestie. She remembers everything even when the power dips, main character energy fr fr. ๐Ÿ’พ

37 [.]XXXXXXXXXXXX[XX][/[ memory | pages/page.[0-510|ALL] |
set_number/full | set_number/read | set_password/enabled |
set_password/full | set_password/read | use_number/full |
use_number/read | use_password/full | use_password/read | address | crc8
| id | locator | r_address | r_id | r_locator | type ]]

๐ŸŽ€ FAMILY CODE ๐ŸŽ€

  • 37 DS1977 โ€” that's her family code, periodt. ๐Ÿ’…

๐Ÿ’œ SPECIAL PROPERTIES ๐Ÿ’œ

๐Ÿ“ memory

read-write, binary.

32704 bytes of memory. Possibly protected by a password. Lowkey a whole wardrobe of storage and the door might be locked, iykyk. ๐Ÿ”

๐Ÿ“„ pages/page.0 ... pages/page.510 pages/page.ALL

read-write, binary.

Memory is split into 511 pages of 64 bytes each. ALL is an aggregate of the pages โ€” like the whole photo dump in one folder. Each page is accessed sequentially. โœจ

๐Ÿ”ข set_number/full set_number/read

write-only, ascii.

Passwords entered as numbers, either decimal, or hex of form 0x0123456789ABCDEF. Handled the same as set_password/xxx. Cute shorthand, no notes. ๐Ÿซถ

๐Ÿ” set_password/enabled

read-write, yes-no.

Turn on/off password protection for the DS1977, or return the current state. Basically the "do not disturb" toggle but for your data. ๐Ÿ’…

๐Ÿ—๏ธ set_password/full set_password/read

write-only, binary.

Passwords (8 byte values) that allow read or full access to the DS1977 memory. The password set by set_password/xxx are stored in the DS1977 and locally in the program as well (as if use_password/xxx was also called). So she saves it in two places, overachiever behavior honestly. ๐Ÿ˜ญ

๐Ÿ—๏ธ use_password/full use_password/read

write-only, binary.

Passwords (8 byte values) that allow read or full access to the DS1977 memory. The password set by

bestie the original sentence justโ€ฆ ends there. Not my business, not my problem, I'm reporting the facts only. ๐Ÿซ 

๐Ÿ”ข use_number/full use_number/read

write-only, ascii.

Passwords entered as numbers, either decimal, or hex of form 0x0123456789ABCDEF. Handled the same as use_password/xxx. Same vibe, different flavor of input. โœจ

๐Ÿ—๏ธ use_password/full use_password/read

write-only, binary.

Passwords (8 byte values) that allow read or full access to the DS1977 memory. The password set by use_password/xxx are stored in the program and must match the passwords stored in the DS1977. Changing the DS1977 passwords using set_password/xxx will change these values as well. use_password/xxx are stored in the program and must match the passwords stored in the DS1977. Changing the DS1977 passwords using set_password/xxx will change these values as well.

Yes, this property shows up twice in the source and says the same thing twice inside itself. That's just how she is. Iconic, unbothered, repeating herself. ๐Ÿ’€

๐ŸŒŸ STANDARD PROPERTIES ๐ŸŒŸ

๐Ÿชช address / r_address

read-only, ascii.

The entire 64-bit unique ID. Given as upper case hexadecimal digits (0-9A-F).

address starts with the family code.

r address is the address in reverse order, which is often used in other applications and labeling. Backwards slay. ๐Ÿ”„

๐Ÿงฎ crc8

read-only, ascii.

The 8-bit error correction portion. Uses cyclic redundancy check. Computed from the preceding 56 bits of the unique ID number. Given as upper case hexadecimal digits (0-9A-F). She checks your math, lovingly. ๐Ÿ’…

๐Ÿ‘‘ family

read-only, ascii.

The 8-bit family code. Unique to each type of device. Given as upper case hexadecimal digits (0-9A-F).

๐Ÿ†” id / r_id

read-only, ascii.

The 48-bit middle portion of the unique ID number. Does not include the family code or CRC. Given as upper case hexadecimal digits (0-9A-F).

r id is the id in reverse order, which is often used in other applications and labeling. ๐ŸŒ€

๐Ÿ“ locator / r_locator

read-only, ascii.

Uses an extension of the 1-wire design from iButtonLink company that associated 1-wire physical connections with a unique 1-wire code. If the connection is behind a Link Locator the locator will show a unique 8-byte number (16 character hexadecimal) starting with family code FE. If no Link Locator is between the device and the master, the locator field will be all FF.

r locator is the locator in reverse order. ๐Ÿงญ

๐Ÿ‘€ present (DEPRECATED)

read-only, yes-no.

Is the device currently present on the 1-wire bus?

โš ๏ธ She's DEPRECATED bestie, the elders have spoken. Still works, still shows up, still serving, but know what you're getting into. ๐Ÿซถ

๐Ÿท๏ธ type

read-only, ascii.

Part name assigned by Dallas Semi. E.g. DS2401. Alternative packaging (iButton vs chip) will not be distiguished. Same soul, different outfit, no distinguishing. โœจ


๐Ÿšจ ALARMS ๐Ÿšจ

None.

Literally zero alarms, she's chill, she's not dramatic, no siren, no chaos. ๐Ÿ˜Œ

๐ŸŒˆ DESCRIPTION ๐ŸŒˆ

๐ŸŒ 1-Wire

1-wire is a wiring protocol and series of devices designed and manufactured by Dallas Semiconductor, Inc. The bus is a low-power low-speed low-connector scheme where the data line can also provide power. Power and gossip through one wire, obsessed. โšก

Each device is uniquely and unalterably numbered during manufacture. There are a wide variety of devices, including memory, sensors (humidity, temperature, voltage, contact, current), switches, timers and data loggers. More complex devices (like thermocouple sensors) can be built with these basic devices. There are also 1-wire devices that have encryption included.

The 1-wire scheme uses a single bus master and multiple slaves on the same wire. The bus master initiates all communication. The slaves can be individually discovered and addressed using their unique ID.

Bus masters come in a variety of configurations including serial, parallel, i2c, network or USB adapters.

๐Ÿ—‚๏ธ OWFS design

OWFS is a suite of programs that designed to make the 1-wire bus and its devices easily accessible. The underlying principle is to create a virtual filesystem, with the unique ID being the directory, and the individual properties of the device are represented as simple files that can be read and written. Everything is a file, everything is a vibe. ๐Ÿ“โœจ

Details of the individual slave or master design are hidden behind a consistent interface. The goal is to provide an easy set of tools for a software designer to create monitoring or control applications. There are some performance enhancements in the implementation, including data caching, parallel access to bus masters, and aggregation of device communication. Still the fundamental goal has been ease of use, flexibility and correctness rather than speed.

๐Ÿ’พ DS1977

The DS1977(3) is an iButton with static memory that is optionally protected by a password. Simple, elegant, possibly locked. ๐Ÿ’…


๐Ÿงญ ADDRESSING ๐Ÿงญ

All 1-wire devices are factory assigned a unique 64-bit address. This address is of the form:

  • Family Code โ€” 8 bits
  • Address โ€” 48 bits
  • CRC โ€” 8 bits

Addressing under OWFS is in hexadecimal, of form:

01.123456789ABC

where 01 is an example 8-bit family code, and 12345678ABC is an example 48 bit address.

The dot is optional, and the CRC code can included. If included, it must be correct. No cutting corners on the CRC, she WILL notice. ๐Ÿ‘€


๐Ÿ“š DATASHEET ๐Ÿ“š

http://pdfserv.maxim-ic.com/en/ds/DS1977.pdf


๐Ÿ‘ฏ SEE ALSO ๐Ÿ‘ฏ

๐Ÿ’ป Programs

owfs (1) owhttpd (1) owftpd (1) owserver (1) owdir (1) owread (1) owwrite (1) owpresent (1) owtap (1)

๐Ÿงช Configuration and testing

owfs (5) owtap (1) owmon (1)

๐Ÿ—ฃ๏ธ Language bindings

owtcl (3) owperl (3) owcapi (3)

โฐ Clocks

DS1427 (3) DS1904 (3) DS1994 (3) DS2404 (3) DS2404S (3) DS2415 (3) DS2417 (3)

๐Ÿ†” ID

DS2401 (3) DS2411 (3) DS1990A (3)

๐Ÿ’พ Memory

DS1982 (3) DS1985 (3) DS1986 (3) DS1991 (3) DS1992 (3) DS1993 (3) DS1995 (3) DS1996 (3) DS2430A (3) DS2431 (3) DS2433 (3) DS2502 (3) DS2506 (3) DS28E04 (3) DS28EC20 (3)

๐Ÿ”˜ Switches

DS2405 (3) DS2406 (3) DS2408 (3) DS2409 (3) DS2413 (3) DS28EA00 (3) InfernoEmbedded (3)

๐ŸŒก๏ธ Temperature

DS1822 (3) DS1825 (3) DS1820 (3) DS18B20 (3) DS18S20 (3) DS1920 (3) DS1921 (3) DS1821 (3) DS28EA00 (3) DS28E04 (3) EDS0064 (3) EDS0065 (3) EDS0066 (3) EDS0067 (3) EDS0068 (3) EDS0071 (3) EDS0072 (3) MAX31826 (3)

๐Ÿ’ง Humidity

DS1922 (3) DS2438 (3) EDS0065 (3) EDS0068 (3)

โšก Voltage

DS2450 (3)

๐Ÿงฑ Resistance

DS2890 (3)

๐ŸŽ›๏ธ Multifunction (current, voltage, temperature)

DS2436 (3) DS2437 (3) DS2438 (3) DS2751 (3) DS2755 (3) DS2756 (3) DS2760 (3) DS2770 (3) DS2780 (3) DS2781 (3) DS2788 (3) DS2784 (3)

๐Ÿ”ข Counter

DS2423 (3)

๐Ÿ–ฅ๏ธ LCD Screen

LCD (3) DS2408 (3)

๐Ÿ”’ Crypto

DS1977 (3)

๐ŸŒฌ๏ธ Pressure

DS2406 (3) TAI8570 (3) EDS0066 (3) EDS0068 (3)

๐ŸŒŠ Moisture

EEEF (3) DS2438 (3)


๐ŸŒ AVAILABILITY ๐ŸŒ

http://www.owfs.org


โœ๏ธ AUTHOR โœ๏ธ

Paul Alfille (paul.alfille@gmail.com) โ€” thank you king, we love a legend. ๐Ÿ™Œ


and that's the whole page bestie!! this cutie dropped way back in 2003, straight from the OWFS Manpage, and it's the DS1977(3) manual โ€” go forth and read your memory iButton responsibly ๐Ÿ’–โœจ๐ŸŽ€๐Ÿฆ‹๐ŸŒธ๐Ÿ’…๐Ÿซถ