Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Koffie schreef op maandag 06 mei 2013 @ 19:47:
Een totaal andere vraag: dit project gaat om het weergeven van gewicht/inhoud van mijn bierfusten. Iemand een link naar een makkelijk te bedienen/goedkope LED strip (multi color) van max 20-30cm lang?
Ik denk dat het makkelijkst en goedkoopst een LED matrix is. Bij iPrototype hebben ze die wel: https://www.iprototype.nl.../led-matrix-8x8-red-green
Probleem is alleen dat dit een shitload aan aansluitingen kost. Bij adafruit hebben ze daar een oplossing voor: een LED backpack. Deze backpack is een soort breakout-board voor de LED matrix. Door dit boardje word het een I2C apparaat, wat een stuk makkelijker aan te sturen en aan te sluiten is.

Weet iemand een reseller in Nederland dit soort boardjes verkoopt? iPrototype heeft nl. alleen de LED matrix zelf.

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!
Anders gewoon shift-registers gebruiken. Scheelt een hoop aansluitingen.

Of:
http://dx.com/p/max7219-d...e-w-5-dupont-lines-184854

[ Voor 33% gewijzigd door CurlyMo op 08-05-2013 22:34 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • GekkePrutser
  • Registratie: Juli 2004
  • Niet online
Koffie schreef op woensdag 08 mei 2013 @ 22:10:
[...]
Weet iemand een reseller in Nederland dit soort boardjes verkoopt? iPrototype heeft nl. alleen de LED matrix zelf.
Als ik adafruit, seeedstudio e.d. nodig heb, bestel ik ze meestal bij http://exp-tech.de . Geen Nederlandse webshop maar de meeste dingen van adafruit e.d. kunnen ze wel leveren en je hebt dan geen gedoe met importkosten (want binnen EU) en lange levertijden. Het is helaas wel 9 euro verzendkosten per levering (had voor NL wel wat goedkoper gemogen gezien de 3,50 voor Duitsland maarja).

Edit: Overigens heb ik er geen persoonlijke bindingen mee, heb er alleen 2x besteld, onder andere dat RGB LCD display voor de Raspberry Pi van Adafruit. Als iemand een goedkopere optie heeft voor dit soort spullen dan hou ik me aanbevolen :)

[ Voor 19% gewijzigd door GekkePrutser op 08-05-2013 23:05 ]


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Ziet er goed en goedkoop uit. Jammer dat het alleen maar rood is, maar voor dat geld moet ik niet moeilijk doen :)
Even uitzoeken hoe je dat ding aansluit en aanstuurt. Ik kwam dit al tegen: http://www.plingboot.com/...19-with-the-raspberry-pi/
GekkePrutser schreef op woensdag 08 mei 2013 @ 22:53:
[...]


Als ik adafruit, seeedstudio e.d. nodig heb, bestel ik ze meestal bij http://exp-tech.de . Geen Nederlandse webshop maar de meeste dingen van adafruit e.d. kunnen ze wel leveren en je hebt dan geen gedoe met importkosten (want binnen EU) en lange levertijden. Het is helaas wel 9 euro verzendkosten per levering (had voor NL wel wat goedkoper gemogen gezien de 3,50 voor Duitsland maarja).

Edit: Overigens heb ik er geen persoonlijke bindingen mee, heb er alleen 2x besteld, onder andere dat RGB LCD display voor de Raspberry Pi van Adafruit. Als iemand een goedkopere optie heeft voor dit soort spullen dan hou ik me aanbevolen :)
Bedankt voor de tip, die kende ik nog niet :Y)

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!
Denk er ook aan alles uitgebreid te documenteren zodra je het werkend hebt. Dan kan ik een linkje plaatsen aan het begin van het topic.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • arie_papa
  • Registratie: Augustus 2008
  • Laatst online: 12-09 14:34

arie_papa

Running on Ubuntu

GekkePrutser schreef op woensdag 08 mei 2013 @ 22:53:
[...]


Als ik adafruit, seeedstudio e.d. nodig heb, bestel ik ze meestal bij http://exp-tech.de ...
Ah, die shop kwam ik laatst tegen inderdaad toen ik naar de cubieboard op zoek was (een van de weinige leveranciers ervan). Goed om te weten dat je met die shop goede ervaringen hebt.

Statistieken zijn als bikini's: wat ze tonen is erg suggestief, wat ze niet tonen is essentieel


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
CurlyMo schreef op donderdag 09 mei 2013 @ 08:18:
Denk er ook aan alles uitgebreid te documenteren zodra je het werkend hebt. Dan kan ik een linkje plaatsen aan het begin van het topic.
Wordt wel een hele specifieke setup hoor ;)

Wat ik nu in gedachten heb (maar extreem aan veranderingen onderhevig .. :+ ):
4 x DS181B20 sensor
2 x LCD (2x16) + keypad
1 x LED matrix 8x8

De temperatuur sensoren zullen 4 bierleidingen meten: 2x van fust naar koeler en 2x van koeler naar tapkraan. Per tapkraan een LCD (2 in totaal dus). Op de LCD zal te lezen zijn welk bier het is, hoeveel procent alcohol en de temperaturen voor en na de koeler.
De LED matrix (zeker een goedkope van DX) verdeel ik in 2en .. zodat van beide fusten te zien is hoeveel er nog in zit.

Ik heb me alleen totaal nog niet verdiept in de aansluitingen van de de LCD matrix van adafruit.
De DX matrix schijn je wel aan de praat te krijgen door ze 'gewoon' op een GPIO te gooien. De LCD matrix is I2C, dus theoretisch moet ik gewoon 2 van die LCD's + 4 DS18B20 sensors door kunnen lussen.

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!
Het einddoel is misschien persoonlijk, maar hoe je de individuele componenten aansluit niet.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Zo .. de INA125 en de LED matrix zijn besteld.
Nu nog even wachten op reactie van een handelaartje over de beschikbaarheid van de 2*16 LCD kits en dan kan ik die ook bestellen (samen met een MCP3008). De Load Cell's had ik al besteld en een Pi had ik ook al liggen.
Nu dus wachten tot alles binnenkomt en dan kijken of ik het ook daadwerkelijk aan de praat kan krijgen :+

Voor de LCD kit heb ik deze gisteren gevonden: https://github.com/aufder/RaspberryPiLcdMenu ziet er interessant uit en scheelt mij weer een avond prutsen met code

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!

  • Promy
  • Registratie: Oktober 2002
  • Laatst online: 11-09 23:32
Zoals in een eerdere post aangegeven ben ik bezig met een maduino nano (op 3.3V) te koppelen via i2c aan een raspberry pi.
Voor het gedeelte van de meduino heb ik een I2CreceiveEvent die het volledige commando inlees die over de i2c bus komt.
Waar ik echter niet aan uitraak is het gedeelte voor de Pi (via Python): via google kom ik verschillende zaken tegen:
- bus.write_byte_data :soms met 3 arguments (address, byte, data) en soms met 2 (address en byte)
- bus.write_block_data
- bus.read_byte_data

Wat ik wil doen is een commando zoals volgende doorsturen : SFF000000FF0000C34715 : dit is het type commando (S) en het commando (hex).
Hierna moet de pi ook het antwoord inlezen. Het antwoord is ofwel een gewone 0 of 1 (mislukt / gelukt) ofwel een char- array van 22 bytes. (komt via een I2CrequestEvent() in de arduino code.

Kan er me iemand in de goede richting wijzen?

Acties:
  • 0 Henk 'm!

  • TNW
  • Registratie: Januari 2007
  • Laatst online: 09-09 14:01

TNW

Ik heb hier een GPIO en algemene RPi vraag.

Ik doe momenteel twee dingen op de RPi, nl het uitlezen van DHT11 sensoren en het draaien van een audiostream.

Het uitlezen van de DHT11 gaat om onbekende reden een stuk slechter als ik darkice (gecompileerd met mp3 support) laat streamen. Uitlezen doe ik met het Adafruit script, ook gecompileerd naar binary.

Als de mp3 stream aanstaat krijg ik soms slechte of geen resultaten van de sensor. Ik draai een zelfgemaakt script welke de sensor uitleest, controleert of er in de laatste regel de verwachte data staat (ik match op *Hum*) en gooit dit naar een logfile. Als er na 10x proberen geen resultaat komt van de sensor komt er een error in de logfile:

Thu May 16 11:32:02 CEST 2013 Temp = 40 *C, Hum = 22 % <-- waardes temp en hum lijken omgekeerd
Thu May 16 11:35:06 CEST 2013 failed to read dht11! <-- te vaak foute data, faal

script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 # fetch data, check for correct output , max 10 retries
        n=1
        while [[ "$dht11output" != *Hum* && n -le 10 ]]
        do
        dht11output=$(/home/johan/scripts/Adafruit-Raspberry-Pi-Python-Code/Adafruit_DHT_Driver/Adafruit_DHT 11 2 | tail -n1)
        echo -e "fetching dht11 data, attempt $n\n"
        echo "$dht11output"
        n=$((n+1))
        done
        if [[ "$dht11output" = *Hum* ]]
        then
        echo "$(date) $dht11output" >> $LOGFILE
        else
        echo -e "$(date) failed to read dht11!" >> $LOGFILE
        fi


Het ligt niet aan processorbelasting:

code:
1
2
johan@raspberrypi ~ $ uptime
 11:41:54 up 13 days,  1:57,  2 users,  load average: 0.29, 0.35, 0.36


dmesg staat vol met meldingen van de USB geluidskaart, mogelijk is dit gerelateerd:

code:
1
[1130339.772073] cm109 1-1.4:1.3: cm109_urb_irq_callback: urb status -71


Stream is ook krakerig, bij geluidspieken vooral. Geluidskaart is een cheapo "3D sound" met CM109 chipset zoals dmesg ook aangeeft.

Iemand een idee wat ik hier aan kan verbeteren? Stream uitzetten geeft praktisch foutloze data welke ik fijn via SMNP en cacti graph :)

