An arduino library to communicate using the Dallas one-wire protocol, where the Arduino takes the role of a slave. Implementation of a DS2413 on Arduino UNO and ATTINY85
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
IanF d698f10a08 Upload files to '' 6 years ago
.vscode added vscode configuration 7 years ago
examples/FakeDS18B20 updated documentation to match latest version of code 7 years ago
extras updated documentation to match latest version of code 7 years ago
src updated documentation to match latest version of code 7 years ago
FakeD2413.ino Upload files to '' 6 years ago
LICENSE documentation improvements 7 years ago
LowLevel.h Upload files to '' 6 years ago
OneWireSlave.cpp Upload files to '' 6 years ago
OneWireSlave.h Upload files to '' 6 years ago
README.md updated documentation to match latest version of code 7 years ago
comptime.h Upload files to '' 6 years ago
keywords.txt rearange as arduino-lib 9 years ago
library.properties rearange as arduino-lib 9 years ago

README.md

OneWireArduinoSlave

An arduino library to communicate using the Dallas one-wire protocol, where the Arduino takes the role of a slave. Entirely implemented using interrupts, you can perform other tasks while communication is handled in background.

1-wire introduction

1-wire allows communication over long distances (100m and more, see Dallas documentation for details) with a single wire (plus a ground wire). You can put as much devices as you want on the same wire (they communicate one at a time). 1-wire also allows to send power over the data wire (parasitic power), but, though I haven't tried, I don't believe it would work with an Arduino. You'll need a separate 5V power source, which, if it comes next to your data wire, means you need 3 wires (5V, data, and ground). You'll also need a master controller, for example the USB adapter DS9490R, to connect to a computer, that will control communication with all 1-wire devices.

How to use this library

Take a look at the documentation of the library