Selbstbau Funkthermometer 433Mhz

Begonnen von matlen67, 28 April 2016, 09:59:57

Vorheriges Thema - Nächstes Thema

meggih

Zitat von: KölnSolar am 21 November 2016, 17:05:41
@meggih: kann es sein, dass Deine Interrupt-Probleme daher kamen, dass Du in der Interrupt-Routine die komplette Verarbeitung machst ? Soll man ja eigentlich vermeiden, wie man immer wieder liest.

Weiß nicht mehr genau, woran es lag, ich meine daran, dass er nicht zuverlässig aufgewacht ist. Das Problem hatte ich irgendwie schon öfter. Leider ist das Datenblatt des Attiny85 so umfangreich, es gibt ja den PIN2 (INT0), der wohl ein "richtiger" Interrupt ist und dann noch andere Pins, die jeweils nur einen PCINT haben. Ich blick da noch nicht durch.

Ich bin aber durchaus bereit nochmal zu Testen, wär ja für nen Reed-Kontakt das effizienteste. Für n T/H-Sensor passt das ja mit dem Watchdog Timer.

LG

KölnSolar

Ich hab PCINT genommen. Die reagieren ja auf alles, während man INT0 noch auf einen Zustand definieren muss. Im Testaufbau hat das bei mir bisher super geklappt(und Taster noch nicht einmal entprellt). Die Erklärung zu den Unterschieden find ich gut: http://www.avrfreaks.net/forum/whats-functional-difference-between-int-and-pcint
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

meggih

Klingt ja gut - ist Dein Attiny auch im Sleep-Mode?

Hast Du mal den Stromverbrauch bei offenem/geschlossenen Kontakt gemessen?

Und, kannst Du vllt hier mal Deinen Sketch posten? (Oder als PN)

LG

KölnSolar

so, hab jetzt den hier https://forum.fhem.de/index.php/topic,61280.0.html für meine Antwort aufgemacht  ;)
DANKE an alle denen ich mit meinen Nicht-Thermometer-Themen auf die Nerven gegangen bin  :-[
Ich melde mich hier erst wieder, wenn es mir um ein Thermometer geht  ;D
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Chris81

Hallo Ihr fleißigen Entwickler,

ich möchte mich bei Euch, aber insbesondere bei Jürgen für diese Super Idee & Lösungen bedanken.
Es hat mich zwar viel Lesezeit bei dem durcheinander in diesem Thread gekostet aber jetzt habe ich ein funktionierendes Thermometer hinbekommen.  Läuft Super an der aktuellen a-culf 433 Version.
Diese kleinen Helfer sind super um die Temperaturen meiner Aquarien und Terrarien zu überwachen.

Vielen DANK dafür!  :)

Ich verfolge schon gespannt auf die Drucksensor Version um eine Füllstandsanzeige für die Aquarien umzusetzen. :)

Um es weiteren Bastlern ein wenig zu vereinfachen nochmal wie ich es gemacht habe

Bauteil-Liste:

1x Attiny85-20pu
1x 18DS20 Temperatur fühler
1x Stück Lochrasterplatine
1x Batteriehalter für CR2032
1x Elko 1µF
1x Widerstand 4k7
1x Sender STX882

Alles günstig gleich für 5Stück über die Bucht in China besorgt, da ich Zeit hatte. (3-4Wochen)

Das Ganze nach Jürgens Plan Seite 2 #16 zusammengelötet.
Dann Jürgens Attiny85_Narcoleptic_LaCross_433MHz.zip Seite 2  #17 herunterladen.

Dazu noch die OneWire Bibliothek.
https://www.pjrc.com/teensy/td_libs_OneWire.html

Alles in ein Verzeichniss entpacken!

Zum flashen des Attiny85 habe ich mir die Arduino IDE 1.6.12 heruntergeladen und installiert.
ACHTUNG:  Es scheint nur mit dieser Version zu gehen mit der 1.6.5 gabs Probleme beim flashen und mit der 1.8 auch.

