SIGNALDuino Empfänger Firm- und Hardware

Begonnen von Ralf9, 02 Oktober 2016, 22:59:51

Vorheriges Thema - Nächstes Thema

HomeAuto_User

Bisher kein Erfolg.

Hier der Orginalauszug der Dateien nach dem runter laden der Sourcen:

#ifdef CMP_CC1101
  #define PIN_LED               9
  #define PIN_SEND              3   // gdo0Pin TX out
#else
  #define PIN_LED               13    // Message-LED
  #define PIN_SEND              11

#endif
#define PIN_RECEIVE            2

   #define csPin   10   // CSN  out
   #define mosiPin 11   // MOSI out
   #define misoPin 12   // MISO in
   #define sckPin  13   // SCLK out

---------------------------------------------------------
Die gänginge Variante mit einer anderen FW wo ich auch ccconf abfragen kann und somit ich ausgehe, das der CC1101 funkioniert.

#  define CC1100_CS_DDR         DDRB
#  define CC1100_CS_PORT        PORTB
#  define CC1100_CS_PIN         4
#  define CC1100_OUT_DDR        DDRB
#  define CC1100_OUT_PORT       PORTB
#  define CC1100_OUT_PIN        5
#  define CC1100_OUT_IN         PINB
#  define CC1100_IN_DDR         DDRE
#  define CC1100_IN_PORT        PINE
#  define CC1100_IN_PIN         6
#  define CC1100_IN_IN          PINE
#  define CC1100_INT         INT6
#  define CC1100_INTVECT        INT6_vect
#  define CC1100_ISC         ISC60
#  define CC1100_EICR           EICRB
#  define LED_DDR               DDRB
#  define LED_PORT              PORTB
#  define LED_PIN               0

#define MARK433_PORT            PORTD
#define MARK433_PIN             PIND
#define MARK433_BIT             4
#define MARK915_PORT            DDRB
#define MARK915_PIN             PORTB
#define MARK915_BIT             7

Laut Dokumentation Seite 6 sind die PIN´s / 14 15 16 7 8 9 4
Alles bisher ohne Erfolge. Der CC1101 spricht nicht mit uns.
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

Sidey

Du musst die Quelldateien anpassen, damit die richtigen Pins verwenden werden.
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

HomeAuto_User

Zitat von: Sidey am 29 Januar 2017, 18:56:46
Du musst die Quelldateien anpassen, damit die richtigen Pins verwenden werden.
Entschuldigung der Frage, welche?
Anpassungen werden in der
RF_Receiver.ino | cc1101.h
vorgenommen oder eine Boardverwaltungsdatei?
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

pejonp

LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

Sidey

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

HomeAuto_User

Zitat von: pejonp am 29 Januar 2017, 19:50:55
Hi,

Siehe ab Post 170 https://forum.fhem.de/index.php/topic,58396.msg571624.html#msg571624

Pejonp

Hallo, was denkt ihr was ich mache bzw. probiere  ;D :o

Erkenntnis und Ergebnis:
TEST1
#ifdef CMP_CC1101
#define PIN_LED               2     // ???
#define PIN_SEND              9     // GDO0 Pin TX out
#else
#define PIN_LED               13    // Message-LED
#define PIN_SEND              11    // GDO2 ???

#endif
#define PIN_RECEIVE           7     // 433 or 912Mhz

#define csPin   8     // CSN out   (CS bzw. SS)
#define mosiPin 16    // MOSI out  (SI)
#define misoPin 14    // MISO in   (SO)
#define sckPin  15    // SCLK out  (SCLK)

TEST2
#ifdef CMP_CC1101
#define PIN_LED               7     // ???
#define PIN_SEND              3     // GDO0 Pin TX out
#else
#define PIN_LED               13    // Message-LED
#define PIN_SEND              11    // GDO2 ???

#endif
#define PIN_RECEIVE           2     // 433 or 912Mhz

#define csPin   8     // CSN out   (CS bzw. SS)
#define mosiPin 16    // MOSI out  (SI)
#define misoPin 14    // MISO in   (SO)
#define sckPin  15    // SCLK out  (SCLK)