Weblog | Straling!


Acties:
  • 0 Henk 'm!

  • AmRuLeZ
  • Registratie: Februari 2002
  • Laatst online: 31-07 17:52
Vandaag de klik-aan-klik-uit van de action weten te schakelen d.m.v. raspberry, met webservertje i.c.m. de licau website. Ik heb de r433a module aangeschaft via iprototype.nl.

Leuk om te delen is denk ik, dat ik de klik-aan-klik-uit in de schuur niet kon bereiken. Deze afstand was net te groot. Om toch de stekker te kunnen schakelen, heb ik een antenne gemaakt van koperdraad (2,5). Dit draad heb ik om een pen heen gekruld, om het in de juiste vorm te krijgen. Vervolgens bevestigt op de antenne-pin van de r433a chip. Resultaat, bereik vergroot, en ik kan de schakelaar in de schuur bereiken ;)

Afbeeldingslocatie: http://img824.imageshack.us/img824/4003/20130516163841.jpg

Later maar een keer netjes maken...
Doe er je voordeel mee!

[ Voor 10% gewijzigd door AmRuLeZ op 16-05-2013 19:49 . Reden: typo ]


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Weet iemand misschien of het mogelijk is om ook 433 data uit te lezen middels LIRC? Ik zie met lirc wel het indrukken van knoppen op een afstandsbediening maar zou je de LIRC daemon ook kunnen gebruiken om te triggeren op een signaal van lengte X en dan het signaal door te geven aan een script?

Acties:
  • 0 Henk 'm!
oZy schreef op vrijdag 17 mei 2013 @ 00:18:
Weet iemand misschien of het mogelijk is om ook 433 data uit te lezen middels LIRC?
Ja, dat kan, maar gaat zeer moeilijk door de hoeveelheid ruis. Daarvoor kan je beter mijn genLirc code kunnen gebruiken.
Ik zie met lirc wel het indrukken van knoppen op een afstandsbediening maar zou je de LIRC daemon ook kunnen gebruiken om te triggeren op een signaal van lengte X en dan het signaal door te geven aan een script?
Ja, dat doe ik hier ook. Werkt prima, maar wel met een ATTiny85 ertussen om de ruis te filteren.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
AmRuLeZ schreef op donderdag 16 mei 2013 @ 17:45:
Leuk om te delen is denk ik, dat ik de klik-aan-klik-uit in de schuur niet kon bereiken. Deze afstand was net te groot. Om toch de stekker te kunnen schakelen, heb ik een antenne gemaakt van koperdraad (2,5). Dit draad heb ik om een pen heen gekruld, om het in de juiste vorm te krijgen. Vervolgens bevestigt op de antenne-pin van de r433a chip. Resultaat, bereik vergroot, en ik kan de schakelaar in de schuur bereiken ;)

[afbeelding]

Later maar een keer netjes maken...
Doe er je voordeel mee!
Mooi om te zien, ga ik ook proberen!
Heb je nog een bepaalde lengte gebruikt?

Bij de (lokale) Gamma hadden ze een stuk of 4 KaKu versterkers liggen die voor 25% korting ofzo weggingen. Wellicht is dit bij andere Gamma's ook zo?

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Kun je aangeven hoe je de attiny hebt aangesloten op de Pi?

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

CurlyMo schreef op vrijdag 17 mei 2013 @ 00:33:
[...]

Ja, dat kan, maar gaat zeer moeilijk door de hoeveelheid ruis. Daarvoor kan je beter mijn genLirc code kunnen gebruiken.

[...]

Ja, dat doe ik hier ook. Werkt prima, maar wel met een ATTiny85 ertussen om de ruis te filteren.
Curly: waarom gaat het moeilijk door de hoeveelheid ruis? Ik gebruik nu een 'fork' op basis van jouw receive.cpp waarmee ik mijn draadloos weerstation prima kan uitlezen. Maar omdat dit natuurlijk verre van een daemon is wil ik kijken of ik het in LIRC kan verwerken.

Ik kan met irrecord ook een lirc conf maken (wat voegt genLirc hier nog aan toe ipv het niet hoeven inleren van alle afzonderlijke knoppen?).

Maar als ik naar de code van zo'n conf kijk is het niets meer dan de timings van de pulsen waar hij op reageert. Deze 'signature' voor een knop van een afstandsbediening is altijd hetzelfde, i.t.t. een bericht van een weerstation waar continu wisselende data in staat (maar wel een vast formaat heeft waaraan het te herkennen is).

edit: kan er natuurlijk ook zelf een daemon van maken O-)

[ Voor 5% gewijzigd door oZy op 17-05-2013 12:00 ]


Acties:
  • 0 Henk 'm!

  • AmRuLeZ
  • Registratie: Februari 2002
  • Laatst online: 31-07 17:52
Koffie schreef op vrijdag 17 mei 2013 @ 07:10:
[...]

Mooi om te zien, ga ik ook proberen!
Heb je nog een bepaalde lengte gebruikt?

Bij de (lokale) Gamma hadden ze een stuk of 4 KaKu versterkers liggen die voor 25% korting ofzo weggingen. Wellicht is dit bij andere Gamma's ook zo?
Ik las ergens dat 16,7 cm de ideale lengte is. Dit heb ik aangehouden.
Ik heb het bevestigd door het antenne pintje bij een stukje kabelhulsel in te duwen.:-)

Acties:
  • 0 Henk 'm!

  • MacGrumpy
  • Registratie: Februari 2010
  • Niet online
Voor antenna lengte zie: Wikipedia: Dipole antenna, je wilt een 1/4 dipole maken.

Dus: (snelheid licht in vacuum)/Frequency*0.981*1/4 = lengte (m) = 299792458/(433.92e6)*0.981*0.25 = 0.169...

Sorry voor mogelijke fouten, het is al laat....

Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Ik had voor mijn kachel python script ook een skeleton-deamon gebruikt, maar dit zorgde ervoor dat mijn Pi eens in de xx dagen crashde
Ik heb uiteindelijk mijn timer-loop uit het python script gehaald en 1 'bug' verwijderd (netjes aan het einde de wiringpi setting weer 'deleten') en het zooitje in een cronjob gehangen. Sinds die tijd is het stabiel gebleven.

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!
Het maken van een daemon is niet moeilijk, dat heb ik van deze receiver ook zo gedaan. Zie bijv. mijn splash die ik geschreven heb en in XBian wordt gebruikt. Het probleem is alleen dat doordat ik geen gebruik maak van interrupts (pure luiheid ;)) hij niet bedoeld is voor continue gebruik. Daarvoor is de code ook verre van stabiel van en gebruikt hij teveel resources.

Wat genLirc doet is direct die lircd config bestandjes genereren door dezelfde parameters te gebruiken zoals je met de send. Dat scheelt een hoop gekllooi, maar je kan natuurlijk altijd irrecord gebruiken.
Koffie schreef op vrijdag 17 mei 2013 @ 09:11:
Kun je aangeven hoe je de attiny hebt aangesloten op de Pi?
Kan eigenlijk niet missen:
http://circuits.datasheetdir.com/18/ATTINY25-pinout.jpg

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Jippie .. vandaag mijn LED matrix van DX binnengekregen samen met de 2 load cell's.
Nu nog wachten op de amplifier en ADC.

Ondertussen de LED Matrix aangesloten volgens volgend schema :

5v -> VCC
GND -> GND
MOSI -> DIN
CE0 -> CS
CLK -> CLK

Wat tot nu toe als gevolg heeft dat zodra de Pi power krijg alle LED's gaan branden.
Ik had al gelezen dat je via spidev onder python de matrix kunt aansturen, maar voorlopig krijg ik spidev nog niet geïnstalleerd.

pi@raspberrypi ~/py-spidev $ sudo python setup.py install
running install
running build
running build_ext
building 'spidev' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/src/linux/include -I/usr/include/python2.7 -c spidev_module.c -o build/temp.linux-armv6l-2.7/spidev_module.o
spidev_module.c:20:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1


Iemand hier al eerder mee gewerkt?

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!
Je zou in XBian de development tools kunnen installeren...

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Koffie
  • Registratie: Augustus 2000
  • Laatst online: 12-09 14:06
Hij doet het :)

Voor degene die tegenhetzelfde aanlopen:

- sudo apt-get install python2.7-dev
- git clone git://github.com/doceme/py-spidev
- cd py-spidev/
- sudo python setup.py install
- sudo nano /etc/modprobe.d/raspi-blacklist.conf en zet een # voor de regel "blacklist spi-bcm2708"
- reboot
- Voor onderstaande code uit om een test te doen:

Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
import spidev
import time

spi = spidev.SpiDev()
spi.open(0,0)

def Initialise():
  # decoding :BCD
  spi.writebytes([0x09])
  spi.writebytes([0x00])

  # brightness
  spi.writebytes([0x0a])
  spi.writebytes([0x03])

  # scanlimit; 8 LEDs
  spi.writebytes([0x0b])
  spi.writebytes([0x07])

  # power-down mode: 0. normal mode:1
  spi.writebytes([0x0c])
  spi.writebytes([0x01])

  # test display: 1; EOT. display: 0
  spi.writebytes([0x0f])
  spi.writebytes([0x00])

Matrix = [[0 for x in xrange(8)] for x in xrange(38)] 

