LOLIN C3 mini работа Serial

Здравствуйте, пытаюсь читать через последовательный порт в ESP32-C3 SuperMini, нашел что Rx на 20 пине.
При отправке байта через терминал Arduino IDE все ок. Но ничего не выходит при отправке внешним устройством на пин Rx. Земля устройств и Tx передающего устройства с 20 пином соединены надежно. В мониторе порта Arduino IDE тишина, когда пытаюсь отправить что то на 20 пин, даже если просто по замыкать этот пин на землю, должен же появится какой-нибудь мусор в терминале? Подскажите, пожалуйста, что я делаю не так? Спасибо!

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

}
void loop() {
  if (Serial.available()) {
    i = Serial.read();
    Serial.println(i);
  }
}```

А ты уверен, что Serial это именно тот порт, что на 20 пине? Их там три штуки, если память не изменяет.

Да, я вообщем то, все пины перепробовал…

судя по схеме все правильно, RX0=20; TX0=21
также есть Serial1 RX1=0; TX1=1
не знаю, попробуй его штоль

// Standard ESP32-C3 GPIOs
static const uint8_t TX = 21;
static const uint8_t RX = 20;

При попытке подключить Serial1.begin(115200); плата перестает определяться совсем. Даже не знаю что ещё и попробовать…

Я правильно понимаю, если подключить ESP32-C3 SuperMini по USB, даже с пустым скетчем, открыть монитор порта, то мы должны видеть все что приходит на 20 пин по Rx с установленной скоростью? Он должен работать как USB-TTL, другими словами?

чтобы он работал как серийный порт, это должно быть активировано в прошивке

и не выйдет, заверни входящее с пина RX на выход порта, через Serial.write

Тогда вот это, должно сработать?

или как сделать?

загрузи и попробуй

здесь Serial.print(i);

Согласен, конечно, перевод строки не уместен. Но даже в таком виде это ведь должно заработать, а у меня тишина…

значит не должно работать, раз тишина, там несколько сериалов, читай по другому, а в этот отправляй…ты кстати при компиляции разрешил в настройках использование сериала?

Про такое не знаю! Все по умолчанию, ничего не менял… А где это разрешить?

Залей тестовый скетч у убедись, что по компорту сообщения приходят

Здравствуйте, вернулся к своей проблеме, подскажите, при работе такого скетча

  Serial.begin(9600);
}
void loop() {
  if (Serial.available()) {
    Serial.write(Serial.read());
  }
}

Я ведь могу, физически, увидеть сигнал осциллографом на 20 и 21 пине? Я не вижу, хотя в монитор порта приходит. Или не должен, и вообще не правильно понимаю как это устроено? Спасибо!
PS про три обратных апострофа понял спасибо!

патамушта они должны быть на отдельной строке.

Давай еще раз попробую:

#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#include <stdint.h>

#define EXTERNAL_NUM_INTERRUPTS 22
#define NUM_DIGITAL_PINS        22
#define NUM_ANALOG_INPUTS       6

#define analogInputToDigitalPin(p)  (((p)<NUM_ANALOG_INPUTS)?(analogChannelToDigitalPin(p)):-1)
#define digitalPinToInterrupt(p)    (((p)<NUM_DIGITAL_PINS)?(p):-1)
#define digitalPinHasPWM(p)         (p < EXTERNAL_NUM_INTERRUPTS)

static const uint8_t LED_BUILTIN = 7;
#define BUILTIN_LED  LED_BUILTIN // backward compatibility

static const uint8_t TX = 21;
static const uint8_t RX = 20;

static const uint8_t SDA = 8;
static const uint8_t SCL = 10;

static const uint8_t SS    = 5;
static const uint8_t MOSI  = 4;
static const uint8_t MISO  = 3;
static const uint8_t SCK   = 2;

static const uint8_t A0 = 0;
static const uint8_t A1 = 1;
static const uint8_t A2 = 2;
static const uint8_t A3 = 3;
static const uint8_t A4 = 4;
static const uint8_t A5 = 5;

#endif /* Pins_Arduino_h */