Exception (28): Arduino - Thingspeak

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
PopUnoNkoK
Inlägg: 789
Blev medlem: 10 december 2007, 12:40:08
Ort: Piteå

Exception (28): Arduino - Thingspeak

Inlägg av PopUnoNkoK »

Hej

Håller på att göra en Templogger med hjälp av en NodeMCU och 3st 18b20 sensorer.
Dom ska ladda upp data till Thingspeak.
Jag har tidigare lyckats ladda upp data till thingspeak men nu går det åt skogen. (tror dock inte att jag använde Thingspeak bibloteket då)

Jag får ett felmeddelande i SerialMonitor. Det har jag inte varit med om förut. Vet inte alls hur jag ska tolka det.


Arduinokoden ser ut så här.

Kod: Markera allt

/*********
  Rui Santos
  Complete project details at http://randomnerdtutorials.com  
*********/

// Including the ESP8266 WiFi library
#include <ESP8266WiFi.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include "ThingSpeak.h"

int var;
float temp;
 
// Data wire is plugged into pin 5 on the Arduino
#define ONE_WIRE_BUS 5
 
// Setup a oneWire instance to communicate with any OneWire devices 
// (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
 
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);


// Replace with your network details
const char* ssid = "MyWiFi";
const char* password = "XXXXXXX";

// Web Server on port 80
WiFiServer server(80);

unsigned long myChannelNumber = XXXXXXX;
const char * myWriteAPIKey = "XXXXXXXXXXX";


// only runs once on boot
void setup() {
  // Initializing serial port for debugging purposes
  Serial.begin(115200);
  delay(10);

  // Connecting to WiFi network
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  
  // Starting the web server
  server.begin();
  Serial.println("Web server running. Waiting for the ESP IP...");
  delay(10000);
  
  // Printing the ESP IP address
  Serial.println(WiFi.localIP());

  //Börja One-wire  
  sensors.begin();
}

// runs over and over again
void loop() {
  // Listenning for new clients
  WiFiClient client = server.available();


         Serial.println("Debugarea");

temp = sensors.getTempCByIndex(0);
Serial.println(temp);
ThingSpeak.setField(1,temp);
  // Write the fields that you've set all at once.
  ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
Serial.println("Efter");

delay(20000);

} 
Felmeddelandet kommer precis efter
Serial.println(temp);
raden i koden, alltså när jag ska börja prata med Thingspeak. Jag hittar dock inga bra förslag på internet som relaterar till Thingspeak.

Så här ser meddelandet ut:

Kod: Markera allt

Exception (28):
epc1=0x402020e9 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

ctx: cont 
sp: 3ffef430 end: 3ffef710 offset: 01a0

>>>stack>>>
3ffef5d0:  00000001 3ffef658 3ffef64c 3ffee5c4  
3ffef5e0:  00000010 3ffef640 3ffef640 40204814  
3ffef5f0:  3ffeffdc 0000000f 3ffef640 3ffee5c4  
3ffef600:  3ffe85af 3ffef640 3ffee550 402022dc  
3ffef610:  00000009 00000000 3ffef640 40204908  
3ffef620:  7fc00000 3ffef658 3ffee550 40204930  
3ffef630:  00000009 00000000 3ffee550 40202699  
3ffef640:  3fff0bf4 0000000f 0000000f 00000000  
3ffef650:  00000000 00000000 00000000 00000000  
3ffef660:  00000000 00000000 00000000 00000000  
3ffef670:  3ffeffdc 0000000f 0000000f 4010020c  
3ffef680:  0003399c 3ffe85af 3ffef6dc 4010068c  
3ffef690:  3fffdad0 3ffee6b0 3ffee564 3ffee6dc  
3ffef6a0:  3fffdad0 3ffee6b0 419f8000 402028ad  
3ffef6b0:  3ffe85e0 00000000 000003e8 01158287  
3ffef6c0:  00000000 00000000 392e3931 30353733  
3ffef6d0:  3ffe8500 3ffee538 3ffee6b0 00000000  
3ffef6e0:  00000000 00000000 feefeffe feefeffe  
3ffef6f0:  3fffdad0 00000000 3ffee6d4 40204b9c  
3ffef700:  feefeffe feefeffe 3ffee6f0 40100718  
<<<stack<<<

 ets Jan  8 2013,rst cause:2, boot mode:(1,6)


 ets Jan  8 2013,rst cause:4, boot mode:(1,6)