Matrix[0] = [0x3C,0x42,0x42,0x42,0x42,0x42,0x42,0x3C]  #0
Matrix[1] = [0x4,0xC,0x14,0x4,0x4,0x4,0x4,0x4]  #1
Matrix[2] = [0x7E,0x2,0x2,0x7E,0x40,0x40,0x40,0x7E]  #2
Matrix[3] = [0x3E,0x2,0x2,0x3E,0x2,0x2,0x3E,0x0]  #3
Matrix[4] = [0x8,0x18,0x28,0x48,0xFE,0x8,0x8,0x8]  #4
Matrix[5] = [0x3C,0x20,0x20,0x3C,0x4,0x4,0x3C,0x0]  #5
Matrix[6] = [0x3C,0x20,0x20,0x3C,0x24,0x24,0x3C,0x0]  #6
Matrix[7] = [0x3E,0x22,0x4,0x8,0x8,0x8,0x8,0x8]  #7
Matrix[8] = [0x0,0x3E,0x22,0x22,0x3E,0x22,0x22,0x3E]  #8
Matrix[9] = [0x3E,0x22,0x22,0x3E,0x2,0x2,0x2,0x3E]  #9
Matrix[10] = [0x8,0x14,0x22,0x3E,0x22,0x22,0x22,0x22]  #A
Matrix[11] = [0x3C,0x22,0x22,0x3E,0x22,0x22,0x3C,0x0]  #B
Matrix[12] = [0x3C,0x40,0x40,0x40,0x40,0x40,0x3C,0x0]  #C
Matrix[13] = [0x7C,0x42,0x42,0x42,0x42,0x42,0x7C,0x0]  #D
Matrix[14] = [0x7C,0x40,0x40,0x7C,0x40,0x40,0x40,0x7C]  #E
Matrix[15] = [0x7C,0x40,0x40,0x7C,0x40,0x40,0x40,0x40]  #F
Matrix[16] = [0x3C,0x40,0x40,0x40,0x40,0x44,0x44,0x3C]  #G
Matrix[17] = [0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44]  #H
Matrix[18] = [0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x7C]  #I
Matrix[19] = [0x3C,0x8,0x8,0x8,0x8,0x8,0x48,0x30]  #J
Matrix[20] = [0x0,0x24,0x28,0x30,0x20,0x30,0x28,0x24]  #K
Matrix[21] = [0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C]  #L
Matrix[22] = [0x81,0xC3,0xA5,0x99,0x81,0x81,0x81,0x81]  #M
Matrix[23] = [0x0,0x42,0x62,0x52,0x4A,0x46,0x42,0x0]  #N
Matrix[24] = [0x3C,0x42,0x42,0x42,0x42,0x42,0x42,0x3C]  #O
Matrix[25] = [0x3C,0x22,0x22,0x22,0x3C,0x20,0x20,0x20]  #P
Matrix[26] = [0x1C,0x22,0x22,0x22,0x22,0x26,0x22,0x1D]  #Q
Matrix[27] = [0x3C,0x22,0x22,0x22,0x3C,0x24,0x22,0x21]  #R
Matrix[28] = [0x0,0x1E,0x20,0x20,0x3E,0x2,0x2,0x3C]  #S
Matrix[29] = [0x0,0x3E,0x8,0x8,0x8,0x8,0x8,0x8]  #T
Matrix[30] = [0x42,0x42,0x42,0x42,0x42,0x42,0x22,0x1C]  #U
Matrix[31] = [0x42,0x42,0x42,0x42,0x42,0x42,0x24,0x18]  #V
Matrix[32] = [0x0,0x49,0x49,0x49,0x49,0x2A,0x1C,0x0]  #W
Matrix[33] = [0x0,0x41,0x22,0x14,0x8,0x14,0x22,0x41]  #X
Matrix[34] = [0x41,0x22,0x14,0x8,0x8,0x8,0x8,0x8]  #Y
Matrix[35] = [0x0,0x7F,0x2,0x4,0x8,0x10,0x20,0x7F]  #Z

columns = [0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8]

Initialise()

for j in range(0, 38):
  for i in range(0,8):
    resp = spi.xfer([columns[i],Matrix[j][i]])
    print '0x%02X 0x%02X' % (columns[i], Matrix[j][i])
  time.sleep(1)
  print

spi.close


[YouTube: http://www.youtube.com/watch?v=_nkf_z0qyDc]

Tijd voor een nieuwe sig..


Acties:
  • 0 Henk 'm!

  • micoos
  • Registratie: Februari 2011
  • Laatst online: 12-09 10:35
CurlyMo, maar op welke manier communiceer je dan met de ATTiny?

Ik ben ook aan het proberen om de attiny te koppelen aan de Pi. Graag zou ik willen dat de Pi commando's (klikaanklikuit) naar de attiny kan sturen, die op zijn beurt het via RF kan verzenden. Verder moet de attiny ook weer informatie naar de Pi terug kunnen sturen (info van RF receiver).

De attiny stuurt door middel van softwareserial een string (println), en deze probeer ik met minicom uit te lezen op de Pi, maar krijg allleen maar ÁÁÁÁÁÁÁÁÁÁ te zien (4800 snelheid).

Weet jij waar dit aan kan liggen? Ben benieuwd hoe jij dit hebt aangepakt :)

Acties:
  • 0 Henk 'm!
Ik heb de volgende code op de ATTiny staan:
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <NewRemoteTransmitter.h>
#include <NewRemoteReceiver.h>

#ifndef cbi
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#endif
#ifndef sbi
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
#endif

int senderPin = 2;
int receiverPin = 1;

void setup() {
  sbi(GIMSK,PCIE); // Turn on Pin Change interrupt
  sbi(PCMSK,PCINT1); // Which pins are affected by the interrupt   
  
  pinMode(receiverPin,INPUT);
  NewRemoteReceiver::init(1,2,showCode);
}

ISR(PCINT0_vect) {
  NewRemoteReceiver::interruptHandler();
}

void loop() {
}

void showCode(NewRemoteCode receivedCode) {
  NewRemoteTransmitter transmitter(receivedCode.address, senderPin, receivedCode.period);
  if (receivedCode.switchType == 2) {
    transmitter.sendDim(receivedCode.unit, receivedCode.dimLevel);  
  } 
  else {
    if (receivedCode.groupBit) {
      transmitter.sendGroup(receivedCode.switchType);
    } 
    else {
      transmitter.sendUnit(receivedCode.unit, receivedCode.switchType);
    }
  }
}


Daarbij dus de receiver op de ATTiny input aangesloten en de uitgang van de ATTiny weer aan de GPIO van de RPi. Dus de ATTiny doet zelf verder niet veel dan alleen filteren.

Denk er daarbij aan dat je de volgende aanpassingen doet aan de NewRemoteReceiver code:
CurlyMo in "[GPIO] Raspberry Pi"

[ Voor 5% gewijzigd door CurlyMo op 18-05-2013 22:52 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
Ik ben hier met een deurbel projectje bezig.

Als er iemand op de bel druk, dan gaat zoals normaal de bel rinkelen in huis. Nu wil ik daar ook een push bericht bij krijgen op de telefoon.

Het push bericht krijgen werkt met deze opstelling.

Druk knop op een GPIO poort van de Raspberry Pi. Druk knop geeft waarde van 0/1 (ingedrukt of niet)

De drukknop heeft 3 kabels. 5v / ground / schakel draad.
Afbeeldingslocatie: http://i.imgur.com/a14m3YZ.png

En zo ook aangesloten op de Raspberry (5v / ground, en de schakeldraad op een GPIO pin) Werkt perfect ;)
Afbeeldingslocatie: http://i.imgur.com/pcoh0L2.jpg


Maar nu wil ik dat bij de bestaande deurbel bij bouwen.