TEST3   -   Ständige an - abmeldung in FHEM und ccconf gibt es nicht zur Auswahl
#ifdef CMP_CC1101
#define PIN_LED               7     // ???
#define PIN_SEND              3     // GDO0 Pin TX out
#else
#define PIN_LED               13    // Message-LED
#define PIN_SEND              11    // GDO2 ???

#endif
#define PIN_RECEIVE           2     // 433 or 912Mhz

#define csPin   10     // CSN out   (CS bzw. SS)
#define mosiPin 11    // MOSI out  (SI)
#define misoPin 12    // MISO in   (SO)
#define sckPin  13    // SCLK out  (SCLK)

TEST4   -   Ständige an - abmeldung in FHEM und ccconf gibt es nicht zur Auswahl
#ifdef CMP_CC1101
#define PIN_LED               2     // ???
#define PIN_SEND              9     // GDO0 Pin TX out
#else
#define PIN_LED               13    // Message-LED
#define PIN_SEND              11    // GDO2 ???

#endif
#define PIN_RECEIVE           7     // 433 or 912Mhz

   #define csPin   10     // CSN out   (CS bzw. SS)
   #define mosiPin 11    // MOSI out  (SI)
   #define misoPin 12    // MISO in   (SO)
   #define sckPin  13    // SCLK out  (SCLK)
   
TEST1+2 --> This command is only available with a cc1101 receiver und ccconf
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

pejonp

#216
Hi,

versuche einmal in der RF_..ino diese Werte.

#ifdef CMP_CC1101
  #define PIN_LED               9 <-- die 9 ist belegt vielleicht die 10 oder auch die 13
  #define PIN_SEND            9 <-- hier ändern, in der Doku ist es die PB5(9)
#else
  #define PIN_LED               13    // Message-LED
  #define PIN_SEND              11

#endif
#define PIN_RECEIVE         7 <-- hier ändern, , in der Doku ist es die PE6(7)
#define BAUDRATE               57600
#define FIFO_LENGTH            50
#define DEBUG               1

in der cc1101.h  sollte es so aussehen:

#define csPin   8     // CSN out   (CS bzw. SS)
#define mosiPin 16    // MOSI out  (SI)
#define misoPin 14    // MISO in   (SO)
#define sckPin  15    // SCLK out  (SCLK)

