#define POTENTIOMETER_PIN_1  36  // Pino ESP32 GPIO36 (ADC0) conectado ao potenciômetro 1 pino
#define POTENTIOMETER_PIN_2  39  // Pino ESP32 GPIO39 (ADC3) conectado ao potenciômetro de 2 pinos
#define LED_PIN_1            21  // Pino ESP32 GPIO21 conectado ao pino do LED 1
#define LED_PIN_2            22  // Pino ESP32 GPIO22 conectado ao pino do LED 2

// a rotina de configuração é executada uma vez quando você pressiona reset:
void setup() {
  // inicialize a comunicação serial a 9600 bits por segundo:
  Serial.begin(9600);

  // declare os pinos do LED como saídas:
  pinMode(LED_PIN_1, OUTPUT);
  pinMode(LED_PIN_2, OUTPUT);
}

// a rotina de loop é executada continuamente:
void loop() {
  // lê a entrada no pino analógico A0 (valor entre 0 e 4095)
  int analogValue1 = analogRead(POTENTIOMETER_PIN_1);
  int analogValue2 = analogRead(POTENTIOMETER_PIN_2);

  // dimensiona para brilho (valor entre 0 e 255)
  int brightness1 = map(analogValue1, 0, 4095, 0, 255);
  int brightness2 = map(analogValue2, 0, 4095, 0, 255);

  // define o LED de brilho que se conecta ao pino 21
  analogWrite(LED_PIN_1, brightness1);
  // define o LED de brilho que se conecta ao pino 22
  analogWrite(LED_PIN_2, brightness2);

  // imprima os valores
  Serial.print("Potentiometer 1 - Analog value = ");
  Serial.print(analogValue1);
  Serial.print(" => brightness = ");
  Serial.println(brightness1);

  Serial.print("Potentiometer 2 - Analog value = ");
  Serial.print(analogValue2);
  Serial.print(" => brightness = ");
  Serial.println(brightness2);

  delay(100);
}