wdt reset
Jag har aldrig varit med om att jag fått ett felmeddelande på detta sätt i Serial Monitor, koden "Kompilar" och körs utan problem från början (Skriver ut tempen till serial monitor) men när den kommer fram till användningen av thingspeak library så händer detta.

Är det någon som kan peka mig i rätt riktning för att få bukt på detta?

MVH Peter
larky
Inlägg: 1099
Blev medlem: 7 mars 2007, 07:54:18
Ort: Skellefteå
Kontakt:

Re: Exception (28): Arduino - Thingspeak

Inlägg av larky »

Gjorde nyss något liknande, se mon kod här,
http://karlander.net/temperatur/marktemperatur.html
Användarvisningsbild
hanpa
Utsparkad, på semester
Inlägg: 639
Blev medlem: 22 november 2016, 21:54:43
Ort: Hemort

Re: Exception (28): Arduino - Thingspeak

Inlägg av hanpa »

Gissar att det beror på att du inte har någon ThingSpeak.begin(client)

Några exempel på kod finns här:

https://github.com/mathworks/thingspeak ... r/examples
PopUnoNkoK
Inlägg: 789
Blev medlem: 10 december 2007, 12:40:08
Ort: Piteå

Re: Exception (28): Arduino - Thingspeak

Inlägg av PopUnoNkoK »

Efter en större kodmiss så blev det att börja om från början med koden. Tog till viss del hjälp av larkys kod. Tusen tack.

Jag hade som sagt missat ThingSpeak.begin(client) men det var inte det som gav upphov till felkoden.

tack för hjälpen.
PopUnoNkoK
Inlägg: 789
Blev medlem: 10 december 2007, 12:40:08
Ort: Piteå

Re: Exception (28): Arduino - Thingspeak

Inlägg av PopUnoNkoK »

Larky:

Har du koll på hur långt tillbaka man kan göra en graf på Thingspeak sida?
Jag har förstått att när man begär data "utifrån" så är det en limit på 8000 datapunkter.
Detta innebär att jag som helst vill logga varje minut bara kan få fram data från ca 5,5 dygn tillbaka i tiden.
Om jag tolkar din kod rätt på sidan om din "under-marken-temperatur-station" så verkar du logga ungefär var 5:e minut.
Det borde betyda att du kan få fram en graf på just under en månad om jag räknat rätt.
Men en av dina grafer visar din data precis ett år.

http://karlander.net/temperatur/marktemp2013_60-134.png

Jag skulle vara mycket tacksam om du kan hinta mig om hur det går till.

Tusen tack på förhand.
larky
Inlägg: 1099
Blev medlem: 7 mars 2007, 07:54:18
Ort: Skellefteå
Kontakt:

Re: Exception (28): Arduino - Thingspeak

Inlägg av larky »

Den gamla grafen är loggad med ett annat system.

Men nu kan jag ändå få en livegraf sen oktober då jag grävde ner de nya sensorerna med hjälp av en lokal websida, se
http://forum.arduino.cc/index.php?topic ... msg1560990

mitt exempel;
http://karlander.net/temperatur/underjorden.html

När jag sen vill ha all data är det bara att logga in på thingspeak och välja att exportera.

Sen finns det ingen vits med att mäta för ofta, 5-10 minuter är ofta lite väl ofta.
PopUnoNkoK
Inlägg: 789
Blev medlem: 10 december 2007, 12:40:08
Ort: Piteå

Re: Exception (28): Arduino - Thingspeak

Inlägg av PopUnoNkoK »

Hmmmm... Den där grafen såg ut att kunna visa väldigt mycket data på ett bra sätt.
Men den var inte så "enkel" och "ren" som jag skulle vilja ha det.


Du har helt rätt att det inte behövs loggas särskilt ofta.
Som det är nu så tar jag det senaste loggade värdet och har det som ett slags "just nu" värde. Detta värde skulle jag vilja ha uppdaterat så ofta som möjligt.
Givetvis borde det vara så att dessa två saker är skilda från varandra men så är det inte nu. :D
Men jag får fundera på om jag ska separera dessa saker, alltså "Tempen-just-nu" och loggningen av tempen.

Det jag då måste göra är att min NodeMcu/esp8266 skickar tempen till min vanliga webserver 1 - 2 ggr per minut men att den skickar till Thingspeak ca var 20e minut.
Skriv svar