Arduino bibliotek (Gör din egen sensor)

Moderator: Telldus

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Hej!

Jag köpte en Tellstick Duo i mellandagarna och gillar den skarpt.
Något som jag saknade var ett enkelt Arduino bibliotek för att göra egna sensorer.

Efter en del googlande hittade jag följande länk: http://lucsmall.com/2012/04/29/weather- ... ng-part-2/
Sidan beskriver hur "fine offset" protokollet är uppbyggt.

Efter att ha läst artikeln gjorde jag ett enkelt "Arduino-bibliotek".
Man kan använda vilken sensor man vill (LM35, DS18B20 eller DHT22 -- DVS nyttja något av den mängd bibliotek som redan finns). Exemplet jag bifogar använder en LM35 sensor.
Min hemmagjorda sensor fungerar väldigt bra, räckvidden är kanon med en billig sändare.
Eftersom processorn mestadels "sover" drar den väldigt lite ström. Med 2 st AA batterier kan den troligen fungera i 1-2 år.

Kostnaden för en sensor blir låg.
En Attiny85 processor på ebay kostar ca 10:-, en 433Mhz sändare ca 6-7:- och sedan tillkommer valfri sensor.
Mitt bibliotek ligger på Arduinos forum: http://forum.arduino.cc/index.php?PHPSE ... c=211371.0

Eftersom jag använde en Attiny85 processor supporteras endast pin8-pin13 (0-5 i biblioteket) om man väljer att nyttja en Atmega328P (som sitter i UNO kort) istället för Attiny85.
Biblioteket är väldigt enkelt och får ses som version 0.1 :)

Nu sitter jag och väntar på mina DHT22 sensorer så jag kan bygga flera sensorer.

fredrikpersson76
Posts: 1
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by fredrikpersson76 » Thu Jan 18, 2018 11:08 am

Hej!

Riktigt intressant. Vart köpte du delarna, Attiny85, 433 rf och har du ett kopplingschema för hur du fick ihop det?

/Fredrik

davka003
Posts: 185
Joined: Thu Jan 18, 2018 11:08 am
Location: Sweden
Contact:

Re: Arduino bibliotek (Gör din egen sensor)

Post by davka003 » Thu Jan 18, 2018 11:08 am

Hög "vill ha känsla" på det här. Är sugen på att bygga dimmers som man kan skruva på en riktig knapp istället för nexas start och stopp av dimning.
Skulle man kunna använda din lib för att överföra många värden i snabb följd (några per sekund)?
My home automation software: Automagically @ Raspberry Pi http://automagically.weebly.com

Rubenrav
Posts: 2
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by Rubenrav » Thu Jan 18, 2018 11:08 am

Jeg ser du har listet 3 forskjellige temperatursensorer, men kan løsningen brukes for andre typer sensorer?
F.eks. barometer, lys intesitet, lyd intensitet osv? Har sett på disse sensorene: BH1750FVI, BMP085.

Er det mulig å bygge samme sensor med Arduino Pro Mini?


Hva måtte en gjort annerledes for å kunne bruke en sensor ute?

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Hej!

Ledsen för det sena svaret.
http://www.futurlec.com säljer Attiny85 för ca 1$.
Sändarna är det bättre att köpa på ebay.

Det borde fungera på samtliga "Arduino"-kort. Arduino pro mini är perfekt, kostar endast 15:- med fri frakt på ebay.
Koden för att sensorn ska gå ner i sömnläge skulle behövas justeras men det ska inte vara något problem.

Vore kul att utöka biblioteket med mer funktionalitet, skulle behöva lägga till andra typer av sensorer än temperatur och luftfuktighet.

Hittade en intressant sida: http://tech.jolowe.se/home-automation-rf-protocols/
Han har skapat ett arduinobibliotek för att slå på av Proove/Anslut/Nexa brytare.

Sensorerna har nu varit i drift sedan jag postade, batterierna håller än :)

Mvh

Olof

gabbano
Posts: 39
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by gabbano » Thu Jan 18, 2018 11:08 am

Är det någon som lyckats detta med en Arduino Uno (AtMega328)?

