Forum: Mikrocontroller und Digitale Elektronik Intertechno Funksteckdosen per AVR steuern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Frank (Gast)


Lesenswert?

Hallo,

da das Intertechno-System ja nun sehr verbreitet ist, habe ich mich für 
dieses System entschieden. Nun möchte ich aber mehrere Funksteckdosen 
nicht nur manuell per Handsender, sondern automatisch per AVR ansteuern.

Hat das schon mal einer gemacht? Wie muss der Handsender an den AVR 
angeschlossen werden? Werden die Tastendrücke simuliert oder geht es 
evtl. auch per I2C? Oder wird der Funkchip auf dem Handsender direkt 
angesprochen? Gibt es dann evtl. auch ein Stück Beispielsoftware?

Viele Fragen, ich weiss...  ;o)

Gruß,
Frank.

von gast (Gast)


Lesenswert?

google:
zweiter eintrag: 
http://thomaskropf.at/index.php?option=com_content&task=view&id=19&Itemid=28

mal wieder einer der zu faul zum selber suchen ist

von Torsten F. (tnetwork)


Lesenswert?

Moin!

kenne die Intertechno's nicht, aber im Prinzip gibt es nur 3 Varianten, 
funksteckdosen per  MC fernzusteuern:

1. Tastensimulation:
Anstatt der tasten/Dip-Schalter von hand zu betätigen, schaltest du 
diese per MC. Hat den Vorteil, dass es auf jeden fall funktioniert, da 
keine riesen änderungen an der orginal Fernbedienung gemacht werden. 
Nachteil: Braucht viele Ports+ zus. beschaltung.

2. Simulation des Codierchips.
in vielen billigen systemen ist der Cip PT2262 bzw baugleich HX2262 
verbaut. Der macht aus den Tasten/Dipschaltern ein serielles Datenpaket 
und schickt es über eine Leitung an das Sendemodul. Das Protokoll ist 
sehr gut im datenblatt beschrieben. Vorteil: nur ein Pin wird benötigt. 
Nachteil: das Datenpaket musst du selbst in Software realisieren.
(wenn du das geschafft hast, gib mir bitte bescheit, ich wollte diese 
variante auch durchführen, hab abe noch keine zeit dafür gehabt)

3. Simulieren der Funksignale.
Bastel eine eigene Fernbedienung. Hat bestimmt vorteile, würde aber 
meinen Horizont bei weitem überschreiten.

Gruß,
Torsten

von Frank (Gast)


Lesenswert?

@gast
Ich dachte im Betreff etwas von "Intertech" geschrieben zu haben. Die 
erwähnte Seite ist aber für "Unitech". Intertech != Unitech.  Ohne 
Worte...