Dit is de deurbel die hier hangt. Ik heb net even gemeten met de multi meter. Als je niet op de bel druk staat er 0.0 Volt op de draadjes. Druk je de bel in word dit zo rond de 0.3 Volt (de multimeter had ik staan op "20" tallen.
Keuze uit 1000/200/20/2000m/200m/ dus 20 leek me de goede aangezien dat de 10 tallen zijn.

Zo had ik hem staan dus: Afbeeldingslocatie: http://i.imgur.com/MjBauAQ.jpg

Zal ik de draadjes kunnen gebruiken om ook de gpio pin te schakelen? Ik ben nogal bang om zomaar te experimenteren met bestaande stroom schema's. Ik wil de PI niet mollen.

Afbeeldingslocatie: http://i.imgur.com/48opq3A.png

[ Voor 3% gewijzigd door Dacuuu op 24-05-2013 10:31 ]


Acties:
  • 0 Henk 'm!

  • MacGrumpy
  • Registratie: Februari 2010
  • Niet online
@Dacuuu: Ik raad je aan om je in te lezen in basis elektronica. AC/DC, stroom e.d.

De deur bel werkt waarschijnlijk op AC, als je de multimeter op AC zet zal je een andere spanning meten.
(de V~ stand).

De stroom die een deurbel vraagt is meer dan de RPI kan leveren en het is DC. De deurbel zal niet bellen en zeer waarschijnlijk de PI zijn kop kosten, is het niet de stroom dan de geinduceerde afschakel puls die de spoel opwekt.

Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
MacGrumpy schreef op vrijdag 24 mei 2013 @ 10:59:
@Dacuuu: Ik raad je aan om je in te lezen in basis elektronica. AC/DC, stroom e.d.

De deur bel werkt waarschijnlijk op AC, als je de multimeter op AC zet zal je een andere spanning meten.
(de V~ stand).

De stroom die een deurbel vraagt is meer dan de RPI kan leveren en het is DC. De deurbel zal niet bellen en zeer waarschijnlijk de PI zijn kop kosten, is het niet de stroom dan de geinduceerde afschakel puls die de spoel opwekt.
Op de V~ (200) stand geeft de meter 0.6 aan als de bel ingedrukt is. Dit meet ik dan op de 2 schroefjes aan het uiteinde van de rode / blauwe kabeltjes.

Edit: Ik wil de deurbel ook niet door de Raspberry laten lopen. Maar alleen dat als er iemand op de bel drukt. Dat dan de bel normaal functioneert + de GPIO pin van 1 op 0 zet.

[ Voor 11% gewijzigd door Dacuuu op 24-05-2013 11:55 ]


Acties:
  • 0 Henk 'm!

  • MacGrumpy
  • Registratie: Februari 2010
  • Niet online
Een deurbel werkt normaal op 8V AC.
Controleer even de deurbel travo wat de werkelijke spanning is.

[ Voor 48% gewijzigd door MacGrumpy op 24-05-2013 11:59 ]


Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
MacGrumpy schreef op vrijdag 24 mei 2013 @ 11:58:
Een deurbel werkt normaal op 8V AC.
Controleer even de deurbel travo wat de werkelijke spanning is.
Misschien haal ik wat door elkaar. Maar ik ben op zoek geweest naar iets in de meterkast. En deze zit op de meter.

http://www.hagergroup.nl/...actdozen/st303n/35806.htm

Acties:
  • 0 Henk 'm!

  • Septillion
  • Registratie: Januari 2009
  • Laatst online: 23:17

Septillion

Moderator Wonen & Mobiliteit
Dat moet hem zijn. Mij lijkt het makkelijkste om dan parallel aan de bel een relais te laten schakelen. Zou hou je de boel lekker gescheiden en is de kans op storing kleiner.

Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
Septillion schreef op vrijdag 24 mei 2013 @ 15:56:
Dat moet hem zijn. Mij lijkt het makkelijkste om dan parallel aan de bel een relais te laten schakelen. Zou hou je de boel lekker gescheiden en is de kans op storing kleiner.
Dit is de mijne uit de meterkast. Afbeeldingslocatie: http://i.imgur.com/ocUU98W.jpg

En zo'n relais heb ik nog liggen. Die kan ik dan wel gebruiken of niet.
Afbeeldingslocatie: http://i.imgur.com/Z2W6cHc.png

En deze Transistors ook: http://nl.farnell.com/fai...tor-npn-to-220/dp/1467910

[ Voor 25% gewijzigd door Dacuuu op 24-05-2013 17:13 ]


Acties:
  • 0 Henk 'm!
Zojuist de code op git gezet voor een nieuwe receiver voor 433.92Mhz apparaten. Deze code moet veel betrouwbaarder zijn en hij gebruikt veel minder resources 10% t.o.v. 25%. Hij werkt aan de hand van /dev/lirc* sockets (en daardoor op een robuuste interrupt basis). Zorg er dus voor dat je de juiste lirc_rpi kernel module geladen hebt (standaard onderdeel van de kernel). De code is daarnaast modulair geworden waardoor het makkelijker is aanvullende protocollen toe te voegen. Nu worden natuurlijk KaKu (schakelaar / dimmer) en Elro ondersteund.

De code kan gevonden worden in de lirc branch van mijn git repo: https://github.com/CurlyMoo/433.92-Raspberry-Pi/tree/lirc

Compileren werkt hetzelfde door simpelweg in de source folder het volgende te doen:
code:
1
make


Voorbeeld van de werking:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
./receive
# KaKu: ./send -i 100 -u 15 -f
id: 100, unit: 15, state: off
id: 100, unit: 15, state: off
id: 100, unit: 15, state: off
id: 100, unit: 15, state: off
id: 100, unit: 15, state: off

# KaKu: ./send -i 100 -u 15 -d 15
id: 100, unit: 15, dim: 15
id: 100, unit: 15, dim: 15
id: 100, unit: 15, dim: 15
id: 100, unit: 15, dim: 15
id: 100, unit: 15, dim: 15

# Elro: ./sendElro -i 10 -u 15 -t -r 10
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on
id: 10, unit: 15, state: on


Graag hoor ik van vooral de Elro bezitters of de code goed werkt, deze apparaten heb ik namelijk niet fysiek. Laat daarnaast ook jullie verdere wensen weten. En voeg vooral zelf functionaliteit / protocollen toe. Mijn tijd is nog steeds schaars :)

[ Voor 5% gewijzigd door CurlyMo op 26-05-2013 13:56 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Natsu
  • Registratie: Juni 2010
  • Laatst online: 07-09 09:32
Heeft een van jullie female jumper wires die in een case passen? En zoja waar bestel je die? Ik heb namelijk female jumper wires die net niet in een case passen, dus moet de bovenkant van mijn case eraf. Ik heb deze case: http://www.adafruit.com/products/859

Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
WildeBeestje schreef op zondag 26 mei 2013 @ 15:14:
Heeft een van jullie female jumper wires die in een case passen? En zoja waar bestel je die? Ik heb namelijk female jumper wires die net niet in een case passen, dus moet de bovenkant van mijn case eraf. Ik heb deze case: http://www.adafruit.com/products/859
Ik heb deze case Afbeeldingslocatie: http://i.imgur.com/ymgOImW.jpg
En daar passen mijn female kabels gewoon in.

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Die Raspberry GPIO-pinnetjes zijn nog best rap te krijgen, zeker als je het combineert met een ge-overclockede core en DMA om alles uit te spugen. Dit is een controller-less 800x600 LCD en ik krijg een refresh-rate van ongeveer 18Hz:
Afbeeldingslocatie: http://j0h.nl/ctg/tmb
Dat betekent zo'n 8.5 megapixel per seconde over die arme GPIO-pinnetjes. Best netjes imo.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!
@Sprite_tm, nu nog een complete uitwerking van hoe je dit hebt gedaan :)

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Hehe, dat komt nog, voornamelijk zodra ik mijn target-display en het embedded systeem waar het normaliter inhoort (aka '3ds') heb.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • Stubby
  • Registratie: Januari 2002
  • Laatst online: 07:34
Kan ik met deze setup ook nog mijn IR ontvanger via LIRC blijven gebruiken of is dat niet mogelijk?

Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

CurlyMo schreef op zondag 26 mei 2013 @ 13:51:
Zojuist de code op git gezet voor een nieuwe receiver voor 433.92Mhz apparaten. [...]
Leuk, bedankt Curly. Ik ga even kijken of ik er wat mee kan. Klopt het trouwens dat je de send executives hebt verwijderd uit je project? andere tree dus.

@Dacuuu: ik gebruik dit product om het signaal van de deurbel om te vormen naar 433mhz.

[ Voor 19% gewijzigd door oZy op 27-05-2013 15:11 ]


Acties:
  • 0 Henk 'm!
Stubby schreef op maandag 27 mei 2013 @ 12:58:
[...]

Kan ik met deze setup ook nog mijn IR ontvanger via LIRC blijven gebruiken of is dat niet mogelijk?
Ja, dat kan. Daarvoor had ik in de XBian kernel een extra compilatie van de module toegevoegd onder een andere naam lirc_rp1. Anders moet je zelf even een tweede module compileren. Simpelweg in de code van lirc_rpi alle namen lirc_rpi vervangen door een andere naam.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • GeeBee
  • Registratie: Maart 2000
  • Laatst online: 26-08 06:43

GeeBee

Oddball

Mijn plaatjes van de aansluiting op een breadboard, gemaakt van een oude 40-aderige hdd kabel.

De kabel met een 26p header, een 10p van een serial port (8 gebruikt) en een oude 2p voor de reset op P6:
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_flatcable.jpg

Connector op P5 onder een hoek zodat de header past.
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_scheve_connector.jpg
Dat was nog een heel karwei omdat de printgaatjes waren dichtgesoldeerd. Dus eerst met een klein boortje 0,8mm doorgeboord en daarna 1 mm (alles handmatig om niets te beschadigen)

De aders om-en-om kort en lang geknipt en op een experimenteerprint gesoldeerd:
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_gesoldeerd.jpg

Het printje afgeslepen met een dremel:
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_afgekort.jpg

De breadboard-zijde:
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_op_het_breadboard.jpg

En tot slot de Pi-zijde:
Afbeeldingslocatie: http://home.planet.nl/~gjborger/tweakers/2013_05_27_gpio_aangesloten.jpg
De reset moet nog mooier gemaakt worden :)
Met een resetknopje op de breadboard kan de Pi nu gereset worden. De Pi zelf kan dan bijvoorbeeld achterop de monitor geplakt worden.

[ Voor 18% gewijzigd door GeeBee op 27-05-2013 23:02 ]

Woof, woof, woof! That's my other dog imitation.


Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
oZy schreef op maandag 27 mei 2013 @ 15:06:
[...]
@Dacuuu: ik gebruik dit product om het signaal van de deurbel om te vormen naar 433mhz.
Gebruik je dan de code van CurlyMo om de GPIO op de raspberry te schakelen? Of hoe gebruik jij het?
Ik heb net de bedrade versie aangesloten.

Als ik nu op de normale voordeur-bel druk. Gaat de bel zoals die altijd deed. + Push message op de telefoon.

Acties:
  • 0 Henk 'm!

  • Natsu
  • Registratie: Juni 2010
  • Laatst online: 07-09 09:32
Dacuuu schreef op zondag 26 mei 2013 @ 16:21:
Ik heb deze case [afbeelding]
En daar passen mijn female kabels gewoon in.
Dankje zal eens kijken of het met die kabels lukt en anders misschien ook zo'n case halen.
Heb er tot nu toe nog weinig spannends mee gedaan, alleen een IR ontvanger (TSOP4838) aangesloten. Maar ik zie hier leuke dingen voorbij komen >:)

Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Dacuuu schreef op dinsdag 28 mei 2013 @ 09:09:
Gebruik je dan de code van CurlyMo om de GPIO op de raspberry te schakelen? Of hoe gebruik jij het?
Ik heb net de bedrade versie aangesloten.

