Arkadaşlar selam youtube bir rgb bulut yapımı gördüm hoşuma gitti malzemeleri sipariş verdim geldi ama ardunio kodlamasında program hata veriyor 2 gün ugraştım bir kısım hataları çözdüm ama bu hatayı çözemiyorum belki küçük bir şey gözümden kaçıyor bu işte yardımcı olabilecek birileri varsa çok sevinirim.. Teşekkürler..
https://www.youtube.com/watch?v=Ar7O9WGEma8&t=604s anlatım burada ürünler bire bir alındı
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <JsonListener.h>
#include <Time.h>
#include <FastLED.h>
#include <OpenWeatherMapCurrent.h>
#define LED_PIN 7
#define NUM_LEDS 300
#define LED_TYPE WS2811
#define COLOR_ORDER GRB
#define BRIGHTNESS 80
#define blinkCount 4
CRGB leds[NUM_LEDS];
int i ;
OpenWeatherMapCurrent client;
String OPEN_WEATHER_MAP_APP_ID = "c96ec9365826ba279d791984c61011fd";
String OPEN_WEATHER_MAP_LOCATION_ID = "745042";
String OPEN_WEATHER_MAP_LANGUAGE = "en";
const uint8_t MAX_FORECASTS = 4;
const boolean IS_METRIC = true;
// Adjust according to your language
const String WDAY_NAMES[] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
const String MONTH_NAMES[] = {"JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"};
const char* ESP_HOST_NAME = "esp-" + ESP.getFlashChipId();
const char* ssid = "Yasam_Moda";
const char* password = "29002900";
int timezone = 5.5 * 3600;
int dst = 0;
WiFiClient wifiClient;
void connectWifi()
{
WiFi.begin(ssid, password);
Serial.print("Connecting to ");
Serial.println(ssid);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected!");
Serial.println(WiFi.localIP());
Serial.println();
}
void setup()
{
Serial.begin(115200);
delay(500);
connectWifi();
Serial.println();
Serial.println("\n\nNext Loop-Step: " + String(millis()) + ":");
LEDS.addLeds<LED_TYPE, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS);
FastLED.setBrightness(BRIGHTNESS);
configTime(timezone, dst, "pool.ntp.org","time.nist.gov");
}
void loop()
{
OpenWeatherMapCurrentData data;
client.setLanguage(OPEN_WEATHER_MAP_LANGUAGE);
client.setMetric(IS_METRIC);
client.updateCurrentById(&data, OPEN_WEATHER_MAP_APP_ID, OPEN_WEATHER_MAP_LOCATION_ID);
time_t now = time(nullptr);
struct tm* p_tm = localtime(&now);
Serial.print("-------------------------------------------------\n");
Serial.print("Date & Time : ");
Serial.print(p_tm->tm_mday);
Serial.print("/");
Serial.print(p_tm->tm_mon + 1);
Serial.print("/");
Serial.print(p_tm->tm_year + 1900);
Serial.print(" ");
Serial.print(p_tm->tm_hour);
Serial.print(":");
Serial.print(p_tm->tm_min);
Serial.print(":");
Serial.println(p_tm->tm_sec);
Serial.printf("main: %s\n", data.main.c_str());
Serial.printf("description: %s\n", data.description.c_str());
Serial.printf("temp: %f\n", data.temp);
Serial.printf("clouds: %d\n", data.clouds);
Serial.print("-------------------------------------------------\n");
String c=data.description.c_str();
int h=p_tm->tm_hour;
int temp=data.temp;
if (c == "clear sky" || c == "few clouds")
{
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(0, 182, 255);
}
delay(10);
FastLED.show();
}
if (c == "scattered clouds")
{
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(176, 229, 235);
}
delay(10);
FastLED.show();
}
if (c == "broken clouds" || c == "overcast clouds")
{
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(125, 125, 125);
}
delay(10);
FastLED.show();
}
if (c == "light rain" || c == "moderate rain" || c == "heavy intensity rain")
{
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(0, 0, 0);
}
FastLED.show();
delay(0);
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(255, 255, 255);
FastLED.show();
delay(0);
}
for (int x = 0; x < blinkCount; x++)
{
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(0, 0, 0);
}
FastLED.show();
delay(50);
for (int i = 0; i < NUM_LEDS; i++)
{
leds[i].setRGB(255, 255, 255);
}
FastLED.show();
delay(50);
}
}
delay(5000);
}Kod yukarıda hata mesajı altta yazılı
Arduino:1.8.13 (Windows 10), Kart:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"
In file included from C:\Users\User\Documents\Arduino\libraries\FastLED\src/FastLED.h:67:0,
from C:\Users\User\Desktop\Proje\WeatherCode\WeatherCode.ino:6:
C:\Users\User\Documents\Arduino\libraries\FastLED\src/fastspi.h:145:23: note: #pragma message: No hardware SPI pins defined. All SPI access will default to bitbanged output
# pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisForecasts.cpp: In member function 'void AerisForecasts::doUpdate(AerisForecastData*, String, uint8_t)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisForecasts.cpp:48:31: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if(client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisForecasts.cpp:48:31: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisForecasts.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisSunMoon.cpp: In member function 'void AerisSunMoon::doUpdate(AerisSunMoonData*, String)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisSunMoon.cpp:47:31: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if(client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisSunMoon.cpp:47:31: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisSunMoon.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapCurrent.cpp: In member function 'void OpenWeatherMapCurrent::doUpdate(OpenWeatherMapCurrentData*, String)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapCurrent.cpp:55:31: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if(client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapCurrent.cpp:55:31: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapCurrent.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisObservations.cpp: In member function 'void AerisObservations::doUpdate(AerisObservationsData*, String)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisObservations.cpp:46:31: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if(client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisObservations.cpp:46:31: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\AerisObservations.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapForecast.cpp: In member function 'uint8_t OpenWeatherMapForecast::doUpdate(OpenWeatherMapForecastData*, String)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapForecast.cpp:58:31: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if(client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapForecast.cpp:58:31: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapForecast.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapOneCall.cpp: In member function 'void OpenWeatherMapOneCall::doUpdate(OpenWeatherMapOneCallData*, String)':
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapOneCall.cpp:58:32: error: no matching function for call to 'WiFiClient::connect(const String&, const uint8_t&)'
if (client.connect(host, port)) {
^
C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapOneCall.cpp:58:32: note: candidates are:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/ESP8266WiFi.h:39:0,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src/ESPWiFi.h:2,
from C:\Users\User\Documents\Arduino\libraries\ESP8266_Weather_Station\src\OpenWeatherMapOneCall.cpp:24:
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: virtual int WiFiClient::connect(IPAddress, uint16_t)
virtual int connect(IPAddress ip, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:47:15: note: no known conversion for argument 1 from 'const String' to 'IPAddress'
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: virtual int WiFiClient::connect(const char*, uint16_t)
virtual int connect(const char *host, uint16_t port);
^
C:\Users\User\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:48:15: note: no known conversion for argument 1 from 'const String' to 'const char*'
exit status 1
NodeMCU 1.0 (ESP-12E Module) kartı için derleme hatası.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.Bu sorunu nasıl çözerüm.