@Torsten
Also ich hatte auch so an Variante 2 gedacht. Leider ist in der 
Fernbedienung nur ein Chip drin, und der ist auch noch unkenntlich 
gemacht. :o(

Naja, vielleicht gibt es ja doch noch jemanden, der das schon mal 
gemacht hat.

Gruß,
Frank

von Roland (Gast)


Lesenswert?

Hallo,

hab ein paar Infos zum Protokoll. Das Pulspaket sollte man etwa 16 mal
senden. Man kann die Pulse wunderbar mit dem Programm Audacity 
analysieren.
Einfach im Sender mit einem Widerstandsteiler anzapfen (100k/10k) und in
den Soundkarteneingang einspeisen. http://audacity.sourceforge.net/

Gruß
Roland

;
; Intertechno Protokoll
;
; 12 Datenbits + 1 Syncbit
;
; 0-Bit    = 1T High + 3T Low + 1T High + 3T Low
; 1-Bit    = 1T High + 3T Low + 3T High + 1T Low
; Sync-Bit = 1T High + 31T Low
;
; 1T etwa 360 Mikrosekunden
;
; 4-Bit Familiencode (LSB...MSB)
; 4-Bit Gerätenummer (LSB...MSB)
; 4-Bit Kommando (LSB...MSB)
;
; 0  =  1H
; 1  =  3L
; 2  =  1H/3H
; 3  =  3L/1L  X 12
; ...
; 48 =   1H
; 49 =  31L
;

Familiencode:

a  0
b  1
c  2
d  3
e  4
f  5
g  6
h  7
i  8
j  9
k  A
l  B
m  C
n  D
o  E
p  F


Gerätenummer:  (Gerät+Gruppe*4)

Gerät:  (x1)

1  0
2  1
3  2
4  3

Gruppe: (x4)
1  0
2  1
3  2
4  3


Command:

Ein  1110 -> 0E
Aus  0110 -> 06

von Frank (Gast)


Lesenswert?

@ Roland

Vielen Dank für die Info.

Wie soll das Pulspaket gesendet werden, mit einem anderen Sender (z.B. 
RFM12)? Oder kann dazu der Handsender benutzt werden? Und wenn ja, 
welche Pins müssen angesteuert werden?

Gruß,
Frank.

von Roland (Gast)


Lesenswert?

Beim Conrad gibt es 433Mhz AM Sender. Die sind geeignet.
Die RFM12 Module senden FM. Geht leider nicht.
Hab schon mal probiert mit sehr hohen FM Hub den Empfänger
anzusteuern. Dachte über die Resonanzkurve des Empfänger eine
AM hinzubekommen. Ein AM Sender geht viel besser.

von Frank (Gast)


Lesenswert?

Ich denke, es wäre am besten, wenn man irgendwie den Handsender 
verwenden könnte. Der sendet ja schon das Richtige raus. Die Frage ist 
nur, wie und wo steuert man den an? Der Aufdruck auf dem Chip ist 
nämlich sorgfältig entfernt wurden. :(

Als letzte Lösung könnte man zwar die Taster simulieren. Aber das 
verbraucht sehr viele I/O's und gefällt mir deshalb nicht. Die I/O's 
würde ich nämlich lieber anders verwenden. ;)

von hottube (Gast)


Lesenswert?

bei dem Intertechno Sender ITS-150 sind ein GWR433A Resonator für 433mhz 
verbaut mit 2 Transistoren vermutlich ein AM oder CW Sender aufgebaut. 
Der Sender wird dauerhaft mit 3V versorgt. Die Aufschrift auf dem 
Tastaturbaustein ist "Arc m3d l2b" vermutlich ein individuell 
programmierter uC. An PIN 1 führt dieser Controller das oben 
beschriebene Protokoll zum Sender. Antennentyp ist eine verkürzte LOOP 
PCB Antenne

von Frank S. (blaueslicht)


Lesenswert?

Hallo zusammen,
mit der Schaltung und dem Bascom Listing von 
http://www.tvdn.eu/index.php?content=wimpuls1.php funktionieren auch 
Intertechno Geräte.
Das Sendemodul habe ich aus einem billigen Baumarkt dreierPack an 
Funksteckdosen. Dieses musste noch ein bissel bearbeitet werden 
(mechanisch) bevor es funktionierte (es ist nicht das gleiche wie auf 
dem Bild...wohl ein neueres Modell). Nach wie vor werden nur 
plus/minus/signal angeschlossen.
Man muss lediglich ein paar Zeilen im Programm ändern/hinzufügen. Dann 
kann man sogar beide Arten (Intertechno und die billigen) direkt mit 
einem Sender steuern.
Bascom Listing versende ich auf Wunsch.

Gruß
Frank

PS: In die Protokollbeschreibung von Roland hat sich ein kleiner Fehler 
eingeschlichen: command EIN ist "0111" nicht "1110"

von Tobias T. (Firma: codes4web) (roverfreak)


Angehängte Dateien:

Lesenswert?

Kann mir jemand verständlich machen wie ich das Funkmodul (welches ich 
aus einer Fernbedienung ausbauen kann ??? ) an meinen Atmega 32 dran 
bekomme?
Genauer gesagt brauche ich den Pin am Funkmodul aus der Fernbedienung 
(ist ja 1-wire?) ..

Ach ja und hat jemand evt. C - Code?

Danke
Lg aus Wien
Tobias

von Dominique G. (dgoersch)


Lesenswert?

Wo hast du denn den Schaltplan her?

von Ein (Gast)


Lesenswert?

Vom blaue Licht sicher nicht, der hat das Licht ausgemacht.

Da geht vom Funkchip ein Signal über einem SMD-Widerstand zum Sender.

Schau dich im Bascom-forum um, da gibt es Info`s.

@Blaues Licht
Wenn mal wieder Spannung da, ist veröffentlichst du mal den Bascom-Code 
hier?

von BlauesLicht (Gast)


Lesenswert?

Hallo zusammen,
habe gerade erst die Posts gelesen. Werde heute Abend oder morgen noch 
den Code posten. Schaltplan stammt von 
http://www.tvdn.eu/index.php?content=wimpuls1.php

vorab:
@ Tobias Toifl:
Pin 17 am HX2262 ist der Data out Pin, von dort geht es auf den 
"Funkkreis". Dieser arbeitet etwa mit 3 Volt. Also mit Vorwiderstand an 
den Atmega hängen.
Plus und minus kannst du vom eigentlichen Batterieanschluss verfolgen. 
Die werden auch zum Funkmodul geführt. Dementsprechend brauchst du DC12V 
an +- und ca 3V auf dem Data pin. (Vorausgesetzt dein Sender arbeitet 
mit einer 12V Batterie, ansonsten die Spannung der verbauten Batterie 
anpassen. Gibt auch Sender mit nur 3V!)

Gruß
Frank

von BlauesLicht (Gast)


Lesenswert?

sodele, hier noch der Code:
(wie gesagt, der originalcode stammt von 
http://www.tvdn.eu/index.php?content=wimpuls1.php, wurde nur etwas 
ergänzt und geändert)
1
$regfile = "m32def.dat"
2
$crystal = 16000000
3
$baud = 9600
4
$swstack = 32
5
6
7
'##########################################
8
Config Timer1 = Timer , Prescale = 256
9
Enable Timer1
10
On Timer1 Isr_von_timer1
11
Enable Interrupts
12
Timer1 = 3036
13
'########### LCD Uhr ###############################
14
Config Lcd = 16 * 2
15
Config Lcdpin = Pin , Db4 = Porta.0 , Db5 = Porta.1 , Db6 = Porta.2 , Db7 = Porta.3 , E = Porta.5 , Rs = Porta.4
16
Cursor Off
17
Cls
18
Deflcdchar 0 , 32 , 32 , 32 , 32 , 32 , 32 , 32 , 32
19
Config Portc.4 = Output
20
Portc.4 = 1
21
Dim Position As Byte
22
Dim Abfrage As Byte
23
Dim Stu2 As Byte
24
Dim Min2 As Byte
25
Dim Sec2 As Byte
26
27
Dim Teil_st As String * 2
28
Dim Teil_min As String * 2
29
Dim Teil_min1 As String * 5
30
Dim Teil_sek As String * 2
31
Dim Stellen As Byte
32
33
Dim D As String * 8
34
35
Dim Zahl As Byte
36
Dim Licht As Byte
37
Licht = 20
38
39
Dim Anzeige As Byte
40
Dim Back As Byte
41
Dim Brot As Integer
42
Dim Brot_display As Integer
43
44
Dim Vor As Byte
45
Dim Xy As Byte
46
Dim Dose As Byte
47
48
49
'##########################################
50
Const Fdelay = 345                                          ' 345 funktioniert
51
Dim I As Byte
52
Dim X As Byte
53
Dim Funk_repeat As Byte
54
Funk_repeat = 3
55
Dim Funkcode_complete As String * 12
56
Dim One_str As String * 1
57
Dim A As Byte
58
Dim B As Byte
59
Dim C As Byte
60
61
62
' billige Schalter
63
Const Dose_ein = "0F"
64
Const Dose_aus = "F0"
65
Dim Systemcode As String * 5
66
Dim Steckdose As String * 5
67
Systemcode = "0FF00"                                        'Wenn auf dem Sender der DIP auf ON ist eine 0 ansosnten ein F
68
Steckdose = "0FFFF"                                         'Wenn der der Pin der Steckdose auf on ist dann eine 0 setzen ansonsten ein F
69
70
'Intertechno
71
Const Inter_ein = "0111"
72
Const Inter_aus = "0110"
73
Dim Familiencode As String * 4
74
Dim Geraetenummer As String * 4
75
Familiencode = "0110"                                       ' eingestellt auf g
76
Geraetenummer = "0000"                                      ' erste steckdose in erster gruppe ist 0 + 0*4 - zweites gerät aus dritter grupper wäre 1 + 2*4 = 9 =  1001
77
78
79
'#########################################
80
81
82
Config Portc.0 = Output
83
Funkpin Alias Portc.0                                       'datapin
84
Funkcode_complete = ""
85
86
'========= Anfang Hauptprogramm ====================================
87
Do
88
If Sec2 <> Zahl Then Gosub Uhr
89
If Zahl = 59 Then
90
                    Portc.4 = 0
91
                    Licht = 80
92
                    Dose = 0
93
                    For Xy = 1 To 16
94
                    Locate 2 , Xy
95
                    Lcd Chr(0)
96
                    Next Xy
97
                    End If
98
99
100
101
102
Abfrage = Inkey()
103
If Abfrage > 0 Then
104
Select Case Abfrage
105
106
107
108
109
      Case 49                                               'Uhr stellen
110
           Portc.4 = 1
111
           Anzeige = 1
112
           Gosub Uhr_stellen
113
114
      Case 52                                               '0 Uhr stellen
115
            Stu2 = 0
116
            Min2 = 0
117
            Zahl = 0
118
            Sec2 = 0
119
120
121
      Case 57
122
           Portc.4 = 1
123
           Licht = Zahl + 20
124
           If Licht > 59 Then Licht = 10
125
126
127
128
' BILLIGE DOSEN NONAME
129
130
      ' wenn Zeichen "A" empfangen über RS232
131
      Case 65
132
        For B = 1 To 8
133
        Steckdose = "F0000"
134
        Funkcode_complete = Systemcode + Steckdose + Dose_ein
135
        Gosub Sendecodes
136
        Next B
137
        Dose = 1
138
           For Xy = 1 To 16
139
           Locate 2 , Xy
140
           Lcd Chr(0)
141
           Next Xy
142
           Locate 2 , 1
143
           Lcd "NN 01 " ; Steckdose ; " an"
144
145
      ' wenn Zeichen "B" empfangen über RS232
146
      Case 66
147
        For B = 1 To 8
148
        Steckdose = "F0000"
149
        Funkcode_complete = Systemcode + Steckdose + Dose_aus
150
        Gosub Sendecodes
151
        Next B
152
        Dose = 1
153
           For Xy = 1 To 16
154
           Locate 2 , Xy
155
           Lcd Chr(0)
156
           Next Xy
157
           Locate 2 , 1
158
           Lcd "NN 01 " ; Steckdose ; " aus"
159
160
161
162
163
' INTERTECHNO GERÄTE
164
165
      ' wenn Zeichen "a" empfangen über RS232
166
      Case 97
167
        For B = 1 To 8
168
        Geraetenummer = "0000"
169
        Funkcode_complete = Familiencode + Geraetenummer + Inter_ein
170
        Gosub Sendecodes_inter
171
        Next B
172
        Dose = 1
173
           For Xy = 1 To 16
174
           Locate 2 , Xy
175
           Lcd Chr(0)
176
           Next Xy
177
           Locate 2 , 1
178
           Lcd "IT 01 " ; Geraetenummer ; " an"
179
180
181
      ' wenn Zeichen "b" empfangen über RS232
182
      Case 98
183
        For B = 1 To 8
184
        Geraetenummer = "0000"
185
        Funkcode_complete = Familiencode + Geraetenummer + Inter_aus
186
        Gosub Sendecodes_inter
187
        Next B
188
        Dose = 1
189
           For Xy = 1 To 16
190
           Locate 2 , Xy
191
           Lcd Chr(0)
192
           Next Xy
193
           Locate 2 , 1
194
           Lcd "IT 01 " ; Geraetenummer ; " aus"
195
196
197
 
198
199
200
End Select
201
End If
202
Loop
203
End
204
'======== Ende HauptProgramm  ========================================
205
206
Isr_von_timer1:
207
Timer1 = 3036
208
Zahl = Zahl + 1
209
Gosub Schrift
210
Return
211
212
'======== Uhr  =======================================================
213
Uhr:
214
Sec2 = Zahl
215
If Sec2 > 59 Then
216
             Sec2 = 0
217
             Zahl = 0
218
             Min2 = Min2 + 1
219
             End If
220
221
If Min2 > 59 Then
222
             Stu2 = Stu2 + 1
223
             Min2 = 0
224
             End If
225
226
If Stu2 > 23 Then
227
             Stu2 = 0
228
             End If
229
230
If Stu2 < 10 Then
231
             Position = 6
232
               Locate 1 , 5
233
               Lcd "0"
234
               Else
235
               Position = 5
236
               End If
237
               Locate 1 , Position
238
               Lcd Stu2
239
               Locate 1 , 7
240
               Lcd ":"
241
If Min2 < 10 Then
242
             Position = 9
243
               Locate 1 , 8
244
               Lcd "0"
245
               Else
246
               Position = 8
247
               End If
248
               Locate 1 , Position
249
               Lcd Min2
250
               Locate 1 , 10
251
               Lcd ":"
252
If Sec2 < 10 Then
253
             Position = 12
254
               Locate 1 , 11
255
               Lcd "0"
256
               Else
257
               Position = 11
258
               End If
259
               Locate 1 , Position
260
               Lcd Sec2
261
Return
262
263
'======== Uhr stellen =================================================
264
Uhr_stellen:
265
266
267
Locate 2 , 3
268
Lcd "Uhr stellen"
269
270
Input D
271
272
Teil_st = Left(d , 2)
273
274
Teil_min1 = Left(d , 5)
275
Teil_min = Right(teil_min1 , 2)
276
277
Teil_sek = Right(d , 2)
278
279
280
281
Stu2 = Val(teil_st)
282
Min2 = Val(teil_min)
283
Zahl = Val(teil_sek)
284
Stellen = Val(teil_sek)
285
286
If Stellen = 0 Then
287
                Goto Uhr_stellen
288
                Else
289
                Cls
290
                Stellen = 0
291
                Anzeige = 0
292
                Return
293
                End If
294
295
296
297
Return
298
299
'======== laufschrift =================================================
300
Schrift:
301
302
If Anzeige = 1 Then Return
303
If Back = 1 Then Return
304
If Dose = 1 Then Return
305
306
If Vor = 1 Then
307
           Locate 2 , 1
308
           Lcd "***** GUDE *****"
309
           Vor = 0
310
           Else
311
           For Xy = 1 To 5
312
           Locate 2 , Xy
313
           Lcd Chr(0)
314
           Next Xy
315
           For Xy = 12 To 16
316
           Locate 2 , Xy
317
           Lcd Chr(0)
318
           Next Xy
319
           Vor = 1
320
           End If
321
Return
322
323
324
325
'======== Fernbedienung billige =================================================
326
Sendecodes:
327
 For I = 1 To Funk_repeat
328
  For X = 1 To 12
329
      'Toggle Portd.6
330
      One_str = Mid(funkcode_complete , X , 1)
331
      Select Case One_str
332
        Case "0"
333
           Gosub Sende_null
334
        Case "F"
335
           Gosub Sende_float
336
        Case "1"
337
           Gosub Sende_eins
338
      End Select
339
  Next X
340
  Gosub Sende_sync
341
 Next I
342
 Return
343
344
345
Sende_null:
346
  Funkpin = 1
347
  Waitus Fdelay
348
  Funkpin = 0
349
  Waitus Fdelay
350
  'Funkpin = 0
351
  Waitus Fdelay
352
  'Funkpin = 0
353
  Waitus Fdelay
354
  ' die nächsten 4 tasks
355
  Funkpin = 1
356
  Waitus Fdelay
357
  Funkpin = 0
358
  Waitus Fdelay
359
  'Funkpin = 0
360
  Waitus Fdelay
361
  'Funkpin = 0
362
  Waitus Fdelay
363
Return
364
365
366
Sende_sync:
367
  'laenge gesamt (1Takt high, 31 Takte low) 32 Takte
368
  Funkpin = 1
369
  Waitus Fdelay
370
  Funkpin = 0
371
  Waitus Fdelay
372
  Waitus Fdelay
373
  Waitus Fdelay
374
  Waitus Fdelay
375
  Waitus Fdelay
376
  Waitus Fdelay
377
  Waitus Fdelay
378
  Waitus Fdelay
379
  Waitus Fdelay
380
  Waitus Fdelay
381
  Waitus Fdelay
382
  Waitus Fdelay
383
  Waitus Fdelay
384
  Waitus Fdelay
385
  Waitus Fdelay
386
  Waitus Fdelay
387
  Waitus Fdelay
388
  Waitus Fdelay
389
  Waitus Fdelay
390
  Waitus Fdelay
391
  Waitus Fdelay
392
  Waitus Fdelay
393
  Waitus Fdelay
394
  Waitus Fdelay
395
  Waitus Fdelay
396
  Waitus Fdelay
397
  Waitus Fdelay
398
  Waitus Fdelay
399
  Waitus Fdelay
400
  Waitus Fdelay
401
  Waitus Fdelay
402
Return
403
404
Sende_eins:
405
  Funkpin = 1
406
  Waitus Fdelay
407
  Funkpin = 1
408
  Waitus Fdelay
409
  Funkpin = 1
410
  Waitus Fdelay
411
  Funkpin = 0
412
  Waitus Fdelay
413
  ' die nächsten 4 tasks
414
  Funkpin = 1
415
  Waitus Fdelay
416
  Funkpin = 1
417
  Waitus Fdelay
418
  Funkpin = 1
419
  Waitus Fdelay
420
  Funkpin = 0
421
  Waitus Fdelay
422
Return
423
424
425
426
'======== Fernbedienung Intertechno =================================================
427
Sendecodes_inter:
428
429
 For I = 1 To Funk_repeat
430
  For X = 1 To 12
431
      One_str = Mid(funkcode_complete , X , 1)
432
      Select Case One_str
433
        Case "0"
434
           Gosub Sende_null_inter
435
        Case "1"
436
           Gosub Sende_eins_inter
437
      End Select
438
  Next X
439
  Gosub Sende_sync_inter
440
 Next I
441
 Return
442
443
444
Sende_null_inter:
445
  Funkpin = 1
446
  Waitus Fdelay
447
  Funkpin = 0
448
  Waitus Fdelay
449
  'Funkpin = 0
450
  Waitus Fdelay
451
  'Funkpin = 0
452
  Waitus Fdelay
453
  ' die nächsten 4 tasks
454
  Funkpin = 1
455
  Waitus Fdelay
456
  Funkpin = 0
457
  Waitus Fdelay
458
  'Funkpin = 0
459
  Waitus Fdelay
460
  'Funkpin = 0
461
  Waitus Fdelay
462
Return
463
464
Sende_eins_inter:
465
  Funkpin = 1
466
  Waitus Fdelay
467
  Funkpin = 0
468
  Waitus Fdelay
469
  Funkpin = 0
470
  Waitus Fdelay
471
  Funkpin = 0
472
  Waitus Fdelay
473
  ' die nächsten 4 tasks
474
  Funkpin = 1
475
  Waitus Fdelay
476
  Funkpin = 1
477
  Waitus Fdelay
478
  Funkpin = 1
479
  Waitus Fdelay
480
  Funkpin = 0
481
  Waitus Fdelay
482
Return
483
484
Sende_sync_inter:
485
  'laenge gesamt 32 Takte
486
  Funkpin = 1
487
  Waitus Fdelay
488
  Funkpin = 0
489
  Waitus Fdelay
490
  Waitus Fdelay
491
  Waitus Fdelay
492
  Waitus Fdelay
493
  Waitus Fdelay
494
  Waitus Fdelay
495
  Waitus Fdelay
496
  Waitus Fdelay
497
  Waitus Fdelay
498
  Waitus Fdelay
499
  Waitus Fdelay
500
  Waitus Fdelay
501
  Waitus Fdelay
502
  Waitus Fdelay
503
  Waitus Fdelay
504
  Waitus Fdelay
505
  Waitus Fdelay
506
  Waitus Fdelay
507
  Waitus Fdelay
508
  Waitus Fdelay
509
  Waitus Fdelay
510
  Waitus Fdelay
511
  Waitus Fdelay
512
  Waitus Fdelay
513
  Waitus Fdelay
514
  Waitus Fdelay
515
  Waitus Fdelay
516
  Waitus Fdelay
517
  Waitus Fdelay
518
  Waitus Fdelay
519
  Waitus Fdelay
520
Return
521
522
523
Return

von Ein dankbarer (Gast)


Lesenswert?

Prima, DANKE !!

von Matthias (Gast)


Angehängte Dateien:

Lesenswert?

Hallo!

bin ziemlich neu auf dem Gebiet AVR, möchte mich aber trotzdem ran wagen 
so eine Fernbedienung nachzubauen.
Zwei Fragen hätte ich da:

Erstens: kann es sein, dass in dem Code das Sub "sende_float" fehlt?
Zweitens: Ich würde mit der Schaltung gerne noch ein Funkdimmset von 
Pollin ansteuern. Dazu hab ich die Originalfernbedienung per 
Spannungsteiler an die Soundkarte angeschlossen und mit 
Soundcard-Oszilloskop aufgezeichnet (Anhang).
Irgendwie steh ich auf dem Schlauch; wie komm ich denn bei dem Zickzack 
darauf wann genau das Signal 0 ist und wie lange, und wann 1?

wäre sehr dankbar für Unterstützung.

Grüße

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Die Wellenlinien kannste vergessen. Du brauchst eine höhere Bandbreite 
für Dein Oszilloskop.

von BlauesLicht (Gast)


Lesenswert?

sende_float fehlt in der tat :)
Habe wohl in der Eile den falschen unbenötigten Teil rausgelöscht. 
sende_eins (kann weg) kommt nämlich nicht vor, nur 0 oder F

hier noch der Sende_float:
1
Sende_float:
2
  Funkpin = 1
3
  Waitus Fdelay
4
  Funkpin = 0
5
  Waitus Fdelay
6
  'Funkpin = 0
7
  Waitus Fdelay
8
  'Funkpin = 0
9
  Waitus Fdelay
10
  ' die nächsten 4 tasks
11
  Funkpin = 1
12
  Waitus Fdelay
13
  'Funkpin = 1
14
  Waitus Fdelay
15
  'Funkpin = 1
16
  Waitus Fdelay
17
  Funkpin = 0
18
  Waitus Fdelay
19
Return

Nimm am besten http://audacity.sourceforge.net für die Aufzeichnung am 
PC.
Betrachte dann die Signalfolge etwas länger. Das was du in den 
Screenshots zeigst, ist nur ein sehr kleiner Auschnitt der gesamten 
Signalfolge.
Ein spitzes dreieck sollte die Länge eines einzigen Pulses sein. Stell 
den Zoom in Audacity dann etwas höher und markiere genau das Dreieck. 
Unten kannst du dann die exakte länge in ms ablesen.

von JoachimB (Gast)


Lesenswert?

Hier findest Du weiteres zum Code und zum Oszillogramm:

http://avr.börke.de/Funksteckdosen.htm
http://avr.börke.de/ARCTECHsteckdosen.htm

Gruß
Joachim

von Matthias (Gast)


Lesenswert?

Super!
Mit Audacity bekomm ich ein anständig auswertbares Signal.
Eigentlich komisch, dachte ein Programm das sich "Soundcard 
Oszillograph" nennt sollte besser dafür geeignet sein als ein normales 
Audio-Programm...
naja, man lernt nie aus.
Danke

von Markus (Gast)


Lesenswert?

Hallo Leute,

versuche mich auch gerade mit dem AVR und den Intertechno-Dosen.
Habe mit dazu bei Conrad den TX-SAW-MID 5V Sender geholt und eben ein 
kleines Programm in C geschrieben, welches oben gepostetes Protokoll 
nutzt.
Als Antenne nutze ich einen einfachen 16,5cm langen Draht.

Mein Problem ist nun folgendes:
Stelle ich meine Dose auf den Familiencode "J" funktioniert das Ein- und 
Ausschalten einwandfrei. Bei beispielweise den Familiencodes (H,I,K) 
funktioniert keines von beidem. Dabei habe ich im Code ebenfalls nur den 
Familiencode gegenüber zu "J" geändert.
Kann mir einer sagen, wo mein Problem liegt?

Danke und Grüße
Markus

von Felix (Gast)


Lesenswert?

Hallo,

wir versuchen auch gerade Intertechno Steckdosen anzusteuern. Das 
Protokoll von oben konnten wir auch soweit nachmessen.

Nur verstehen wir überhaupt nicht was dieser Teil heißen soll:

; 0  =  1H
; 1  =  3L
; 2  =  1H/3H
; 3  =  3L/1L  X 12
; ...
; 48 =   1H
; 49 =  31L

Kan uns hier bitte jemand weiterhelfen?

Danke
Felix

von W.Fackler (Gast)


Lesenswert?

Das Datenblatt zum PT2262 beschreibt das Timing der Sendeimpulse genau.
Typisch hat der kurze Puls 320uS, die lange Pulsdauer ist 3* kurzer 
Puls, d.h. ca. 960us
Ich habe das ganze mit 68HC11 und 6802 in Assembler realisiert
WAF

von Stefan A. (estoban1000)


Angehängte Dateien:

Lesenswert?

Hallo,

habe mich letztes Jahr mit Intertechno beschäftigt.
Den SAW habe ich aus einer Fernbedinung vom Pollin (gab es mal einzeln 
zu den weißen Steckdosen).
Im Zip ist die Beschreibung des Code für Intertechno, ein kleines 
Testprogramm und ein Schaltplan (PDF aus KiCad).
Der Code ist leider schlecht dokumentiert.
Man braucht nur die intertechno_init und die intertechno_send.
intertechno_send sendet den in der Beschreibung dokumentierten 
Bit-Stream. Der Rest ist nur Ein- und Ausgabe am UART.

Der Schaltplan war ein erster Entwurf zeigt aber die Beschaltung des 
SAW.
Auf meinem Testboard lief die Schaltung (ohne RMF12) ohne Probleme.

Vielleicht hilft es ja weiter.

Gruß
Stefan

von Micha (Gast)


Lesenswert?

Hallo Zusammen,

irgendwie blicke ich nicht durch....
Soweit ich das verstehe, steht in der Protokollbeschreibung oben und im 
Programmcode für das
0-Bit    = 1T High + 3T Low + 1T High + 3T Low
und für das
1-Bit    = 1T High + 3T Low + 3T High + 1T Low.

Im letzten Post mit der angehangenen avr.zip steht aber für
0-Bit   1T H + 3T L + 1T H + 3T L (also identisch mit "oben").
Für das 1-Bit steht in der avr.zip aber
3T H + 1T L + 1T H + 3T L.

Die Timings sind ja in etwa gleich.

Was stimmt denn nun?
Hat irgendwer eigentlich sowas mit Intertechnos fertig gebaut?

Ich versuch mich da gerade dran, allerdings mit so einem einfachen 
Arduino-Ding&EtherShield. Ist für mich als Anfänger irgendwie 
verständlicher..
Erst wollte ich das ganze mit Optokopplern einfach an eine bestehende IT 
Fernbedienung löten - aber die Lösung mit selbst erstelltem Datenpaket 
über so ein Saw-Modul ist einfach viel schicker (und etwas sportlicher).

Viele Grüße und Danke für alle Antworten :)

Micha

von Stefan Andres (Gast)


Lesenswert?

Es tut wie im c-programm intertechno steht. Also auch wie es in der pdf 
beschrieben ist.
Auf jeden Fall läuft es bei mir so.
Das mit den 0 & 1 ist etwas schwierig.
Es kommt drauf an wo man anfängt zu zählen.
Ich habe das sync-bit am Ende. Wenn es am Angang steht schiebt sich H/L.

Gruß
Stefan

von JoachimB (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Micha,

das Problem besteht darin, dass es drei Zustände gibt, die übertragen 
werden. Der Begriff "BIT" steht jedoch für zwei Zustände und ist deshalb 
zur Beschreibung schlecht geeignet.

Dein "0-Bit" entspricht dem Coder-Eingang VSS oder GND.
Dein "1-Bit" entspricht dem Coder-Eingang Float (nichts angeschlossen).
Die Kombination 3T H + 1T L + 3T H + 1T L enspricht dem Coder-Eingang 
VCC oder +UB.

Hier kannst Du das ausführlicher nachlesen:
http://avr.börke.de/Funksteckdosen.htm

Gruß
Joachim

von Stefan MZ (Gast)


Angehängte Dateien:

Lesenswert?

Hi zusammen,

hier mal die Anschlussbelegung für die Intertechno PAR-1000 
Fernbedienung
im Anhang.
Die Fernbedienung hat original 3 Volt funktioniert aber auch wenn ich 
den Controller IO-Pin direkt ohne Spannungsteiler dran löte.
Original ist die Fernbedienung zwar nur für die Familienkanäle A bis D 
ausgelegt aber über der Controller direkt angesteuert sind dann 
natürlich alle anderen Kanäle auch verfügbar.

Dann noch mal vielen Dank an alle hier ohne die ich nicht soweit 
gekommen wäre mit meinen Funksteckdose.

Frohe Ostern noch

Gruß Stefan

von thomas (Gast)


Lesenswert?

hallo, stefan gibt es da eigendlich eine möglichkeit die fernbedinung 
Par 1000 von intertechno über LPT port zu steuern ich brauche ja im 
prinzip nuzr die masse und der rest ist ja pluspol an den knöpfen von 
der fernbedinung am besten währe es ein anschlussplan von der 
fernbedinung mit beschrieftung wenn es sowas gäbe

mfg Thomas

von Stefan MZ (Gast)


Lesenswert?

Hi Thomas,
ich denke schon das es von der Hardwarseite aus direkt über den LPT-Port 
funktioniert, evtl würde ich dann noch einen Transistor als Treiber 
davorschalten. Von der Software habe ich dann allerdings keine Ahnung.
Paralell Port Programierung ist unter Windows wohl auch nicht ganz so 
einfach, zumindest für mich.

Gruß Stefan

von Thomas (Gast)


Lesenswert?

hallo stefan,
erstmal danke für deine Antwort, hättest du eventuel einen schlatplan 
für diese schaltung mit transistor ich habe noch darlington transistoren 
die müssten da ja reichen denke ich mal oder? und wegen der software 
seite her naja das ist eigendlich ganz einfach mache das alles über xp 
ich mache meine programme auf mein anderen lappi unter windows7 mit 
profilab expert 4.0 und dann wirds als eigenständiges programm an mein 
alten lappi geschickt das klappt einwandfrei kann da alles mögliche 
machen timer usw...

mfg Thomas

von Stefan MZ (Gast)


Lesenswert?

Hallo Thomas
Ich habe hier mal eine Seite gefunden 
http://www.franksteinberg.de/erel.htm wo ein Relais angesteuert wird, 
diese Ansteuerung sollte auch für die Fernbedienung ausreichen. In 
diesem Fall wird allerdings die Masse geschaltet und nicht Plus, ich 
denke aber trotzdem das es funktioniert.

Gruß Stefan

von Daniel (Gast)


Lesenswert?

Das Protokoll der Intertechno ITR-1500er Serien ist übrigens identisch 
mit dem HomeEasy(GB) Protokoll. Vermutlich ist das auch der Grund 
weshalb HomeEasy die EU Version rausgebracht hat mit dem derzeit noch 
unbekannten Protokoll (Oder kennt jemand den genauen Aufbau?!?, ich bin 
leider nicht weit gekommen mit meinen Messungen, kann das Signal also 
nur "kopieren")

Hab das eben mal mit dem Oszi und einer ITT-1500 gechecked.

von Philip P. (nerb)


Lesenswert?

mehr Infos zu HomeEasy und deren Ähnlichkeiten:
Beitrag "Re: 433MHz Codes - Dekoder -"

von Blade (Gast)


Lesenswert?

Hi!

Vielen DANK an alle die Infos sharen!!!!

Ich hab alle posts gelesen und brauche hilfe (google is not my friend :( 
)

- Ich habe das billig-flamingo set mit PT2262 bzw baugleich HX2262
- möchte ihn mit einem at90usb162 (Minimus: http://minimususb.com/) 
ansprechen.

Ich komm mit avr an den bas code.
PORTC0 vom mega16 entspricht PC0 vom at90usb.
Strom könnte ich über die 12v bat laufen lassen
(geht bestimmt auch über GND & +5v von at90usb)

ABER

Wie kann ich das bas umschreiben, sodass ich die signale über usb geben 
kann?

Mein End(traum)ziel ist es den minimus+funksender(via kabel an 
fernbedienung) am usb-port der fritzbox anzuschließen und via freetz + 
Webserver das ganze ansteuerbar zu machen.

Ausreichend wäre zunächst lediglich vom PC via USB die dosen zu steuern.

Wenn mir einer helfen könnte oder gar schon eine fertige hex dafür hat, 
wäre das sooooooooo geil

Vielen Dank im vorraus

von MikeElectric (Gast)


Lesenswert?

Hallo Leute!
Vermutlich ist es ein ganz bescheuerter Denkfehler von mir aber ich bin
mit meinem Latein am Ende :(

Ich hab mir 3 Funksteckdosen, samt Fernbedinung gekauft, um sie an
meinem Webserver zu betreiben.
Die Fernbedienung möchte ich mit 4 3 Relais schalten (die Relais haben 2
Wechsler). Die Taster sind als Silikontaster ausgefüht und ich schalte
sie über einen 220 Ohm Widerstand. Für alle 3 Taster gibt es 2 Pins am
Mikrocontroler der Fernbedienung (PIN 3 und PIN 2). PIN2 geschalten mit
dem 220Ohm Widerstands des Taster schaltet die Steckdose ein. PIN3
umgekehrt.
Hänge ich die Leitung mit dem 220Ohm R an den Mittelpunkt des Relais und
die PIN2 u. 3 Leitung an die Kontakte des Wechslers passiert gar nichts
wenn ich das Relais zusammen hänge. Wenn ich händisch, abwechselnd, die
Kabeln miteinander berühre funkt. es problemlos. Darauf hin hab ich den
Durchgang zwischen PIN 2 u. 3 geprüft und siehe da ein Durchgang.
Deshalb macht mich das stutzig, den es wofür brauche ich dann 2
Leitungen`?


Hat jemand vielleicht einen Tipp für mich?
Ich möchte das Ganze gerne mit den auf der Platine vorhandenen Relais
schalten und nicht mit einem Controller über IIC z.B.


mfG Mike

von Alexander S. (esko) Benutzerseite


Lesenswert?

MikeElectric schrieb:
> Ich hab mir 3 Funksteckdosen, samt Fernbedinung gekauft,

Sind das Intertechno Funksteckdosen? Falls nein mache einen neuen 
Diskussionsfaden mit Schaltplan auf. Falls ja, poste hier einen 
Schaltplan.

von Thomas A. (deh0511)


Angehängte Dateien:

Lesenswert?

es gibt von einen anderen Hersteller ein Verwandten zum 2272 den 
cs5212jgo aus dem hause Sernic der wird / wurde bei ME FL 100 
Funksteckdosen verbaut und lässt sich nach richtiger Kodierung mit dem 
Sender von ELRO und co ansteuern

Der Sender zum ME Set ist der 2262

Frohes-fest

von Thomas A. (deh0511)


Angehängte Dateien:

Lesenswert?

hier das Datenblatt zum Sernic cs5212jgo

von JoachimS (Gast)


Lesenswert?

Hallo Stefan MZ,

ich danke Dir für die Doku zu dem Intertechno-Sender. Eine Frage
habe ich aber noch. Gehe ich richtig in der Annahme, dass Du den IO
Pin vom Arduino/AVR mit 5V direkt auf die angelötete Leitung des 
Funksenders gibst und dass der Funksender keine eigene Versorgung mehr 
erhält.

D.h. ja dann, dass der IO Pin den 433 MHz Sender komplett mit Strom 
versorgt und das IC des Funksenders ohne Funktion bleibt.

Das würde ich gerne jetzt mit einem ITS-150 umsetzen (ich habe 
festgestellt, dass dessen Schaltung sehr ähnlich zu der von Dir 
abgebildeten ist).

Vielen Dank für eine kurze Antwort von Dir :-)