Als ik nu op de normale voordeur-bel druk. Gaat de bel zoals die altijd deed. + Push message op de telefoon.
Ik heb op basis van de originele receive.cpp van CurlyMo een daemon gemaakt die de data op de 433mhz band monitort en triggert op bijv. berichten van mijn draadloze weerstation en deurbel. Notificatie op telefoons doe ik met Prowl (naar 2 iPhones).

Zoals hierboven te lezen is dit niet de ideale / meest stabiele oplossing; zodra ik tijd heb ga ik eens kijken of de lirc variant van Curly hier op aan te passen is.

Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
oZy schreef op dinsdag 28 mei 2013 @ 15:15:
[...]

Ik heb op basis van de originele receive.cpp van CurlyMo een daemon gemaakt die de data op de 433mhz band monitort en triggert op bijv. berichten van mijn draadloze weerstation en deurbel. Notificatie op telefoons doe ik met Prowl (naar 2 iPhones).

Zoals hierboven te lezen is dit niet de ideale / meest stabiele oplossing; zodra ik tijd heb ga ik eens kijken of de lirc variant van Curly hier op aan te passen is.
Bedankt voor de info.

Mijn python scriptje vraagt trouwens erg veel CPU.

Script uit = 0.1 cpu usage (uptime commando)
Afbeeldingslocatie: http://i.imgur.com/kq1jiZG.png
Met script aan = tussen de 0.6 / 0.9
Afbeeldingslocatie: http://i.imgur.com/FvRuqzN.png

Script checkt of de gpio pin high of low is. meer niet, draait in een oneindige loop.

Acties:
  • 0 Henk 'm!

  • alfaleader
  • Registratie: Mei 2009
  • Laatst online: 02-12-2024
Is het niet mogelijk om een interrupt in te stellen voor je gpio poorten? Oftewel een timeout/pause deel toevoegen.

Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
alfaleader schreef op dinsdag 28 mei 2013 @ 20:30:
Is het niet mogelijk om een interrupt in te stellen voor je gpio poorten? Oftewel een timeout/pause deel toevoegen.
Het gaat om de deurbel, die is gekoppeld aan de gpio pin. Als ik er een pauze in maak dan heb je kans dat de gpio pin niet van state veranderd als de pauze bezig is. Of is hier een trucje voor?

Acties:
  • 0 Henk 'm!

  • alfaleader
  • Registratie: Mei 2009
  • Laatst online: 02-12-2024
Interrupts zijn volgens mij de oplossing daarvoor

Acties:
  • 0 Henk 'm!

  • Promy
  • Registratie: Oktober 2002
  • Laatst online: 11-09 23:32
Ik heb voorlopig een meduino (3.3v arduino nano clone) verbonden met m'n raspberry pi.
Stroom trek ik via de usb poort van de pi (verdere connectie: 2 draden i2c en de ground).
Nu wil ik wat extra hardware (paar schakelingen) aan de meduino hangen waardoor de voeding vanuit de pi onvoldoende zal zijn.
Kan ik zomaar een andere voeding aan de meduino gebruiken (en de 2draden voor i2c en de gnd verbonden laten) of krijg ik dan problemen?

Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
CurlyMo schreef op zondag 26 mei 2013 @ 13:51:
Zojuist de code op git gezet voor een nieuwe receiver voor 433.92Mhz apparaten. Deze code moet veel betrouwbaarder zijn en hij gebruikt veel minder resources 10% t.o.v. 25%. Hij werkt aan de hand van /dev/lirc* sockets (en daardoor op een robuuste interrupt basis).
Geweldig!

Betekent dit dat het aansluiten van een attiny85 niet meer nodig is omdat het nu via interrupts werkt op de Pi zelf? Of beveel je nog steeds aan om die attiny er tussen te knopen?

Acties:
  • 0 Henk 'm!
mojo81 schreef op vrijdag 31 mei 2013 @ 10:42:
[...]

Geweldig!

Betekent dit dat het aansluiten van een attiny85 niet meer nodig is omdat het nu via interrupts werkt op de Pi zelf? Of beveel je nog steeds aan om die attiny er tussen te knopen?
Zo'n ATTiny kan ervoor zorgen dat je RPi niet belast wordt met het filteren van de ruis. 10% resources is nog steeds best veel. Normale programma's die werken op interrupt basis gebruiken op de RPi maar zo'n 0.5%. Daarbij is wel mijn doel om zo'n ATTiny overbodig te maken en ik denk dat dit hiermee is gelukt. Daarnaast maak ik nu gebruik van beproefde code van Lirc en daarbij ook hun interrupts. Ik ben nu bezig met de zender.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Dacuuu
  • Registratie: Maart 2009
  • Laatst online: 07:38
De deurbel mod is inmiddels klaar. Nu heb ik dus kabels vanaf de deurbel -> Raspberry Pi. Bestaat er iets om dit draadloos te doen?

Dus Klik aan klik uit, maar dan anders-om zeg maar.


Acties:
  • 0 Henk 'm!
Dit is vrij makkelijk te maken met een ATTiny.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

oZy schreef op maandag 27 mei 2013 @ 15:06:
@Dacuuu: ik gebruik dit product om het signaal van de deurbel om te vormen naar 433mhz.
:?
@Curly: je nieuwe receiver lijkt niet compatible met de 'oude' kaku's. Zie alleen de state:off voorbij komen en niet state:on (net als met de oude software).

[ Voor 32% gewijzigd door oZy op 31-05-2013 12:37 ]


Acties:
  • 0 Henk 'm!
Het voordeel nu is dat het veel makkelijker uit te zoeken is en uit te breiden is. Als ik de zender klaar heb kunnen er naar kijken.

Daarnaast gaf ik aan dat alles wat voorheen werkte ook nu weer ondersteund wordt. Aangezien de oude kaku ook in de oude code niet werkte, werkt het dus nu ook (nog) niet.

[ Voor 39% gewijzigd door CurlyMo op 31-05-2013 12:47 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

over dat uitbreiden; ik wil kijken of ik mijn weerstation er ook in krijg. nu kan ik zelf wel een nieuw protocol aanmaken maar hoe heb je de waardes voor de init gevonden? of hoe bereken je die vanuit de oude receive functie? Ik bedoel dit lijstje:
code:
1
2
3
4
5
6
7
8
9
10
        strcpy(elro.id,"elro");
        elro.header[0] = 300;
        elro.header[1] = 1000;
        elro.crossing = 750;
        elro.footer = 13000;
        elro.multiplier[0] = 0.1;
        elro.multiplier[1] = 0.3;
        elro.rawLength = 50;
        elro.binaryLength = 12;
        elro.repeats = 2;


Met mode2 krijg je een shitload aan data met pulse/space waardes dus daar gaat het niet echt mee :D

Overigens geen probleem hoor dat oude kaku's niet werken. Ik denk dat je voor voor deze niet naar bit 10 moet kijken voor de state maar naar bit 11 (in protocols/elro.c).

[ Voor 21% gewijzigd door oZy op 31-05-2013 14:23 ]


Acties:
  • 0 Henk 'm!
Op dit moment heb ik er geen debug functie in zitten. Ook deze moet ik nog even verwerken. Daarnaast wordt de protocol informatie nog iets anders, dus ik zou nog even wachten met het uitbreiden. In ieder geval leuk dat je zo enthousiast bent :)

Zojuist de zender online gezet in de Lirc branch. Graag hoor ik opnieuw van de Elro gebruikers of alles werkt zoals bedoeld. Kaku schakelaars heb ik hier met succes getest.

En ook geprobeerd oude kaku ondersteuning weer toe te voegen. Nu Impuls nog :)

