No forward link or gateway feature activated

Arduino specifieke Software
Gebruikers-avatar
Berichten: 102
Geregistreerd: 26 Okt 2015, 16:07

No forward link or gateway feature activated

Berichtdoor Atwist » 20 Nov 2017, 11:53

Loop te stoeien met deze foutmelding
error No forward link or gateway feature activated. This means nowhere to send messages! Pretty pointless.

In onderstaand script waar ik mee bezig ben
Code: Alles selecteren
#include <MySensors.h>
#include <ESP8266WiFi.h>
#include <WiFiServer.h>
#include <ShiftPWM.h>
#include <SPI.h>

boolean sensor;
boolean MysenSor;


#define SHIFTPWM_NOSPI                           
const int ShiftPWM_dataPin = D7;                   //  Shift-data ZO LATEN!!!
const int ShiftPWM_clockPin = D5;                  //  Shift-clock ZO LATEN!!!
const int ShiftPWM_latchPin = D6;                  //  Shift-latch ZO LATEN!!!

const bool ShiftPWM_invertOutputs = false;         
const bool ShiftPWM_balanceLoad = false;
       
#define Licht_sensor_PIN A0                        // Licht sensor  ZO LATEN!!!
#define Ultra_trigger_PIN D1                        // Trigger voor ultrasonor sensor ZO LATEN!!!
#define Ultra_echo_PIN D2                           // Echo voor ultrasonor sensor ZO LATEN!!!
#define PIR_onder_PIN D3                       // Bottom sensor Do not change!!!                     
#define PIR_boven_PIN D0                        // Upper sensor  Do not change!!!
unsigned char maxBrightness = 100;                // Here you set the number of brightness levels. Adjust(0-255)!!
unsigned char pwmFrequency = 75;                  // These values affect the load of ShiftPWM
unsigned int numRegisters = 2;                    // Number of shift registers Do not change!!!
unsigned int numOutputs = numRegisters * 8;
//unsigned int numRGBLeds = numRegisters * 8 / 3;
unsigned int fadingMode = 0;                      // start with all LED's off.
boolean sensorUpperActive;
boolean sensorBottomActive;
int numberOfstairs=16;                           // Setup Number of Your stairs. Adjust up to 24 !!!!
int pause=30000;                                    // Setup delay ON/OFF  Adjust!!!
byte faidoutSpeed=5;                              // How fast to fadeout     Adjust!!!
byte faidinSpeed=5;                               // How fast to fadein      Adjust!!!


void before() {
    MysenSor=loadState(sensor);                   // Set relay to last known state (using eeprom storage)
 }
 
void presentation() {
     present(sensor, S_LIGHT);
 }

void receive(const MyMessage &message) {          // We only expect one type of message from controller. But we better check anyway.
                                                     
  if (message.type==V_LIGHT) {
    MysenSor=message.getBool();
     // Store state in eeprom
     saveState(message.sensor, message.getBool());
  }
}
void setup() {


 
  ShiftPWM.SetAmountOfRegisters(numRegisters);
  ShiftPWM.Start(pwmFrequency, maxBrightness);
  pinMode(PIR_onder_PIN, INPUT);
  pinMode(PIR_boven_PIN, INPUT);
  pinMode(Licht_sensor_PIN, INPUT);
 
 
}


void loop() {

                               
  if  ( MysenSor!=0) {                             // Adjust photocell cencivity. (val<10 dark.....val>800 bright..)    !!!!!!!!
                                                   
    BottomTriggerFire();                           //Checking bottom sensor
    UpperTrigerFire();                             //Checking upper sensor
    switchONOFFfromdown();                         //Stairs on/off from down to up
    switchONOFFfromUp();                           //Stairs on/off from up to down
  }
}

void BottomTriggerFire() {

  if (analogRead (PIR_onder_PIN) >= 550 ) {      //Depend of the sensor type, if 0 when triggered ,than change the comparison to opposite value.
    sensorBottomActive = true;
  }
}