Danke
Joachim

PS: Geniales Forum!

von Joachim S. (joachimse)


Lesenswert?

So, jetzt konnte ich es nicht lassen und habe es einfach gemacht 
(nachdem ich gesehen habe, dass der AVR im Bild auch einen 7805 drauf 
hatte). Es funktioniert spitze mit der RCSwitch lib von Arduino.

Echtes Plug and Play :-)

Genial
Joachim

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Roland schrieb:

> Beim Conrad gibt es 433Mhz AM Sender. Die sind geeignet.
> Die RFM12 Module senden FM. Geht leider nicht.

Doch, natürlich geht das mit den RFM12.

> Hab schon mal probiert mit sehr hohen FM Hub den Empfänger
> anzusteuern.

Ziemlich unsinniger Ansatz. Richtig wäre: FM-M=F.

Also: Normale Frequenzmodulation schlicht dadurch unwirksam machen, daß 
einfach nur konstant 0-Bits (oder auch 1-Bits) gesendet werden. Damit 
wird statt FM nur ein konstanter Träger mit der gewählten Mittenfrequenz 
plus oder minus gewähltem FM-Hub gesendet. 0- oder 1-Bits entscheidet 
darüber, ob plus oder minus zutrifft.

Die AM-Modulation kann man dann auf verschiedene Arten erreichen. 
Entweder man tastet direkt den RF-Sender über das Power-Management, 
geeignet für 100% AM-Hub oder man benutzt die umschaltbaren 
Sendeleistungen über die TX-Konfiguration, geeignet für AM-Hübe zwischen 
ca. 25% und 85%.

