Prender y Apagar Luces, 8 Botones / Lights On and Off, 8 Buttons (ERROR in compilation)

Buenas noches estoy muy complacido con ustedes , y quisiera que me colaboraran con un proyecto que estoy realizando , que se trata de la aplicacion de Blynk. me Apaguen y enciedan unas luces , con la targeta de Arduino Ethernet . se me esta presentando un error de Copilacion que es el Siguiente
‘temporizadortimer’ does not name a type .
El programa es el Siguiente.


Good evening, I am very pleased with you, and I would like you to help me with a project that I am doing, which is about Blynk’s application. I switched off and turned on lights, with the Arduino Ethernet card. I’m having a Copilacion error that is the Next
‘timer’ does not name a type.
The program is the Next.

#define BLYNK_PRINT Serial // Comente esto para desactivar impresiones y ahorrar espacio 
#include <SPI.h>
#include <Ethernet.h>
#include <BlynkSimpleEthernet.h>
#include <SimpleTimer.h>
#define RELAY1 2
#define RELAY2 3
#define RELAY3 4
#define RELAY4 5
#define RELAY5 6
#define RELAY6 7
#define RELAY7 8
#define RELAY8 9
char auth [] = "Su símbolo de autenticación";
WidgetLED led1 (V1); // configurar widgets LED
WidgetLED led2 (V2);
WidgetLED led3 (V3);
WidgetLED led4 (V4);
WidgetLED led5 (V5);
WidgetLED led6 (V6);
WidgetLED led7 (V7);
WidgetLED led8 (V8);
byte relay1State;
byte relay2State;
byte relay3State;
byte relay4State;
byte relay5State;
byte relay6State;
byte relay7State;
byte relay8State;
temporizadortimer;


void setup () {
Serial.begin (9600);
Blynk.begin (auth);
timer.setInterval (1000L, setVirtualLeds); // cada 1 segundo de relé de control y ajuste
} // LEDs virtuales para indicar encendido o apagado.


void setVirtualLeds () {
relay1State = digitalRead (RELAY1);
relay2State = digitalRead (RELAY2);
relay3State = digitalRead (RELAY3);
relay4State = digitalRead (RELAY4);
relay5State = digitalRead (RELAY5);
relay6State = digitalRead (RELAY6);
relay7State = digitalRead (RELAY7);
relay8State = digitalRead (RELAY8);
if (relay1State == LOW)
{led1.on (); } else {led1.off ();}
if (relay2State == LOW)
{led2.on (); } else {led2.off ();}
if (relay3State == LOW)
{led3.on (); } else {led3.off ();}
if (relay4State == LOW)
{led4.on (); } else {led4.off ();}
if (relay5State == LOW)
{led5.on (); } else {led5.off ();}
if (relay6State == LOW)
{led6.on (); } else {led6.off ();}
if (relay7State == LOW)
{led7.on (); } else {led7.off ();}
if (relay8State == LOW)
{led8.on (); } else {led8.off ();}}


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

Estare muy agradecido por su colaboracion .
mi Nombre es hernando


I will be very grateful for your cooperation.
my name is hernando

Debes poner SimpleTimer timer;

Hello Hernando. This is a predominantly English speaking forum so, if necessary, please use Google Translate when posting.

As per the example sketch for Blynk Tymer - https://github.com/blynkkk/blynk-library/blob/master/examples/GettingStarted/PushData/PushData.ino#L30

You are missing this line: BlynkTimer timer;

Also, as long as you are using the latest Blynk Library (and App) you no longer need #include <SimpleTimer.h> as BlynkTimer is “built in”.

http://docs.blynk.cc/#blynk-firmware-blynktimer

hola amigo yo soy nuevo me podrás mandar tu código por correo si ya te funciono yo quiero prender 8 bombillos me gustaría poder prender y apagar de manera individual cada uno discapacidad5@gmail.com

Are you using the same hardware as @hdo (who hasn’t visited this forum for almost a year and a half)?

Pete.