ohne Garantie ;-(

pejonp
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

HomeAuto_User

#217
Ich teste deine Angaben mal.

Unabhängig habe ich nun es hinbekommen das Orginal Board in Arduino einzubinden und wollte dann kompilieren.
Da erhalte ich eine Fehlermeldung in der RF_Receiver.ino.

RF_Receiver.ino: In function 'void enableReceive()':

RF_Receiver:274: error: 'digitalPinToInterrupt' was not declared in this scope

   attachInterrupt(digitalPinToInterrupt(PIN_RECEIVE), handleInterrupt, CHANGE);

                                                    ^

exit status 1
'digitalPinToInterrupt' was not declared in this scope


Bisher immer mit diesem Kompiliert lauf Empfehlung von den Vorseiten.
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

RaspII

Zitat von: HomeAuto_User am 29 Januar 2017, 13:02:54
@RaspII
Sorry wenn du ein wenig untergehst.
Macht erst mal fertig hier (das Teil ist für den Preis ziemlich interessant und man muss nichts mehr basteln).
Mir habt Ihr schon viel geholfen, es darf auch mal anderen geholfen werden  ;D
Ich warte einfach mal ab und lese mich solange quer durch die Threads.
RaspII

juergs

void enableReceive() {
   attachInterrupt(digitalPinToInterrupt(PIN_RECEIVE),handleInterrupt,CHANGE);
}


digitalPinToInterrupt

HomeAuto_User

Zitat von: juergs am 29 Januar 2017, 22:27:55
void enableReceive() {
   attachInterrupt(digitalPinToInterrupt(PIN_RECEIVE),handleInterrupt,CHANGE);
}


digitalPinToInterrupt

Nun hat sich der komplette Kompiler verabschiedet.
Eine Neuinstallation brachte auch nichts.
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

HomeAuto_User

Schlusswort für heute.

Keine Definition der PIN´s brachte einen Erfolg.

Die Nutzung des Kompilers ist wieder hergestellt.
Nach meiner Idee, das Programm mit dem Herstellerboardangaben zu kompilieren klappte der Code nicht --> Fehler.
Nun versuche ich mich an der Behebung desses um einen neuen Versuch zu starten obwohl behauptet wurde, das spiele keine Rolle.
Es muss eine Ursache haben, welche gefunden werden möchte.

E:\Programme\Rasberry - Projekt\Projekt_CUL_\Flashen\ARDUINO_Firmware\RF_Receiver\RF_Receiver.ino: In function 'void enableReceive()':

RF_Receiver:270: error: 'digitalPinToInterrupt' was not declared in this scope

    attachInterrupt(digitalPinToInterrupt(PIN_RECEIVE),handleInterrupt,CHANGE);

                                                     ^

E:\Programme\Rasberry - Projekt\Projekt_CUL_\Flashen\ARDUINO_Firmware\RF_Receiver\RF_Receiver.ino: In function 'void disableReceive()':

RF_Receiver:278: error: 'digitalPinToInterrupt' was not declared in this scope

   detachInterrupt(digitalPinToInterrupt(PIN_RECEIVE));

                                                    ^

exit status 1
'digitalPinToInterrupt' was not declared in this scope


-----------------------------
Danke an alle Mithelfenden. :-*

PS: @juergs, wie hast du die Headerdatei FastPortHelpers.h weiterverarbeitet und vielleicht wäre es eine Erleichterung wenn man diese ggf. in den Code aufnimmt wenn das auch anderen helfen würde?
"Developer" heißt nicht, das man alles wissen kann!
- FHEM v5.9 | Rasberry PI 3
- radino CC1101 433Mhz (SIGNALduino)| - radino CC1101 868Mhz (CUL) | nano 433Mhz (SIGNALduino) - Sensoren: purer Dschungel querbeet

pejonp

Hallo HomeAuto_User;

bleib dran.

'digitalPinToInterrupt' was not declared in this scope

die kannst dort auch eine Zahl für den Pin eintragen. Ich würde dort einmal die 7 versuchen.

Bein Nano ist es glaube ich Pin 2 für Interrupt 0 (siehe unten).

ersetzte einemal : attachInterrupt(digitalPinToInterrupt(PIN_RECEIVE),handleInterrupt,CHANGE);
durch :  attachInterrupt(7,handleInterrupt,CHANGE);  Zahl ggf. ändern

Hier die Interrupts:
Board                                              Digital Pins Usable For Interrupts
Uno, Nano, Mini, other 328-based      2, 3
Mega, Mega2560, MegaADK              2, 3, 18, 19, 20, 21
Micro, Leonardo, other 32u4-based    0, 1, 2, 3, 7

Uno,Nano, Ethernet:

    Inter. 0 = Digitaler Pin 2
    Inter. 1 = Digitaler Pin 3

Leonardo:

    Inter. 0 = Digitaler Pin 3
    Inter. 1 = Digitaler Pin 2
    Inter. 2 = Digitaler Pin 0
    Inter. 3 = Digitaler Pin 1

  pejonp                 
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

Sidey

Moin,
Meiner Meinung nach, muss man den Interrupt und nicht den Pin in der atttatchInterrupt routine angeben.

Ich hatte einen Beitrag verlinkt, in dem stand, dass atttatchInterrupt mit Pin7 nicht funktioniert. Die Fehlermeldung "not declared" ist natürlich banane.

So langsam denke ich auch, dass wir die Board Konfiguration wohl besser mal ins repo mit aufnehmen.

Welches Bord hast Du in de Arduino IDE jetzt zum Compilieren genau ausgewählt?
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Ralf9

@HomeAuto_User
Ich würde es am Anfang erst mal ohne den digitalPinToInterrupt beim enableReceive() versuchen.
Das kannst Du dann in einem zweiten Schritt machen.
Zuvor sollte der cc1101 sauber angesprochen werden können.
Du kannst mal im seriellen Monitor die folgenden Befehle testen
e        factory reset
r00n     liest Werte aus dem EEPROM aus
C99      liest alle Register des cc1101
WS36     cc1101 wechselt nach idle
WS34     cc1101 RX enable



Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7