Um den Attiny85 in die DIE einzubinden muß man wie hier beschrieben vorgehen:

http://fluuux.de/2015/08/attiny-support-unter-arduino-1-6-installieren/

Ich habe das ganze über den Arduino Uno (also ArduinoISP) auf einem Steckboard geflasht. Allerdings drauf achten, dass man ,, internal 8mghz clock ,, einstellt.

Beim Programm muss man dann eine eigene ID 1-127 (wenn ich das richtig verstanden habe) eintragen und schauen das die PIN fürs senden richtig belegt/programmiert sind.

Wenn alles geklappt hat und Batterie angeschlossen ist funkt das Teil sofort alle 5 Minuten (oder wie man es eingestellt hat)
Fhem legt sofort per Autocreate ein CUL_TX_(Eure ID) an und man kann einfach ein SVG Plot machen  :)

Chris






juergs

Hallo Chris,
freut mich das es geklappt hat und Du Dir die Mühe gemacht hast es zusammenzufassen.
Na ja das mit dem Durcheinander ist da so eine Sache.... aber hier gibt es weitaus größere Threads ....
Es war ja etwas "agil" entstanden.  :D

Allerdings mit den Arduino Versionen müsste ich noch etwas präzisieren...
Das Kompilieren sollte eigenlich auch auf den neueren Version ohne Probleme gehen.
Das Flashen über die Arduino-Ide wird da wohl eher das Problem sein....
Für Avrdude scheint gerade die Bitclock Einstellung sensibel zu sein, da die Controller auf 1MHz Taktfrequenz eingestellt sind
und die Standardeinstellung nicht verkraften. (siehe auch andere Threads...)

Ein Überblick über weitere Varianten gibt es
hier.

Grüße,
Jürgen

Chris81

Ist ja Super der Link und die Bastelanreitze, die DHT22 Version ist schon in Planung!  :)

Bodenfeuchte will ich auch mal machen, dies aber anders. Hab die Idee den DHT Sensor in ein kleines Rohr mit Sand einzubauen und dieses Rohr
an den Enden mit permeablen Membranen zu versehen. Dies dann im Balkonkasten vergraben, so sollte es möglich sein die Luftfeuchte der Erde
über das sich einstellende Gleichgewicht zu messen.

Gibt es eine Begrenzung (änlich wie bei LCD Display) wie lang die Zuleitungskabel vom Attiny zum Sensor sein dürfen?

Gruß Chris

giulup

Zitat von: Chris81 am 30 März 2017, 15:17:24
Hallo Ihr fleißigen Entwickler,

ich möchte mich bei Euch, aber insbesondere bei Jürgen für diese Super Idee & Lösungen bedanken.
Es hat mich zwar viel Lesezeit bei dem durcheinander in diesem Thread gekostet aber jetzt habe ich ein funktionierendes Thermometer hinbekommen.  Läuft Super an der aktuellen a-culf 433 Version.
Diese kleinen Helfer sind super um die Temperaturen meiner Aquarien und Terrarien zu überwachen.

Vielen DANK dafür!  :)

Ich verfolge schon gespannt auf die Drucksensor Version um eine Füllstandsanzeige für die Aquarien umzusetzen. :)

Um es weiteren Bastlern ein wenig zu vereinfachen nochmal wie ich es gemacht habe

Bauteil-Liste:

1x Attiny85-20pu
1x 18DS20 Temperatur fühler
1x Stück Lochrasterplatine
1x Batteriehalter für CR2032
1x Elko 1µF
1x Widerstand 4k7
1x Sender STX882

Alles günstig gleich für 5Stück über die Bucht in China besorgt, da ich Zeit hatte. (3-4Wochen)

Das Ganze nach Jürgens Plan Seite 2 #16 zusammengelötet.
Dann Jürgens Attiny85_Narcoleptic_LaCross_433MHz.zip Seite 2  #17 herunterladen.