void UpperTrigerFire() {

  if (analogRead(PIR_boven_PIN) >= 550) {          //Depend of the sensor type, if 0 when triggered ,than change the comparison to opposite value.
    sensorUpperActive = true;
  }
}


void switchONOFFfromdown() {
  if (sensorBottomActive==true && sensorUpperActive==false){
   
 
        for(int i=0; i<numberOfstairs; i++){
          for(int a=0; a<maxBrightness; a++){
          ShiftPWM.SetOne(i,a);
          delay(faidoutSpeed);
           }
          }
         
        delay(pause);

        for(int i=0; i<numberOfstairs; i++){
          for(int a=maxBrightness;a>=0;a--){
          ShiftPWM.SetOne(i,a);
          if(a==0){
          ShiftPWM.SetOne(i,0); 
          }
          delay(faidinSpeed);
           }
          }
        sensorBottomActive = false ; 
  }
}
         
 void switchONOFFfromUp () {
    if ( sensorUpperActive==true && sensorBottomActive==false) {


        for(int i=numberOfstairs; i>=0; i--){
          Serial.print(i);
          for(int a=0; a<maxBrightness; a++){
          ShiftPWM.SetOne(i,a);
          delay(faidoutSpeed);
           }
          }
         
        delay(pause);

         
        for(int i=numberOfstairs; i>=0; i--){
          //Serial.print(i);
          for(int a=maxBrightness;a>=0;a--){
          ShiftPWM.SetOne(i,a);
          if(a==0){
          ShiftPWM.SetOne(i,0); 
          }
          delay(faidinSpeed);
           }
          }
        sensorUpperActive= false ; 
  }
}

Volgens de inleiding van de fout moet het in MySensors.h zitten.
\Arduino\libraries\MySensors-development/MySensors.h:389:2: error:


Script is nog niet klaar, dus zullen er nog wel een paar fouten in zitten maar die wil ik er zelf uit halen.
Het gaat mij om de fout melding van MySensors.
Ik ben niet de slimste maar doe wel mijn best.
Andreas

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: No forward link or gateway feature activated

Berichtdoor Koepel » 20 Nov 2017, 12:59

Die foutmelding komt hier vandaan: https://github.com/mysensors/MySensors/blob/development/MySensors.h#L389
Blijkbaar verwacht MySensors dat er een draadloze verbinding is of dat allerlei defines zijn gedefinieerd.
Kijk maar naar de examples van MySensors, er is iets nodig zoals: #define MY_GATEWAY_ESP8266

Misschien is het ook beter om de #include <MySensors.h> niet als eerste te zetten, maar onder die andere.
De meer basis-dingen zou ik eerst zetten, zoals de #define <SPI.h>. Waar heb je SPI voor nodig ? Voor de ShiftPWM ? En is die ShiftPWM geschikt voor de ESP8266 ?

Gebruikers-avatar
Berichten: 102
Geregistreerd: 26 Okt 2015, 16:07

Re: No forward link or gateway feature activated

Berichtdoor Atwist » 20 Nov 2017, 14:36

Hallo Koepel,

Ik wil voor mijn zoon een LED trap verlichting maken de print is al klaar, deze is gemaakt zoals op deze foto alleen gebruik ik 2 x 74HC595 ipv. 3
Print_opt.jpg
Print_opt.jpg (22.92 KiB) 2501 keer bekeken

En ik gebruik een NodeMCU ipv een NANO, dus ja nu loop ik te stoeien met het script.
NodeMCU heeft een ESP8266 aan boord deze wil ik gebruiken om de instellingen via HTML en een bv tablet te kunnen wijzigen verder niets.
Dus de ShiftPWM gaat niet over de ESP8266 heen, stuurt alleen maar de uitgangen op de print.
De SPI word volgens mij gebruikt door de ShiftPWM maar daar ben ik nog niet helemaal achter.

Hier ga ik eens naar kijken #define MY_GATEWAY_ESP8266 en dan zien of ik er iets mee kan.
Ik ben niet de slimste maar doe wel mijn best.
Andreas

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 14 gasten