[ Voor 34% gewijzigd door CurlyMo op 31-05-2013 23:43 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Afgelopen weekend eindelijk de "433MHz Superheterodyne 3400 RF Transmitter and Receiver link kit" uit china binnen gekregen.
Binnen 5min alles aan de praat met de nieuwe lirc code van CurlyMo, direct aan de Pi gekoppeld dus zonder ATTiny.
Nu alleen nog kijken of ik 't bereik van de receiver wat kan vergroten met een antenne en eventueel 5v i.p.v. 3v, dat was nu nog gelimiteerd tot een meter of 2.

[ Voor 7% gewijzigd door gertjuhh op 03-06-2013 09:21 ]


Acties:
  • 0 Henk 'm!
Als het bereik van de receiver te klein is dan heb je vrijwel zeker de verkeerde gekocht. Hij hoort er zo uit te zien: http://www.rhydolabz.com/images/medium/2117_MED.jpg, en niet zo: http://i01.i.aliimg.com/w...5Mhz-font.jpg_250x250.jpg.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Ik heb jouw link naar eBay gebruikt
http://www.ebay.nl/itm/251131859045

Kan het dan nog zijn dat ik hem verkeerd heb aangesloten?
Lijkt me dat die het dan helemaal niet zou doen...
Zal vanavond eens kijken welke pins ik precies gebruikt heb, dat kan ik nu niet zien.

Acties:
  • 0 Henk 'm!
Dat is inderdaad de goede. Raar.

Zojuist een nieuwe versie van de zender online gezet. Nieuw in deze versie is dat nu ook de CLI opties dynamisch op te geven zijn vanuit de protocollen zelf. Zo kan je nu bijv. geen dim waarde meer opgeven als je een schakelaar bedient.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Heb nog even wat meer tests gedaan.
Bereik is wel beter dan ik dacht, maar zeker niet optimaal.

Situatie:
- Raspberry Pi 512MB, gevoed door externe adapter
- Netwerk via UTP
- Pi staat op de begane grond
- Signaal getest met standaard AYCT-102 afstandbediening.

Binnen 2 meter, zelfde ruimte: goed bereik, maar soms vallen er nog signalen weg (~5% loss)
1e verdieping, verschillende ruimtes: meeste signalen komen nog door (~25% loss)
zolder: niets (100% loss), KAKU ontvangers op begane grond werken wel vanaf zolder

Ontvanger:
Afbeeldingslocatie: http://i42.tinypic.com/2j2agp3_th.jpg
Bedrading (van links naar rechts):
GND, GPIO 18, leeg, 3.3V ---- leeg,leeg,leeg,leeg

Afbeeldingslocatie: http://i40.tinypic.com/28km1qx_th.jpg
Ik heb het ook al geprobeerd met de antenne (1e foto uiterst rechts) buiten het breadboard, maar geen verschil

Acties:
  • 0 Henk 'm!
Ben je er bewust van dat de specificaties van de ontvanger 5v is?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Klopt, maar ik dacht gelezen te hebben dat jij hem ook op 3.3v had aangesloten.
Kan deze zonder problemen op 5v aangesloten worden? Of moet er dan nog een extra component tussen de data-pin en de GPIO pin?

Acties:
  • 0 Henk 'm!
Volgens mij moet dat wel lukken...

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Heb hem net op 5v aangesloten, werkt inderdaad gewoon, maar werk weinig verschil.
Op zolder komt er nog steeds geen signaal door.

Hoe ver is het bereik bij anderen die de eBay receiver hebben?
En heeft er iemand toevallig al ervaring met de versie van Ebay EN die van iPrototype? Zijn er verschillen merkbaar?

Acties:
  • 0 Henk 'm!
Ik woon hier in een gelijkvloers appartement dus ik kan je niet verder helpen qua ervaringen.

Zojuist heb ik een kleine debugger online gezet. Deze probeert (vrij snel) de codes uit te vogelen die nodig zijn voor het maken van een eigen protocol. Zouden de mensen met een Elro of oude KaKu deze (meerdere malen) kunnen draaien en de uitvoer daarvan op pastebin kunnen zetten. Dan kan ik kijken of mijn waardes een beetje overeen komen met de werkelijkheid.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
Aangezien jij nergens last van lijkt te hebben, lijkt het probleem toch bij mijn receiver te liggen.
Ik heb ondertussen de receiver van iPrototype besteld, kijken of dat wil helpen.

Acties:
  • 0 Henk 'm!
gertjuhh schreef op dinsdag 04 juni 2013 @ 09:54:
Aangezien jij nergens last van lijkt te hebben, lijkt het probleem toch bij mijn receiver te liggen.
Ik heb ondertussen de receiver van iPrototype besteld, kijken of dat wil helpen.
Dat zei ik niet. Ik woon gelijkvloers, dus kan ik niet bevestigen op het wel of niet hoort te werken vanaf een zolder.

En weer een nieuwe functie toegevoegd. Uiteraard weet ik niet hoe het zit qua weerstations e.d. Uit de README.md:

To control devices that are not yet supported one can use the raw protocol. This protocol allows the sending of raw codes. To figure out what the raw codes of your devices are you can run the debugger first. When you run the debugger it will wait for you to press a button for the device you want to control. Once you held the button long enough, the debugger will print all necessary information in order to create a new protocol, or to control the device using the raw codes.
code:
1
2
3
4
5
6
7
8
9
10
11
12
root@pi:~# ./debug
header[0]:      286
header[1]:      2825
low:            271
high:           1355
footer:         11302
rawLength:      132
binaryLength:   33
Raw code:
286 2825 286 201 289 1337 287 209 283 1351 287 204 289 1339 288 207 288 1341 289 207 281 1343 284 205 292 1346 282 212 283 1348 282 213 279 1352 282 211 281 1349 282 210 283 1347 284 211 288 1348 281 211 285 1353 278 213 280 1351 280 232 282 1356 279 213 285 1351 276 215 285 1348 277 216 278 1359 278 216 279 1353 272 214 283 1358 276 216 276 1351 278 214 284 1357 275 217 276 1353 270 217 277 1353 272 220 277 1351 275 220 272 1356 275 1353 273 224 277 236 282 1355 272 1353 273 233 273 222 268 1358 270 219 277 1361 274 218 280 1358 272 1355 271 243 251 11302
Binary code:
000000000000000000000000010100011

You can now use the raw code to control your device:
code:
1
root@pi:~# ./send -p raw -c "286 2825 286 201 289 1337 287 209 283 1351 287 204 289 1339 288 207 288 1341 289 207 281 1343 284 205 292 1346 282 212 283 1348 282 213 279 1352 282 211 281 1349 282 210 283 1347 284 211 288 1348 281 211 285 1353 278 213 280 1351 280 232 282 1356 279 213 285 1351 276 215 285 1348 277 216 278 1359 278 216 279 1353 272 214 283 1358 276 216 276 1351 278 214 284 1357 275 217 276 1353 270 217 277 1353 272 220 277 1351 275 220 272 1356 275 1353 273 224 277 236 282 1355 272 1353 273 233 273 222 268 1358 270 219 277 1361 274 218 280 1358 272 1355 271 243 251 11302"

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • gertjuhh
  • Registratie: April 2004
  • Laatst online: 26-04 09:14
CurlyMo schreef op dinsdag 04 juni 2013 @ 14:05:
[...]
Dat zei ik niet. Ik woon gelijkvloers, dus kan ik niet bevestigen op het wel of niet hoort te werken vanaf een zolder.
Nee dat weet ik, maar zoals ik al eerder zei, zelfs op dezelfde verdieping binnen 2 meter ondervind ik problemen.
Maar de nieuwe ontvanger is onderweg, dus binnenkort kan ik ze met elkaar vergelijken.

Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Te gek Curly, ga er zo gelijk mee aan de slag! Bedankt!

Debug geeft geen resultaat helaas. Het weerstation stuurt om de 31 seconden een serie van 6 berichten waarvan er 3 de echte data bevatten. Dit is blijkbaar niet lang genoeg om te voldoen aan "lang de knop van je ab ingedrukt houden".

Heb je misschien iets meer info over die parameters?
code:
1
2
3
4
5
6
7
header[0]:      286
header[1]:      2825
low:            271
high:           1355
footer:         11302
rawLength:      132
binaryLength:   33

De laatste 2 spreken voor zich maar de rest.... low/high is denk ik de korste/langste timing in het bericht maar header/footer kan ik niets van maken.

Om een voorbeeld te geven:
code:
1
2
3
4
5
6
7
29;20;54;26;54;27;26;54;53;53;26;52;26;26;53;26;25;26;26;25;26;26;53;54;54;54;26;50;26;20;55;
27;53;23;53;25;52;25;53;25;53;25;26;53;52;51;25;52;26;26;52;25;26;26;26;26;26;26;54;54;54;56;27;54;26;26;55;
28;25;53;27;25;53;26;26;27;26;26;27;26;53;53;54;53;26;53;26;27;56;
29;53;25;52;26;53;25;53;26;52;27;26;55;54;52;26;53;25;26;53;25;26;27;26;27;26;27;54;54;54;52;26;54;25;25;55;
60;25;53;25;25;54;26;27;27;27;27;27;26;53;53;54;53;26;52;26;26;56;
30;53;26;54;25;53;25;52;25;53;26;27;52;54;55;26;53;26;25;53;26;25;26;26;25;27;32;56;55;63;56;28;55;26;26;56;
30;26;53;

Waar regels 2, 4, en 6 de belangrijke data bevatten (36 bit; 2 nibbles met een id, 1 met info, 3 met de temp, 2 met de luchtvochtigheid en 1 met een checksum). in dit geval 15.1 graden, 78% rh. Wat er in die regels ervoor en die laatste staan weet ik niet (hoef ik ook niet te weten). Ik trigger nu gewoon op een 36 bit block en check of de checksum klopt en dan zal het wel van het weerstation zijn ;)

Deze data pik ik nu op met een variant op je oude receive.cpp. met de settiings
code:
1
2
3
4
5
int crossing = 40;
int end = 100;
int marge = 5;
int start = 30;
int speed = 50;

En daarnaast filter ik uit de raw data alle pulses < 10 die tussen iedere bit zitten als een soort ruis.

[ Voor 135% gewijzigd door oZy op 04-06-2013 23:01 ]


Acties:
  • 0 Henk 'm!
Nieuwe functie toegevoegd:

The learner does the same as the debugger but it more extensive. It will try to figure out as much as possible about your protocol. At this moment only switches are supported, so not dimmers or others devices. Just follow the steps of the learner and when you where successfull, it will print the following information (in case of Klik Aan Klik Uit):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
root@pi:~# ./learn
1. Please send and hold one of the OFF buttons. Done.

2. Please send and hold the ON button for the same device
   as for which you send the previous OFF button. Done.

3. Please send and hold (one of the) ALL buttons.
   If you're remote doesn't support turning ON or OFF
   all devices at once, press the same OFF button as in
   the beginning. Done.

4. Please send and hold the ON button with the lowest ID. Done.

5. Please send and hold the ON button with the second to lowest ID. Done.

6. Please send and hold the ON button with the highest ID. Done.

--[RESULTS]--

header[0]:      291
header[1]:      2828
low:            259
high:           1363
footer:         11306
rawLength:      132
binaryLength:   33

on-off bit(s):  27
all bit(s):     26
unit bit(s):    28 29 30 31

Raw code:
276 2833 275 216 285 1356 279 215 282 1356 273 221 276 1352 276 216 282 1356 272 219 275 1353 272 228 266 1365 269 219 279 1360 270 225 269 1361 269 224 269 1359 273 242 280 1358 271 224 313 1343 271 226 274 1365 269 222 274 1366 269 225 272 1362 266 228 267 1366 262 227 265 1362 267 223 274 1363 267 227 268 1364 262 230 264 1366 267 224 274 1371 266 234 263 1362 266 226 275 1366 265 227 274 1364 265 228 264 1365 263 235 262 1384 251 1373 264 239 265 229 262 1367 264 1368 260 257 267 1368 264 232 306 1361 264 230 265 1360 268 230 264 1363 259 235 263 11306
Raw simplified:
On:     010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010000010100000100010001010001
Off:    010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010000010100000100010001010001
All:    010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010001000001000100010001000101
Unit 1: 010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010000010100000100010001010001
Unit 2: 010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010000010100000100010100000101
Unit 3: 010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001000100010001010000010100010001000100010001
Binary code:
On:     000000000000000000000000010100011
Off:    000000000000000000000000010000011
All:    000000000000000000000000011000001
Unit 1: 000000000000000000000000010100011
Unit 2: 000000000000000000000000010100101
Unit 3: 000000000000000000000000010111111