Dazu noch die OneWire Bibliothek.
https://www.pjrc.com/teensy/td_libs_OneWire.html

Alles in ein Verzeichniss entpacken!

Zum flashen des Attiny85 habe ich mir die Arduino IDE 1.6.12 heruntergeladen und installiert.
ACHTUNG:  Es scheint nur mit dieser Version zu gehen mit der 1.6.5 gabs Probleme beim flashen und mit der 1.8 auch.

Um den Attiny85 in die DIE einzubinden muß man wie hier beschrieben vorgehen:

http://fluuux.de/2015/08/attiny-support-unter-arduino-1-6-installieren/

Ich habe das ganze über den Arduino Uno (also ArduinoISP) auf einem Steckboard geflasht. Allerdings drauf achten, dass man ,, internal 8mghz clock ,, einstellt.

Beim Programm muss man dann eine eigene ID 1-127 (wenn ich das richtig verstanden habe) eintragen und schauen das die PIN fürs senden richtig belegt/programmiert sind.

Wenn alles geklappt hat und Batterie angeschlossen ist funkt das Teil sofort alle 5 Minuten (oder wie man es eingestellt hat)
Fhem legt sofort per Autocreate ein CUL_TX_(Eure ID) an und man kann einfach ein SVG Plot machen  :)

Chris

Vielen Dank für die super Zusammenfassung. Sowas hab ich gesucht um die warmwassertemperatur im Speicher parat zu haben, ohne immer in den Keller zu laufen.

Habe mir mal den Plan aus #16 angeschaut. Jetzt muss ich leider zugeben, dass ich mich meine Kenntnisse wirklich nur aufs löten nach Anleitung beschränken. Mir fehlt jetzt noch eine Info was JP3 aus der Zeichnung ist?

juergs

#173
Hallo giulup,

in diesem Plan hier: https://forum.fhem.de/index.php?action=dlattach;topic=52755.0;attach=53190;image
ist der Jumper-1 nur dazu da, die Batterie von der Schaltung entkoppeln zu können.
Das wäre gleichbedeutend mit einem "RESET" der Schaltung, je nach dem ob man die Batterie (3V2) fest verbunden hat oder nicht.
Ist ab  und zu beim Entwickeln ganz hilfreich, benötigt wird er in der Regel  aber nicht und kann bei Bedarf einfach gebrückt werden.

Noch ein Hinweis: Ein Empfang aus dem Keller benötigt man etwas Augenmerk auf die Bauform der Antenne.
Hier: Crashkurs Antennen


PS:
ZitatZum Programmieren den Jumper von der Batterie ziehen und Sensor entfernen,
sonst meckert der Programmer ... 
;)

Da mein Programmer (z.B. USBasp/avrdudess) mit 5V läuft und diese Spannung nicht die Batterie zum "Explodieren" bringen soll...
Eine bessere Lösung wäre für den ATtiny einen separaten Programmieradapter zu bauen, dann kann man die ISP-Stiftleiste ebenfalls weglassen.

Hier gibt es auch noch Infos mit dem Nano/Uno:
https://forum.fhem.de/index.php/topic,50333.msg437646.html#msg437646

Grüße,
Jürgen

giulup

Danke für die ausführliche Info. Mir ging es aber um das Bauteil auf der linken Seite.  :) :)

Habe jetzt durch ein bisschen suche rausgefunden, dass es der programmer für den attiny ist. Bin ich recht in der Annahme, dass das keine dauerhafte Verbindung sein muss, sondern nur einmalig damit es läuft?

Bisher habe ich keinen "avr isp prg". Hat da jemand eine Empfehlung für einen der zuverlässig und einfach in der Handhabung ist?

Grüße
Giuseppe

juergs

#175
Hallo Guiseppe,

hängt davon ab, ob Du mehr damit machen möchtest.
Für den einmaligen Fall kannst Du einfach einen Arduino-Sketch benutzen (Google).