Mehr oder weniger "fertigen" Code für die RFM12-Anwendung als AM-Sender 
für Funksteckdosen gibt's z.B. im Ethersex-Projekt.

Übrigens kann man mit dem RFM12 auch AM empfangen. RSSI auswerten. Wenn 
man allerdings versucht, damit herauszufinden, auf welcher Frequenz die 
Funksteckdosen-FBs eigentlich senden, erkennt man sehr schnell, daß das 
garnicht so einfach ist, weil die Dinger gar fürchterlich in den Äther 
brüllen.

Nunja, umso einfacher ist es wenigstens, ihr Nutzsignal abzugreifen und 
aufzuzeichnen, es spielt dafür fast keine Rolle, auf welche Frequenz man 
den RFM12 tuned (Bandmitte +-50% der gesamten Breite des Bandes ist 
genau genug), ja es spielt noch nichtmal eine nennenswerte Rolle, ob 
überhaupt eine Antenne dran ist.

Ich wünschte, die Dinger würden nicht so rumbrüllen. Dann könnte 
sinnvoller Datenverkehr im 2.4GHz-Band sehr viel zuverlässiger und 
schneller sein...

von Mc B. (mc_b)


Lesenswert?

Hallo,
Eine Möglichkeit die Intertechno Funksteckdosen über deren hauseigenes 
Gateway ITW-xxx mit einem netzwerksignal über irgendeine 
Schnittstelle,Prog. Sprache anzusprechen?suche seit tagen....

Habe nun einige Sachen hier gelesen und stelle noch eine weitere Frage:

Ich habe eine easybox 803 als wlanrouter der hat 3 USB Anschlüsse;ginge 
es evtl dort einen stick anzuklemmen mit nem MC der intertechno Signale 
sendet,per LAN an deren Gateway oder selber mit RF transmitter?

Ziel ist einfaches an/aus schalten per Smartphone im WLAN mit NFC als 
Auslöser,kein Raspberry oder allround Gateway.eher dann den stick 
bauen...


Danke

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.