If may be possible that the learner prints out different values as shown here. This may happen in your device is limited in the amount of values it can send. The only variable that isn't recorded, is the ID. Most of the times, the ID is stored in the remaining (sequence) of bits. In case of Klik Aan Klik Uit, the ID is stored
in bits 0 till 25. Also notice that both the debugger and the learner are highly experimental.
oZy schreef op dinsdag 04 juni 2013 @ 15:03:
Heb je misschien iets meer info over die parameters?
code:
1
2
3
4
5
6
7
header[0]:      286
header[1]:      2825
low:            271
high:           1355
footer:         11302
rawLength:      132
binaryLength:   33

De laatste 2 spreken voor zich maar de rest.... low/high is denk ik de korste/langste timing in het bericht maar header/footer kan ik niets van maken.
Van KaKu en Elro is de meest betrouwbare data de footer (1 bit). Dat is de lengte van de leegte die na elk commando wordt verstuurd. Na de eerste footer volgt vrijwel altijd gelijk de header (2 bits). Alles wat tussen de header en de footer ligt, is de data. De high/low zijn inderdaad de twee lengtes van de pulses. Elke puls duurt meestal 4 bits.

Je kunt proberen of je op de eerste plaats de header en de footer kunt vangen. Voeg daarvoor deze regel toe aan de receiver (https://github.com/CurlyM...irc/receive.c#L136-L137):
code:
1
2
3
        data = hw.readdata(0);      
        duration = (data & PULSE_MASK);
        printf("%d\n",duration);

Wacht dan op een commando van je weerstation en kijk of je de hoge waardes kan vangen van > 5000. Deze waarde is dan de footer, de eerste 2 waardes daarna zijn de eerste 2 header waardes.

Met deze drie waardes kan je vervolgens je eigen protocol maken. Als laatste moet je het aantal bits weten om de parseRaw functie te laten activeren van je protocol. In de parseRaw functie kan je dan je eigen logica toe voegen om de rest van de parameters uit te zoeken. Alhoewel, als je de header en de footer weet dan zie je vaak snel genoeg wat de high en de low waardes zijn.

PS. ik heb een nieuwe debugger toegevoegd die is minder kritisch is qua parameters. Misschien vangt deze nieuwe versie wel je weerstation?



Ik kom er zojuist met de nieuwe versie van de codes achter dat ik de lirc_rpi module op 433.92Khz kan laten zenden ipv 38Khz, waardoor het zenden nog veel beter gaat:
code:
1
2
lirc_rpi: SET_SEND_CARRIER
lirc_rpi: in init_timing_params, freq=433920 pulse=294, space=295

De waarden van de pulses/spaces worden dan ook duidelijk. Namelijk een vermenigvuldiging van 295. Nu ik daarmee de procotollen heb voorzien, heb ik geen één keren meer gehad dat mijn schakelaars niet aan of uitgingen. Het uitvinden van de waardes wordt dan ook een stuk makkelijker (in geval van KaKu):
code:
1
2
3
4
5
    kaku_switch.header[0] = 1;
    kaku_switch.header[1] = 10;
    kaku_switch.low = 1;
    kaku_switch.high = 5;
    kaku_switch.footer = 40;



En als laatste de daemon toegevoegd. Nu kan er zowel verzonden, gelogged en ontvangen worden met dezelfde core daemon en dezelfde lirc_rpi kernel module. Zo gaan er geen gpio pinnen verloren. De daemon heeft ook de mogelijkheid om een extern script aan te roepen zodra er een code wordt verzonden of ontvangen. Dit maakt het loggen van data velen malen gemakkelijker. In dit externe script kan je dan de meeste waanzinnige logic toevoegen zoals database koppelen e.d. Alle info kan gevonden worden in de README op mijn git.

Dat is wel zo'n beetje waar ik voor nu met de code wilde zijn. Graag zou ik van mensen van Elro en oude KaKu willen weten of de waardes kloppen.


Laatste stukje informatie voor nu (hoop ik). Vandaag ben ik eens gaan experimenteren met een low-pass filter om toch die ruis te kunnen tackelen. Zonder filter werkt mijn code ook wel, maar dan kan je geen programma draaien zoals XBMC, aangezien hij dan constant bezig met verwerken van de ruis. Ook kan je dan Lirc niet draaien voor je AB, omdat de buffers constant vol worden getrokken. Nu blijkt het met een low-pass filter wel perfect te werken. Ik heb daarvoor een 220 Ohm weerstand en een 100uF elco (220uF kan ook) gebruikt.
Afbeeldingslocatie: https://a248.e.akamai.net/camo.github.com/1925b4f2e57803ff9c938ba0b0a198024508ae1b/687474703a2f2f70726f76696465796f75726f776e2e636f6d2f77702d636f6e74656e742f75706c6f6164732f746563682f43524c6f7750617373312e706e67
Eindelijk zijn we helemaal af van die ATTiny's 8)

Hmm, die waardes die ik nu gebruik lijken alleen te werken voor de zender verbonden met de RPi, en niet voor de AB's van KaKu. Graag hulp bij het uitzoeken van de juiste waardes, want een low-pass filter zou toch echt de oplossing moeten zijn...

[ Voor 17% gewijzigd door CurlyMo op 09-06-2013 13:18 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Nou, ik ben het weekend eindelijk met die ATTiny85 aan de slag gegaan voor de 433mhz module (CurlyMo in "[GPIO] Raspberry Pi"). Maar heb het nog niet werkend. Als ik het goed begrepen heb komt de data pin van de receiver aan pin 1 van de tiny en moet pin 2 naar de GPIO. Hij komt wel in deze methode:

code:
1
2
3
4
5
ISR(PCINT0_vect) 
{  
  //switchDebugLed();
  NewRemoteReceiver::interruptHandler(); 
}


Getest dus met een LED'je op pin 4. Maar hij komt nooit in de volgende code:

code:
1
showCode(NewRemoteCode receivedCode)


Tsja, hoe nu debuggen? Blijkbaar kan die ATTiny niet via Serial naar de Serial Monitor schrijven. Dus hoe zinvol te debuggen vraag ik me af? Want alleen een led aan en uit doen is niet zo'n geweldig instrument nu.

Heb de ATTiny trouwens op 8 mhz intern gefused, dat kan het probleem niet zijn hoop ik?

[ Voor 9% gewijzigd door mojo81 op 10-06-2013 16:24 ]


Acties:
  • 0 Henk 'm!
Als je de code exact zo op de ATTiny geschreven hebt en alles goed aangesloten, dan moet het werken. Hoe heb je de ATTiny geprogrammeerd?

[ Voor 92% gewijzigd door CurlyMo op 10-06-2013 17:03 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Ik gebruik deze: https://www.sparkfun.com/products/11460. En heb jouw code uit deze post er op gezet: CurlyMo in "[GPIO] Raspberry Pi" .

En volgens jouw omschrijving:
In de NewRemoteReceiver.cpp de attachInterrupt + detachInterrupt code verwijderen
Aangesloten als volgt:

(ik heb de pin nummers even aangepast, mijn omschrijving was niet helder)

AtTiny85- pin 6 (digital 1) : Naar receiver uitgang
AtTiny85- pin 7 (digital 2): Naar GPIO

Omdat ik hem tijdens het testen in de programmer laat zitten:

AtTiny85- pin 4 : -
AtTiny85- pin 8 : +5v

[ Voor 8% gewijzigd door mojo81 op 10-06-2013 18:14 ]


Acties:
  • 0 Henk 'm!
Voor de duidelijkheid, je hebt pin 6 en 7 nodig:
Afbeeldingslocatie: http://circuits.datasheetdir.com/18/ATTINY25-pinout.jpg

[ Voor 8% gewijzigd door CurlyMo op 10-06-2013 17:54 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Dankje, mijn omschrijving was niet zo helder. Ik gebruik inderdaad pin 6 (PB1 aan receiver) en 7 ( / PB2 aan GPIO).

Interrupts komen wel aan, maar showCode haalt hij nooit.. dus in die heel erg lange methode NewRemoteReceiver::interruptHandler() gaat er iets mis :(

Acties:
  • 0 Henk 'm!
Heb je KlikAanKlikUit?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Ja. De 'nieuwe' variant van KaKu. Je code werkt dan ook perfect op de RasPi, zolang ik er maar geen AtTiny tussen knoop. Ik vermoed dat ik iets doms over het hoofd zie of zo.. Maar het probleem is dat, voorzover ik weet, de debugging mogelijkheden op die AtTiny niet zo groot zijn en ik dus nog niet verder ben gekomen dan dat er 'iets' mis gaat in die hele lange methode waar de interrupts verwerkt worden.. Zou fijn zijn als ik wat kon debuggen.

Wat ik dus onder andere heb gedaan is op de invoer vanuit de 433Mhz module een ledje hangen, die knippert netjes als er RF data is. Ik heb ook een extra led toegevoegd en deze laten wisselen (aan/uit) bij een interrupt. Ook dat gebeurt. Maar hoe test ik op de uitgang? Dat is 1 lange methode met allerlei RF magie.. en die faalt.. verder ben ik nog niet

[ Voor 4% gewijzigd door mojo81 op 10-06-2013 18:22 ]


Acties:
  • 0 Henk 'm!
Had je al eens een led aan de uitvoer geknoopt?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
CurlyMo schreef op maandag 10 juni 2013 @ 18:23:
Had je al eens een led aan de uitvoer geknoopt?
Ja.. gebeurt nooit iets met die led

Acties:
  • 0 Henk 'm!
Dan weet ik het ook niet :s, misschien dan toch maar meehelpen met het vinden van het probleem met de low-pass filter. Dan heb je die ATTiny niet meer nodig:
Low-pass filter voor 433.92Mhz ontvanger

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Inderdaad,

Ik vermoed dat ik iets heel stoms mis of zo, want je zou verwachten dat het werkt. Hopelijk is dit zo'n gevalletje en zie ik het de volgende keer dat ik tijd heb wel. Maar het is inderdaad misschien beter om eerst eens naar je low pass constructie te kijken.

Als dat allemaal niet lukt dan moet ik misschien toch een wat krachtigere micro controller gaan proberen zodat ik via Serial Monitor zinvolle debug info kan 'uitspugen'.

In ieder geval werk je nieuwe code voor de raspi heel erg goed :) Wederom bedankt voor je hulp.

Acties:
  • 0 Henk 'm!
mojo81 schreef op maandag 10 juni 2013 @ 18:32:
Als dat allemaal niet lukt dan moet ik misschien toch een wat krachtigere micro controller gaan proberen zodat ik via Serial Monitor zinvolle debug info kan 'uitspugen'.
Kijk dan eens hier naar: http://www.banggood.com/buy/arduino-uno.html
In ieder geval werk je nieuwe code voor de raspi heel erg goed :) Wederom bedankt voor je hulp.
Nu nieuwe protocollen nog :)

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • mojo81
  • Registratie: November 2011
  • Laatst online: 25-02 22:56
Thanks!
Nu nieuwe protocollen nog :)
Zodra ik alles op orde heb hoop ik daar aan bij te dragen :)

