Using the new Arduino IDE for ESP8266 and found bugs, report them here

Moderator: igrr

User avatar
By inzmam
#75960 Arduino: 1.8.5 (Windows Store 1.8.10.0) (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

In file included from C:\Users\salman\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0,

from C:\Users\salman\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306Wire.h:31,

from C:\Users\salman\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:30,

from C:\Users\salman\Documents\Arduino\oled_and_arest\oled_and_arest.ino:9:

C:\Users\salman\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplayFonts.h:4:12: error: ArialMT_Plain_10 causes a section type conflict with __c

const char ArialMT_Plain_10[] PROGMEM = {

^

In file included from C:\Users\salman\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.4.1\cores\esp8266/Arduino.h:258:0,

from sketch\oled_and_arest.ino.cpp:1:

C:\Users\salman\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.4.1\cores\esp8266/pgmspace.h:16:51: note: '__c' was declared here

#define PSTR(s) (__extension__({static const char __c[] PROGMEM = (s); &__c[0];}))

^

C:\Users\salman\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.4.1\cores\esp8266/WString.h:38:76: note: in definition of macro 'FPSTR'

#define FPSTR(pstr_pointer) (reinterpret_cast<const __FlashStringHelper *>(pstr_pointer))

^

C:\Users\salman\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.4.1\cores\esp8266/WString.h:39:34: note: in expansion of macro 'PSTR'

#define F(string_literal) (FPSTR(PSTR(string_literal)))

^

C:\Users\salman\Documents\Arduino\libraries\aREST-master/aREST.h:1849:16: note: in expansion of macro 'F'

addToBufferF(F(", "));

^

exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.







i m using this code for nodemcu



// Control ESP8266 anywhere

// Import required libraries
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include <aREST.h>
#include <Wire.h>
#include "SSD1306.h"
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

SSD1306 display(0x3C, 1, 3);

// Clients
WiFiClient espClient;
PubSubClient client(espClient);

// Create aREST instance
aREST rest = aREST(client);

// Unique ID to identify the device for cloud.arest.io
char* device_id = "54691";

// WiFi parameters
const char* ssid = "PTCL";
const char* password = "palwan786";

// Functions
void callback(char* topic, byte* payload, unsigned int length);

void setup(void)
{
// Start Serial
Serial.begin(115200);

// Set callback
client.setCallback(callback);

// Give name and ID to device
rest.set_id(device_id);
rest.set_name("Control Electrical Appliances");
display.init();




// Connect to WiFi
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(0, 0, ".");
display.display();
delay(1000);
}
Serial.print("");
Serial.print("WiFi connected");
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(12, 0, "WiFi is connected");
display.display();


// Set output topic
char* out_topic = rest.get_topic();

}

void loop() {

// Connect to the cloud
rest.loop(client);

}

// Handles message arrived on subscribed topic(s)
void callback(char* topic, byte* payload, unsigned int length) {

rest.handle_callback(client, topic, payload, length);

}
User avatar
By QuickFix
#75972 I see a lot of letters and numbers; maybe some formatting and use of the [ CODE ]-tags could make any sense of it, since it isn't clear what your question is, at the moment. :?
User avatar
By inzmam
#76007 Correct this code please.It is give FPSTR error.



// Control ESP8266 anywhere

// Import required libraries
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include <aREST.h>
#include <Wire.h>
#include "SSD1306.h"
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

SSD1306 display(0x3C, 1, 3);

// Clients
WiFiClient espClient;
PubSubClient client(espClient);

// Create aREST instance
aREST rest = aREST(client);

// Unique ID to identify the device for cloud.arest.io
char* device_id = "54691";

// WiFi parameters
const char* ssid = "PTCL";
const char* password = "palwan786";

// Functions
void callback(char* topic, byte* payload, unsigned int length);

void setup(void)
{
// Start Serial
Serial.begin(115200);

// Set callback
client.setCallback(callback);

// Give name and ID to device
rest.set_id(device_id);
rest.set_name("Control Electrical Appliances");
display.init();




// Connect to WiFi
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(0, 0, ".");
display.display();
delay(1000);
}
Serial.print("");
Serial.print("WiFi connected");
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(12, 0, "WiFi is connected");
display.display();


// Set output topic
char* out_topic = rest.get_topic();

}

void loop() {

// Connect to the cloud
rest.loop(client);

}

// Handles message arrived on subscribed topic(s)
void callback(char* topic, byte* payload, unsigned int length) {

rest.handle_callback(client, topic, payload, length);

}