Får det ej att fungera, men skulle vara kanon om någon kunde guida mig lite.
Tung pung ger starka ben!

gabbano
Posts: 39
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by gabbano » Thu Jan 18, 2018 11:08 am

Har fått koden att fungera om jag kör en signal med "känd" crc . Men kör jag via algoritmen som beräknar crc får jag fel summa, dvs Tellsticken tar ej emot min signal.

PREAMBLE: 11111111
DEV TYPE & ID: 000001000010
MSB+TEMP*10: 000011111010
HUMIDITY: 01010101
CRC: 00001010
Tung pung ger starka ben!

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Väldigt sena svar :)

Vad jag vet bryr sig inte tellsticken om CRC. Jag brukar få in allt möjligt skräp (okända sensorer m.m.) eftersom tellsticken struntar i checksumman.
En sak som är dålig med biblioteket är att det bara supporterar PortB på AVR-processorn."Pin 0" är alltså D8 på en Atmega328, 1 = D9.....

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Hej!

Idag upptäckte jag varför sensorerna inte fungerat för vissa personer.

Igår uppgraderade jag firmware på min Tellstick Duo, efter det blinkar inte Duon när jag sänder data.
Har ingen aning om vad som är fel, testade att byta ut CRC funktionen men det hjälpte inte.

Nedgraderade firmware versionen till "tellstick_duo_fw4.hex" och efter det fungerar sensorerna igen.
Orkar nog inte lägga ned mer tid på detta eftersom jag inte har något behov av ny firmware.

/Olof

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Tänkte bara informera att användaren "Ranemyr" på Arduino forum fixat CRC-rutinen så nu ska biblioteket fungera med senaste firmware.

http://forum.arduino.cc/index.php?topic=211371.0

badtastex
Posts: 19
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by badtastex » Thu Jan 18, 2018 11:08 am

Har du lust att dela med dig av komplett kod med även main och libs till de olika sensorerna? Jag har några SHT22 som jag gärna vill få igång men ytterst lite tid. ;)

Skulle nog rekommendera dig att uppgradera till senaste TD firmware, mycket som är förbättrat!

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Hej!

Svarar sent som vanligt :)
Bifogar biblioteket med CRC fixen. Jag har inte testat den nya koden men den borde fungera.
I biblioteket ligger även ett exempel som använder DHT22 sensor.

TellstickSensor Sensor1(0); = PB0 (Pin 5 fysiskt på Attiny85)

Bifogar även biblioteket för DHT (http://playground.arduino.cc/Main/DHTLib).

Ladda ner tiny core från https://code.google.com/p/arduino-tiny/
Läs instruktionerna (README) noggrant. Installationen skiljer sig mellan Arduino >1.5 och äldre versioner.

Skickar med en bild också på en sensor som snurrat i typ ett år nu. Batteriet räcker i en evighet.

Mvh

Oof
Attachments
sensor.jpg
Sensor
sensor.jpg (136.72 KiB) Viewed 16979 times
dht.rar
(2.4 KiB) Downloaded 204 times
TellstickSensor.rar
(2.78 KiB) Downloaded 297 times

badtastex
Posts: 19
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by badtastex » Thu Jan 18, 2018 11:08 am

Tack så mycket, fick faktiskt till lite fungerande kod för min SHT22 (Sensirion I2C-givare) men sen har jag inte kommit så långt så jag byggt något - allt snurra på utvecklingskort dock. ;)

Hur har du gjort med matningen till sensorn - stänger du av den när CPUn vilar?

olof_n
Posts: 7
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by olof_n » Thu Jan 18, 2018 11:08 am

Hej!

DHT22 drar 50uA när man inte läser ifrån den.
Det skulle nog vara en bra idé att använda en pinne på Attiny85:an för att kontrollera strömmen till sensorn.

Fungerar sensorn kommer nog "tellstick"-koden att fungera.


Mvh

Olof

swezoom
Posts: 1
Joined: Thu Jan 18, 2018 11:08 am

Re: Arduino bibliotek (Gör din egen sensor)

Post by swezoom » Thu Jan 18, 2018 11:08 am

Tack för ett bra inlägg Olof, enkelt och tydligt. :D / zoom

Post Reply