Acties:
  • 0 Henk 'm!
Voor iedereen die overigens mee wilt denken over de low-pass filter, de juiste waardes zouden moeten zijn 220Ohm en 100nF. Alleen worden met die waardes de interrupts niet meer juist getriggered.

Zijn er trouwens mensen die al eens mijn RamPi OS hebben geprobeerd?
OS die volledig vanuit de RAM gedraaid wordt en daardoor geen corruptie / write-cycle issues heeft

[ Voor 32% gewijzigd door CurlyMo op 10-06-2013 20:08 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!
Vandaag heb ik mijn RS232 --> USB apparaat binnengekregen om mijn slimme meter uit te lezen. Jammer genoeg is dit net zo'n geval waarin de uitvoer geïnverteerd is:
code:
1
2
3
4
5
+_+9=V{                        $46{/
##vkZJV%
#f4rk)V%
#f4vk)V%1l6kF/$vVVvvVVvvV6vVVR)V%1IkF/-9=VkK#/f6VR2vvvvVy{+mvVykZ^%1I[F--H-9=mvV6r6[*-9=Vk;F/+9=+V("=TOY"me\u>$VVe=V{
#4r;vfYvvVfI6V6Vv2f'+9=R{

De chip is zover ik weet ook niet te herprogrammeren. Nu zit ik dus op ebay te kijken naar een andere versie (de huidige werkt wel om de RPi serieel te besturen), maar weet niet goed welke ik moet hebben?

http://www.ebay.com/itm/F...ain_0&hash=item35bdfafff5

Iemand die hier uitsluitsel over kan geven?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Ik gebruik alleen een 74HC14 inverter à $0,99 per 2 incl. shipping tussen de p1 en de uart rx pin van mijn rpi. Werkt perfect.

Nog niet toegekomen aan de nieuwe software / low pass filter. Ga van de week nog wel even prutsen!

Ik heb overigens ook heel even met zo'n usb > serieel ding gewerkt maar vind het onzin om zo'n relatief groot usb ding aan te sluiten voor die simpele data B) als je er perse 1 wil moet je volgens mij opletten dat het een ftdi chip is.

[ Voor 32% gewijzigd door oZy op 12-06-2013 15:51 ]


Acties:
  • 0 Henk 'm!
Ik heb ook zo'n 74HC14 besteld ter aanvulling van de low-pass filter, maar dan voor de Schmitt Trigger functionaliteit. Dat zijn klaarblijkelijk dezelfde dingen :)

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Grappig :) scheelt weer een component aangezien die 6 in/outputs heeft.

Kan ik alvast wat testen anders? Gewoon de inverter tussen de output van de 433 receiver en de gpio pin zetten?

Ik kreeg trouwens een missing file error (libconfig.h) bij het make'n van de laatste lirc versie. Opgelost door
code:
1
sudo apt-get install libconfig-dev



Wat schetst mijn verbazing.. je nieuwe 433-debug code pikt het weerstation feilloos op! Petje af!
code:
1
2
3
4
5
6
7
8
9
10
11
12
--[RESULTS]--

header:         14
pulse:          14
footer:         30
rawLength:      74
binaryLength:   18

Raw code:
590 4130 590 4130 590 2065 590 4130 590 2065 590 4130 590 2065 590 4130 590 2065 590 2065 590 4130 590 2065 590 2065 590 4130 590 2065 590 2065 590 4130 590 2065 590 4130 590 4130 590 2065 590 2065 590 2065 590 2065 590 4130 590 4130 590 4130 590 2065 590 2065 590 4130 590 4130 590 2065 590 2065 590 4130 590 2065 590 4130 590 8850
Binary code:
111100100100101011

[ Voor 121% gewijzigd door oZy op 12-06-2013 16:38 ]


Acties:
  • 0 Henk 'm!

  • JER00N
  • Registratie: Maart 2002
  • Niet online
Mijn P1-meter geeft ook geïnverteerde output, ik heb het met twee weerstanden en een transistor (BC547) gedaan. Deze werkt dan ook meteen als level translator aangezien de output van de slimme meter 5V is.

Let trouwens op dat de instellingen voor die poort op 7E1 moet staan (dus 7 databits en even parity).

[ Voor 20% gewijzigd door JER00N op 12-06-2013 16:38 ]


Acties:
  • 0 Henk 'm!
@JER00N, kan je daar een schema van plaatsen?
oZy schreef op woensdag 12 juni 2013 @ 15:54:
Ik kreeg trouwens een missing file error (libconfig.h) bij het make'n van de laatste lirc versie. Opgelost door
code:
1
sudo apt-get install libconfig-dev
Klopt, dat komt omdat ik bezig met ben een configuratie bestand mogelijkheid. Ik was vergeten die header en nu uit te halen ;)

Qua je debug output. Je spaces hebben een lengte van 590microseconde, dit hoort 295microseconden te zijn. Waarschijnlijk moeten alle waardes even gedeeld worden door 2. Je kunt met deze waardes heel makkelijk een nieuw protocol maken 8)

Kan je kijken of dit met de nieuwe debug code opgelost is?

[ Voor 91% gewijzigd door CurlyMo op 12-06-2013 18:47 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

code:
1
2
3
4
5
6
7
8
9
10
11
12
--[RESULTS]--

header:         14
pulse:          7
footer:         30
rawLength:      74
binaryLength:   18

Raw code:
590 4130 590 4130 590 2065 590 4130 590 2065 590 4130 590 2065 590 4130 590 2065 590 4130 590 2065 590 2065 590 2065 590 2065 590 4130 590 4130 590 4130 590 4130 590 2065 590 4130 590 2065 590 2065 590 2065 590 2065 590 2065 590 4130 590 2065 590 2065 590 2065 590 2065 590 2065 590 4130 590 4130 590 4130 590 4130 590 2065 590 8850
Binary code:
111111111111111111

Ik krijg nu alleen nog maar 36x1 als resultaat. De vorige versie had dus wel het juiste resultaat.

Acties:
  • 0 Henk 'm!
Zie 590 zou toch echt 295 moeten zijn... Toch maar even de wijzigingen ongedaan gemaakt.

[ Voor 37% gewijzigd door CurlyMo op 12-06-2013 21:31 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

ja dat ligt dus aan dat weerstation denk ik. de spaces zijn gewoon enorm lang. Als ik die normalize bij het printen van de raw codes weg haal zijn dit de raw waardes:
code:
1
496 4022 493 4026 494 1944 490 4029 484 1950 494 4023 495 1944 499 4020 497 1953 487 4028 487 1955 488 1950 491 1954 490 4029 483 1958 476 4044 481 4023 490 4025 491 1960 478 4040 485 1950 493 1953 488 1948 490 1957 483 1955 487 1955 488 4028 525 1913 487 1962 479 1954 485 1973 474 4026 488 4029 484 4042 484 4025 490 2075 488 8910

Acties:
  • 0 Henk 'm!
Die spaces zijn voornamelijk van belang voor het verzenden. Dat heeft met zo'n ding toch geen zin, en nu kan je redelijk gemakkelijk de waardes ontvangen. Daar gaat het om.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 22:39

oZy

Hmm ik heb toch niet helemaal op zitten letten. De binarycode die er nu uit komt is 18bit terwijl het 36bit zou moeten zijn. Als je al die 590 (space) en de laatste 8850 (end) er tussen uit haalt hou je 2065=0 en 4130=1 over en totaal dus 36bits: 110101010010010010110000111001100101 en niet 18bit: 111100100100101011

Acties:
  • 0 Henk 'm!
Hoe weet je dat het er 36 zouden moeten zijn? Oftewel, zou je eens kunnen uitleggen hoe jij die 36bit code omzet naar daadwerkelijke waardes?

[ Voor 51% gewijzigd door CurlyMo op 12-06-2013 23:55 ]

Sinds de 2 dagen regel reageer ik hier niet meer

Pagina: 1 ... 7 ... 14 Laatste