Skip to content

jan-lugfl/owslave

 
 

Repository files navigation

This is 1wire slave code for AVR microcontrollers.
Copyright (C) 2010-2015 Matthias Urlichs <[email protected]>.


    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.


The core code implements the basic 1wire discovery methods, including
single-device mode and conditional discovery.
Basic Code for e.g. the DS2423 fits in 2k on an ATtiny.
Barely, but it fits. ;-)

Overdrive speed is not implemented, and probably never will be,
because the timing constraints are too tight.

You can enable a debug pin which is a great help if you have timing
problems; just add a 2-channel oscilloscope.

The 64-bit ID is optionally read from EEPROM. A small tool to generate the
8-bit CRC is included.


NOTE: It appears that Dallas Semiconductor doesn't like people who
implement 1wire slaves in software.

On the other hand, they do discontinue ICs like the DS2423 counter
for which no known substitute exists.

Therefore, code will only be added to this project's repository if the ICs
are no longer available or "not recommended for new design".
Of course, code that does things which doesn't have a silicon equivalent is
always welcome.


A nice and shiny 1wire client does not help if there's no server.
Therefore, if you do write your own code, please also submit
appropriate changes to the owfs project so that other people 
can actually talk to your stuff.

NB: OWFS supports conditional search even if the "alarm" directory is
missing. You can still access it.

-- Matthias Urlichs

Releases

No releases published

Packages

No packages published

Languages

  • C 66.9%
  • Python 25.4%
  • Makefile 4.6%
  • C++ 3.1%