Hallo,
Sender/Empfänger mal von elektrischen Störfeldern weiter entfernen.
Sender/Empfänger in größerem Abstand betreiben.
Haben die Antennen die richtige Länge?
Das kann aber alles mögliche sein, am besten mit den Beispielen der Lib probieren.
Gruß und Glück
Andreas
So... Mit den neuen Empfängermodulen ist das Signal am DATA-Pin wunderbar. Allerdings bin ich immer noch nicht so recht weiter, denn der Empfänger-Sketch erkennt keine Datenpakete.
Ich will die Daten eines Ultraschallsensors über ein paar Meter zum Hauptgerät übertragen. Das ist jeweils ein 16bit-Wert. Sender und Empfänger sind jeweils ATtiny85 und eine ausführliche Internetrecherche hatte mich überzeugt, dass die Übertragung mit der Manchester-Lib die wenigsten Probleme hat. Die ATtiny85 sind ja in Bezug auf Speicher und Interrupts nicht sehr reichlich ausgestattet, wodurch einige Lösungen ausfallen, die auf anderen Arduinos laufen.
Miq1:
Ich will die Daten eines Ultraschallsensors über ein paar Meter zum Hauptgerät übertragen. Das ist jeweils ein 16bit-Wert. Sender und Empfänger sind jeweils ATtiny85 und eine ausführliche Internetrecherche hatte mich überzeugt, dass die Übertragung mit der Manchester-Lib die wenigsten Probleme hat. Die ATtiny85 sind ja in Bezug auf Speicher und Interrupts nicht sehr reichlich ausgestattet, wodurch einige Lösungen ausfallen, die auf anderen Arduinos laufen.
Dann nimm die "RCSwitch", damit geht es auch auf dem ATtiny85.
Die verwende ich auch problemlos.
Nö, RCSwitch geht leider nicht, lässt sich wegen der Bezüge zu Serial darin nicht compilieren. Eine Alternative wäre ggfs. RemoteSwitch in der Modifikation von Jeroen Meijer, aber die habe ich bisher nicht probiert.
Ich denke, ich versuche es irgendwann mal mit einem anderen Core für den ATtiny85. Es gibt einige Hinweise im Internet, dass der ATtinyCore von Spence Konde, den ich verwende, bei den Interrupts problematisch sein könnte. Ich konnte mich aber bisher nicht dazu durchringen, einen anderen Core zu verwenden, weil es keinen klaren Beleg für die Abhängigkeit gibt.
Ich habe schon mehrere Projekte mit RCSwitch und ATtiny85 realisiert.
Ich verstehe nicht, warum du uns immer nur mit halben Informationen fütterst.
Wie sollen wir da helfen.
Nur du siehst dein Projekt und wir dürfen raten.
Das ist doch großer Mist.
Ich danke für die Hilfe... Menno, schreib' einfach, was Du wissen musst und ich antworte. Ich kann schlecht alle Internetreferenzen, die ich beackert habe, hier mit anhängen. Ich hatte daraus gelesen, dass nicht jeder Core per Software ein Serial emuliert - die ATtiny85 haben ja keine Hardware-Serial -, und die RCSwitch-Library benutzt eben Serial.
Ich glaube aber, ich habe es jetzt selbst gefunden: ich definiere im Code (siehe im Post oben) mit "Manchester receiver;" ein eigenes Objekt, die Library macht aber ganz am Ende von Manchester.cpp selbst ein "Manchester man;". Dadurch wird die Interruptroutine des Objektes "man" durch die des Objektes "receiver" überschrieben. Das könnte zu Problemen führen, denke ich. Beim Senden ist keine Interrupt beteiligt, deswegen passiert da nichts, obwohl ich auch da in Code ein "Manchester transmitter;" stehen habe.
Der Kram ist auf meinem anderen Rechner, deswegen kann ich das nicht sofort probieren. Ich schreibe aber hier, wenn es geklappt hat.
Vermutlich setzt du tatsächlich eine falsche Core ein.
Ich musste auch meine Core wechseln um fehlerfreien Code für den ATtiny zu erstellen.
Seit dem bin ich damit zufrieden.
Ok...danke.
Das hilft sicher denen, die auch auf das Problem stoßen.
Nur warum verwendest du keine Code-Tags, damit wird der Sketch auch auf mobilen Geräten besser lesbar.