Hello I need help im recieving a complitation error

#define BLYNK_TEMPLATE_ID "TMPL2D7eBhvPS"
#define BLYNK_TEMPLATE_NAME "Science Project Plant watering"
#define BLYNK_AUTH_TOKEN "fqXN2W1Mk-PpCtCv5j9PYEfDxiikytGz"
#define WIFI_SSID
#define WIFI_PASS
#define BLYNK_PRINT SwSerial

#include <SoftwareSerial.h>
SoftwareSerial SwSerial(10, 11); // RX, TX
#include <BlynkSimpleStream.h>
#include <LiquidCrystal_I2C.h>      // Include the LiquidCrystal I2C library for the LCD


LiquidCrystal_I2C lcd(0x27, 16, 2);
char auth[] = BLYNK_AUTH_TOKEN;



const int moistureSensorPin = A0;
const int waterPumpPin = 9;      // Pin for the water pump
const int fertilizerPumpPin = 6; // Pin for the fertilizer pump
int threshold = 500;            // Adjust the moisture threshold as needed
BlynkTimer timer;
bool Relay = 0;


void setup() {
SwSerial.begin(9600);
  lcd.init();
  lcd.backlight();
  Blynk.begin(BLYNK_AUTH_TOKEN,WIFI_SSID,WIFI_PASS);


  pinMode(waterPumpPin, OUTPUT);
  pinMode(fertilizerPumpPin, OUTPUT);

  timer.setInterval(3600000L, readMoisture);  // Read moisture every hour
  timer.setInterval(86400000L, fertilize);    // Fertilize every 24 hours (adjust timing)
}

void loop() {
  Blynk.run();
  timer.run();
}

BLYNK_WRITE(V0) {
  int waterPumpControl = param.asInt();
  if (waterPumpControl == 1) {
    turnOnWaterPump();
  } else {
    turnOffWaterPump();
  }
}

BLYNK_WRITE(V2) {
  int fertilizerPumpControl = param.asInt();
  if (fertilizerPumpControl == 1) {
    turnOnFertilizerPump();
  } else {
    turnOffFertilizerPump();
  }
}

void readMoisture() {
  int moistureValue = analogRead(moistureSensorPin);
  
  // Send the moisture value to Blynk
  Blynk.virtualWrite(V1, moistureValue);
  
  if (moistureValue < threshold) {
    lcd.setCursor(0, 1);
    lcd.print("Thirsty");
    turnOnWaterPump();
  } else {
    lcd.setCursor(0, 1);
    lcd.print("Im Full");
    turnOffWaterPump();
  }
}

void fertilize() {
  int moistureValue = analogRead(moistureSensorPin);
  if (moistureValue < threshold) {
    turnOnFertilizerPump(); // Implement your fertilization logic here
    lcd.setCursor(0, 1);
    lcd.print("Fertilizing...");
  } else {
    turnOffFertilizerPump(); // Turn off pumps and update LCD
    lcd.setCursor(0, 1);
    lcd.print("Fertilized: Yes");
  }
}

void turnOnWaterPump() {
  digitalWrite(waterPumpPin, HIGH);
}

void turnOffWaterPump() {
  digitalWrite(waterPumpPin, LOW);
}

void turnOnFertilizerPump() {
  digitalWrite(fertilizerPumpPin, HIGH);
}

void turnOffFertilizerPump() {
  digitalWrite(fertilizerPumpPin, LOW);
}```

and im receiving a Compilation error: no matching function for call to 'BlynkStream::begin(const char [33], const char [18], const char [15])'

@Lasy Please edit your post, using the pencil icon at the bottom, and add triple backticks at the beginning and end of your code so that it displays correctly.
Triple backticks look like this:
```

Copy and paste these if you can’t find the correct symbol on your keyboard.

Pete.

Ok ,no problemi is this better

This isn’t an appropriate Blynk.Begin command when using the SimpleStream library.
Take a look at the Arduino/ESP-01 examplifor how to do it correctly.

Pete.

#define BLYNK_TEMPLATE_NAME "Science Project Plant watering"
#define BLYNK_AUTH_TOKEN "fqXN2W1Mk-PpCtCv5j9PYEfDxiikytGz"
#include <SoftwareSerial.h>
SoftwareSerial SwSerial(10, 11); // RX, TX
#include <BlynkSimpleStream.h>
#include <LiquidCrystal_I2C.h>      // Include the LiquidCrystal I2C library for the LCD


