Hallo
Es freut mich hier im Forum zu sein, es hat mir schon einigemale weitergeholfen..., diesesmal ist das Thema aber schon so spezifisch das ich leider seit 2 Tagen nicht wirklich weiterkommen...
Es geht darum einen RFiD reader von der Firma Iron Logic bezeichnet als CP-Z über OneWire (verwendet das iButton Protocol) mit einem arduino auszulesen.
Ich hatte bereits mit dem Hersteller Kontakt...der konnte mir aber leider auch nicht weiterhelfen, scheinbar hat noch keiner versucht diesen RFiD Reader mit dem Arduino zu verwenden.
Konkret stehe ich vor folgendem Problem: Ich bekomme mit dem Befehl ds.search(addr) keine Adresse und auch kein true als hätte der Arduino was gefunden...aber der CP-Z muss doch eine fixe Adresse haben oder nicht? Pull up ist ein 4kOhm.
Also besteht die Frage ob das mit dem Arduino überhaupt funktioniert und ob das schonmal gemacht wurde...
Hier ist noch der Link des Produkts ( Ich hoffe ich darf das hier angeben:) )
Danke euch für eure Hilfe jetzt schon... wenn wir nicht bei 25 Türen bereits diesen RFiD Sensor verbaut hätten würde ich einen anderen nehmen aber hoffentlich kann ich mir das sparen
und danke für eure bereits erbrachte Hilfe, es war mir auch dank euch möglich völlig Autodidakt das Programmieren am Arduino beizubringen.
Das Ding wird mit 12V gefüttert...
Das Protokoll sagt noch nichts über die Pegel aus.
Möchtest Du von einem mal das Platinchen nehmen und ausbauen - umdrehen und Foto machen. Bitte nicht zu sehr verkleinern und dann schaun wa mal, was da drauf ist....
@uwefed : leider hat er mir nicht mehr gegeben...ich denke mir auch das da eigene Befehle oder so etwas vielleicht erforderlich sind... ich weiß aber nicht wonach ich genau fragen soll...das Thema mit der Adresse sollte ja noch ohne genauere Informationen bewältigbar sein...hm
@my_xy_projekt sehr gerne! vermutest du das die Datenleitung des CP-Z mit 12V funktioniert? nein oder?
auf dem großen IC steht: IRONLOGIC RM3_2002 B711G003EG
auf dem kleineren rechts oben steht: X72 z062 (X sollte ein kleines Firmensymbol sein glaube ich)
Da muss ja irgendwie ein Pegel drauf kommen.
Ich hätte gerne ein bildchen von oben, das man die Leiterbahnen sieht, die an dem Schraubklemmenblock dran hängen.
Ich würde vermuten, das in dem Z05, was die Auswerteeinheit sein soll ein PULLUP drin ist, den Du noch nachrüsten musst.
Aber erstmal will ich sehen, ob da aus den Verbindungen was abzuleiten ist.
(Wobei das Platinchen wohl absichtlich so verschandelt wurde .... )
@my_xy_projekt das ist schon eine interessante Info das der DS1996L die Basis ist
Deine beschrieben Schaltung habe ich versucht, der Rfid reader summt auch wenn er ein rfid chip liest. das einzige ist das ich 4k ohm genommen habe nicht genau 4,7k ist das entscheidend?
Ich dachte mir das die Geschichte hier ihr Ende hat...falls du noch eine Idee hast bitte her damit wird sofort ausprobiert, ich dachte das wir soweit alles gecheckt hätten. Ich habe dem Hersteller noch gemailt und mehr Infos angefordet, jedoch glaube ich nicht das dieser ein fertiges Arduino Programm hat...
Ich wüßte leider wirklich nicht was ich noch probieren kann....
Mit neuer Motivation ist mit heute die Lösung gefunden!
Der Hersteller der Russischen Platine hat es gleich gehabt.
Schlussendlich ist die Lösung sehr einfach, man kann keine Adresse abfragen
Es war 0x33 als Anforderung vom Arduino zu senden um die ID zurück geschickt zu bekommen.
hier der Code:
if(ds.reset()) { // if detect card
ds.write(0x33); // send commands to reader for receive card data
for(int i=0;i<8;i++) {
data[i] = ds.read(); // read each byte (i don't remember how much, should be 1 low byte, 6 data bytes and high byte - crc)
Serial.print(data[i], HEX);
}
Serial.println(" ");
}
der search Befehl hat nichts gefunden aber der reset Befehl bemerkt den CP-Z serwohl...
Aus dem Datenblatt:
Read ROM [33H]
This command allows the bus master to read the DS1996’s 8-bit family code, unique 48-bit serial number, and 8-bit CRC. This command can only be used if there is a single DS1996 on the bus. If more than one slave is present on the bus, a data collision will occur when all slaves try to transmit at the same time (open drain will produce a wired-AND result). The resultant family code and 48-bit serial number will usually result in a mismatch of the CRC
Ich wüsste noch gerne welcher R zwischen +5V und DATA-Pin drin ist.