Ansonsten kannst Du einfach einen ISP Programmer nehmen:
Ich würde diesen hier empfehlen: avr-isp-stick oder einfacher isp-stick
oder diesen hier: guloprog

Zum Selberbauen:
fischl.de/usbasp
Bierdeckel
IC-Testfassung-14-polig

Windows/Raspi(Mono) Oberfläche /Software dazu für avrdude:
AVRDUDESS

Unten im Bild habe ich einige "Adapter" für ATtiny 85 + ATtiny 841 zusammengestellt ...

z.B. diese Platine für den ATtiny 841 lässt sich einfach für diese Projekte nutzen:
https://oshpark.com/shared_projects/fdF3wDQp
12 Stück für knapp USD 14.80, mit Porto ...



giulup

Hi Jürgen.
Danke für den reichhaltigen Input. Damit werde ich erstmal ein wenig zu lesen und lernen haben. :)

Die Platine sieht sehr interessant aus und sieht am Ende auch sauber aus. Leider bin ich nicht kundig genug, dass sich mir die Verbindungen auf den Boards selbst erklären. Wo zB kommt der ds18b20 hin?

Die Zusammenfassung von Chris mit der Bauteilliste hat mir im ersten Moment mehr Einfachheit suggeriert.

Sorry und danke für die Mühen

Giuseppe

juergs

#177
ZitatDanke für den reichhaltigen Input. Damit werde ich erstmal ein wenig zu lesen und lernen haben

Ja, das geht nicht von heute auf morgen ...  ;)

ZitatDie Zusammenfassung von Chris mit der Bauteilliste hat mir im ersten Moment mehr Einfachheit suggeriert

Ja stimmt auch. Aber wie immer hätte man das Henne-Ei-Problem.

Einfacher wäre es, Du nimmst zuerst einen Arduino NANO als Grundlage und versuchst die Firmware etwas zu verstehen.

ZitatWo zB kommt der ds18b20 hin?
Versuche mal anhand der Google-Bilder-Suchfunktion mittels "Arduino DS18B20"  Dich in das Thema einzulesen....

Bei der Programmierung der Port-Pins bist Du ja frei und kannst ja von dem Original abweichen.

Zum Einsteigen in die yC-Programmierung ist das Projekt natürlich etwas "too much" ...  ???
Aber jeder fängt mal "klein" an und Fragen kostet nichts...!

Grüße und viel Spaß beim Nachbauen,
Jürgen




giulup

Danke für die Unterstützung Jürgen. Nach einem halben Tag einlesen (und teils genervten Blicken meiner Frau am Feiertag :) ) bin ich ein ganzes Stück weiter.

Ich dachte schon ich bin in einem Alter wo man sich in sowas komplexes nicht mehr einarbeiten kann.

Das mit Sketches selbst schreiben klingt auch nach Spaß. Ach hätte ich doch keinen Job und mehr Freizeit  ::)

Ich glaube ich mach mich im Laufe der Woche mal an eine größere Bestellung.
Riesen Danke an Jürgen.

juergs

#179
ZitatAch hätte ich doch keinen Job und mehr Freizeit

... kommt mir bekannt vor ...  ;)

Aber vielleicht noch ein Tipp:
https://forum.fhem.de/index.php/topic,59933.msg582762.html#msg582762
https://forum.fhem.de/index.php/topic,59933.msg599637.html#msg599637

Bodenfeuchte-Platine einfach als Funk-Thermometer Zweck-entfremden ....  :D :D :D

Du kannst die von Locutus gemachten Platine(n) zur Temperaturmessung nutzen,
indem Du einfach die Bauteile (2 Widestände + NE555) für die Bodenfeuchte weglässt und nur den DS18B20 bestückst.
Den Thermometer-Sketch kannst Du trotzdem benutzen, evtl. ist nur der Portpin dort auf diese Version
anzupassen dann sollte es ebenfalls als Thermometer lauffähig sein.
Frag doch mal bei Locutus nach, evtl. hat er noch Platinen ...  ;)

Grüße,
Jürgen