AVR Attiny44A als 1Wire Slave konfiguierbar DS2423/DS18BS20/DS2408/DS2413/DS2450

Begonnen von ritchie, 11 April 2014, 17:34:27

Vorheriges Thema - Nächstes Thema

doubh

Ich habe die Firmware für den ATTiny44a 1-Wire Slave (owslave.c) etwas angepasst.

Das Speichern der Werte im EEprom was zu unsicher und hat bei mir auch mal Probleme bereitet.
Ich verwende die ESP8266-07 <-> DS2480 <-> ATtiny44a Hardware, wie hier beschrieben:
http://forum.fhem.de/index.php/topic,38024.0.html

Achtung, das Pinout ist unterschiedlich.

Tobias

Super Arbeit!!!
Steht irgendwo was an welchem Pin des ATTiny44a anzuschließen ist? Ist die FW auch auf dem ursprünglichen ATTiny25 nutzbar bzw an dem ursprünglichen Schaltbild des DS2423?
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

locutus

Siehe bitte Schaltplan:
http://forum.fhem.de/index.php?action=dlattach;topic=38024.0;attach=33258

Ich nehme an, Du meinst diesen DS2423 hier:
http://m1n1.de/html/1wire.html
In der aktuellen Konfiguration wird die FW auf dem ATtiny25 nicht laufen – die Portbelegung stimmt nicht mit dem ATtiny44A überein.


Tobias

ok, hätte ja sein können das man über ein Define auswählen kann ob die 44er oder die 25er Variante läuft... Hab jetzt nicht groß in den code geschaut...
Ich finde es aber großartig das man einen Code hat den man nur noch über die defines customizen muss :)
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

doubh

Ich bin ursprünglich über diese Seite
https://www.tobynet.de/index.php/1-wire-device-mit-avr/12-avr-owdevice-v12
auf die Idee gekommen, einen ATTiny zu verwenden.

Ein größeres Projekt dazu findet sich hier:
https://github.com/smurfix/owslave


Leider ist nicht alles über Defines anpassbar.
Es gibt z.B. zwar OW_PORT & OW_PIN, aber in INIT_TEMP() wird wieder direkt PB2 verwendet...
Vielleicht stricke ich das mal um - wenn viel Zeit ist  :)

ritchie

Hi,
Ich kann mir das ganze gerne mal ansehen.
Derzeit habe ich aber eingeschränkte Moeglichkeiten.
Es wird also was dauern, bis ich dazu komme.
Ich wollte sowieso noch einige Funktionen einbauen,
Da kann ich das gleich mit machen (alle Defines anlegen).
Gruß aus USA

siehe auch wiki für weitere Infos.
R.
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

Prof. Dr. Peter Henning

ZitatDerzeit habe ich aber eingeschränkte Moeglichkeiten.

Ich dachte, die USA seien das Land der unbegrenzen Möglichkeiten ?

LG

pah


ritchie

Dachte ich auch immer, ;)
aber in einem Motel und auf einem Tablet/Handy ist man schon was eingeschrankt.
Ausserdem wuerde meine Frau mich einen Kopf kleiner machen.
Viele Gruesse aus Franklin / North Carolina
R.
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

ritchie

Hallo Zusammen,

ich bin derzeitig an der Überarbeitung und Tests der  von mir hier abgelegten Software am arbeiten.
Hierbei habe ich bis jetzt folgende Erweiterungen eingefügt.

//VERSION 2.01          Correct some warnings during use of eeprom Functions Type cast
//                      Add Software_reset after eeprom_write to avoid Problems of
//                      prevent unknown executing code during power fail (add watchdog function)
//                  Add function of failure diagnosis on LEDs for communication check

Sind noch weitere Sachen/Fehler bis heute aufgefallen ? Vielleicht kann ich sie ja berücksichtigen.
In der Wiki (http://www.fhemwiki.de/wiki/1-Wire_Emulation_per_ATTiny) will ich dann auch die vewendeten Fuse Bits ablegen und einige Infos zur Erstellung.


Edit 1:  Es befinden sich zwei Schaltungsfehler in der Schaltung, welche eine korrekte Funktion der Powerfail Erkennung verhindern.
D100 muss durch eine Drahtbrücke ersetzt werden. Sie verhindert das Laden des Kondensator  C101 :o
Der Widerstand R2 muss auch 100K geändert werden, damit die Spannung näher an dem Umschaltpunkt von High auf low liegt, damit
der Prozessor mehr Zeit zum Sichern der Daten hat.

Ebenso scheint die Software noch nicht ganz rund in diesem Bereich zu arbeiten. Wenn ich fertig bin, werden die Dokument aktualisiert.
Zudem wird hiernach noch BOR notwendig, damit der Prozessor keinen Blödsinn mehr macht.

Viele Grüße

R.
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

ritchie

Hallo Zusammen,

neue Version der Software abgelegt.
Ich habe hier Fehler in der Behandlung des EEPROM Sicherung bearbeitet. Ebenso einige Sachen noch parameterierbar  gemacht.
Auch habe ich zwei Fehler in der Schaltung behoben. (Eine Diode entfernt und die Widerstandswerte für R1&R2 geändert.

Viele Grüße
R.

IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

Prof. Dr. Peter Henning

Ok, ist in der Software auch die Nutzung der internen memory pages drin ? Die hatte ich mal eingebaut, weil das ganz nützlich zum Ablegen der Zwischenwerte ist.

LG

pah

ritchie

Hallo Pah,

das habe ich nicht eingebaut.

Wenn Du mir aber diese Version zur Verfügung stellen würdest, würde ich es noch einbauen.

Viele Grüße

R.
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

Prof. Dr. Peter Henning

Bitte e-Mail-Adresse per PN, dann schicke ich die Datei.

LG

pah

Tobias

Hi,
super arbeit... Insbesondere da mein Initial-Wiki Beitrag jetzt endlich mit Leben gefüllt wurde wozu ich bis dato noch keine Zeit gefunden hatte :) :)

Hast du für den ATTiny25 auch einen aktualisierten Schaltplan parat? Würde super in den Artikel passen. Von diesen Dingern hab ich noch 50 Stück bei mir rumliegen ;)

Ist in der Schaltung auch die Änderung zur besseren Erkennung von langsamen Spannungsabfällen eingebaut? Siehe Bild. War mal hier im Forum in einem Thread dabei gewesen...
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Prof. Dr. Peter Henning

Abbildung 5 in Kapitel 3 des in Arbeit befindlichen Buches.
(http://sh_0305.png)
Allerdings nur mit der "einfachen" Erkennung des Spannunsabfalls, und auch nur als Option

LG

pah