DS2482OW(4)

πŸ“¦ version 11.0, in nixpkgs unstable

πŸ’… DS2482OW(4) β€” the Kernel Interfaces Manual, bestie edition πŸŽ€

okay so this is the manual page for ds2482ow, and it lives in the Kernel Interfaces Manual section (that's section 4, iykyk). it's the driver for the Maxim DS2482-100 and DS2482-800 IC2 to 1-Wire bridge β€” yes, "IC2", that's what the page says, don't come for me ✨


🌸 NAME 🌸

ds2482ow β€” the driver for the Maxim DS2482-100 and DS2482-800 IC2 to 1-Wire bridge πŸ¦‹


✨ SYNOPSIS ✨

ds2482ow* at iic? addr 0x18
ds2482ow* at iic? addr 0x19
ds2482ow* at iic? addr 0x1a
ds2482ow* at iic? addr 0x1b
ds2482ow* at iic? addr 0x1c DS2482-800 only
ds2482ow* at iic? addr 0x1d DS2482-800 only
ds2482ow* at iic? addr 0x1e DS2482-800 only
ds2482ow* at iic? addr 0x1f DS2482-800 only
onewire* at ds2482ow?

like, look at all those addresses, she's got range πŸ‘‘


πŸ’– DESCRIPTION πŸ’–

the ds2482ow driver hands you 1 or 8 onewire(4) busses, and it does it through an I2C interface. no cap.

the ds2482ow addr argument is the thing that picks which address you want on the iic(4) bus. so that's literally its whole job in the config file.

the chip is the main character here: it generates all of the 1-Wire pulses it needs all on its own, and it also provides the pullup that the 1-Wire data line needs. so the driver's not out here doing pulse math, the chip ate that πŸ’…

the method the chip uses for that pullup? you can change it. through sysctl(8) nodes. yes bestie, you get options.


🫢 SYSCTL VARIABLES 🫢

these sysctl(3) variables are what you get:

  • hw.ds2482ow0.pullup.active β€” if this is true, it turns on active pullup on every channel the chip supports. all of them. no crumbs left 🌈
  • hw.ds2482ow0.pullup.strong β€” if this is true, it turns on strong pullup on all the channels the chip supports, and on the DS2482-100 chip it also lets the PCTLZ pin hand some extra current to the 1-Wire bus. heads up tho: this mode conflicts with a 1-Wire reset, and it gets disabled if that command is sent to the 1-Wire bus. so like… pick your moment 😭
if neither active pullup nor strong pullup is enabled, the chip just uses an internal passive resister. humble. lowkey. still works πŸ’œ
  • hw.ds2482ow0.debug β€” this one only shows up if the driver was compiled with DS2482_DEBUG. when it does appear, you use it to set the debugging level πŸ¦‹

πŸ‘‘ SEE ALSO πŸ‘‘

onewire(4), iic(4), sysctl(8) β€” go read those too, they're iconic in their own right ✨


⭐ HISTORY ⭐

the ds2482ow driver first appeared in NetBSD 11.0. glow up era πŸŽ€


🧚 AUTHORS 🧚

the ds2482ow driver was written by Brad Spencer <brad@anduin.eldar.org>. thank you brad, fr fr 🫢


πŸ’€ BUGS πŸ’€

okay so the DS2482 chip does support overdrive speed on a 1-Wire bus. but this driver? this driver does not support overdrive speed mode. that's the whole bug. she's just not doing that rn πŸ™ˆ


and that's the page, bestie!! this was the DS2482OW(4) page from the Debian build of the Kernel Interfaces Manual, dated October 31, 2024 β€” go forth and bridge those 1-Wire busses responsibly πŸ’…βœ¨

πŸ“¦ where this page comes from