LiquidCrystal_I2C lcd(0x27, 16, 2);
char auth[] = "fqXN2W1Mk-PpCtCv5j9PYEfDxiikytGz";
char ssid[] = "Victoria's iphone";
char pass[] = "Wifipassword45";



const int moistureSensorPin = A0;
const int waterPumpPin = 9;      // Pin for the water pump
const int fertilizerPumpPin = 6; // Pin for the fertilizer pump
int threshold = 500;            // Adjust the moisture threshold as needed
BlynkTimer timer;
bool Relay = 0;


void setup() {
SwSerial.begin(9600);
  lcd.init();
  lcd.backlight();
  Blynk.begin(auth);


  pinMode(waterPumpPin, OUTPUT);
  pinMode(fertilizerPumpPin, OUTPUT);

  timer.setInterval(3600000L, readMoisture);  // Read moisture every hour
  timer.setInterval(86400000L, fertilize);    // Fertilize every 24 hours (adjust timing)
}

void loop() {
  Blynk.run();
  timer.run();
}

BLYNK_WRITE(V0) {
  int waterPumpControl = param.asInt();
  if (waterPumpControl == 1) {
    turnOnWaterPump();
  } else {
    turnOffWaterPump();
  }
}

BLYNK_WRITE(V2) {
  int fertilizerPumpControl = param.asInt();
  if (fertilizerPumpControl == 1) {
    turnOnFertilizerPump();
  } else {
    turnOffFertilizerPump();
  }
}

void readMoisture() {
  int moistureValue = analogRead(moistureSensorPin);
  
  // Send the moisture value to Blynk
  Blynk.virtualWrite(V1, moistureValue);
  
  if (moistureValue < threshold) {
    lcd.setCursor(0, 1);
    lcd.print("Thirsty");
    turnOnWaterPump();
  } else {
    lcd.setCursor(0, 1);
    lcd.print("Im Full");
    turnOffWaterPump();
  }
}

void fertilize() {
  int moistureValue = analogRead(moistureSensorPin);
  if (moistureValue < threshold) {
    turnOnFertilizerPump(); // Implement your fertilization logic here
    lcd.setCursor(0, 1);
    lcd.print("Fertilizing...");
  } else {
    turnOffFertilizerPump(); // Turn off pumps and update LCD
    lcd.setCursor(0, 1);
    lcd.print("Fertilized: Yes");
  }
}

void turnOnWaterPump() {
  digitalWrite(waterPumpPin, HIGH);
}

void turnOffWaterPump() {
  digitalWrite(waterPumpPin, LOW);
}

void turnOnFertilizerPump() {
  digitalWrite(fertilizerPumpPin, HIGH);
}

void turnOffFertilizerPump() {
  digitalWrite(fertilizerPumpPin, LOW);
}

I’m still receiving the same error is this still the wrong format?

Yes.

What’s the format in the example you looked at?

Pete.

One from the sketch builder

   - Blynk IoT app (download from App Store or Google Play)
   - Arduino Uno board
   - Decide how to connect to Blynk
     (USB, Ethernet, Wi-Fi, Bluetooth, ...)

  There is a bunch of great example sketches included to show you how to get
  started. Think of them as LEGO bricks  and combine them as you wish.
  For example, take the Ethernet Shield sketch and combine it with the
  Servo example, or choose a USB sketch and add a code from SendData
  example.
 *************************************************************/

/* Fill-in information from Blynk Device Info here */
#define BLYNK_TEMPLATE_ID           "TMPxxxxxx"
#define BLYNK_TEMPLATE_NAME         "Device"
#define BLYNK_AUTH_TOKEN            "YourAuthToken"

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT SwSerial


#include <SoftwareSerial.h>
SoftwareSerial SwSerial(10, 11); // RX, TX

#include <BlynkSimpleStream.h>



void setup()
{
  // Debug console
  SwSerial.begin(115200);

  // Blynk will work through Serial
  // Do not read or write this serial manually in your sketch
  Serial.begin(9600);
  Blynk.begin(Serial, BLYNK_AUTH_TOKEN);
}

void loop()
{
  Blynk.run();
  // You can inject your own code or combine it with other sketches.
  // Check other examples on how to communicate with Blynk. Remember
  // to avoid delay() function!
}

Exactly!
Look at the difference in the Blynk.begin command.

Pete.

Oh!!
:person_facepalming:
Thank you so much.