Возможные ошибки и диагностика

Эта страница — справочник по типичным проблемам. Идея простая: на левой стороне «что я вижу», справа — «куда смотреть» и «как чинить».

Если вы ещё не дошли до полной миссии, начните с конкретной страницы модуля (там тоже есть короткий блок диагностики), и только если не помогло — возвращайтесь сюда.

Заливка прошивки

Симптом

Причина

Что делать

В IDE нет COM-порта

Драйвер CH340 не установлен

Поставить драйвер CH340 (см. Подготовка среды разработки)

avrdude: stk500_getsync(): not in sync: resp=0x00

У клонов Nano стоит старый загрузчик

Tools Processor ATmega328P (Old Bootloader)

То же сообщение, но с подключённым GPS

GPS-провод TX занимает D0 (RX0)

Отсоединить TX GPS на время заливки; подробнее — в Получение данных с GPS (GY-NEO-6M)

Заливка началась, но «висит» на 50%

COM-порт занят другой программой

Закрыть Serial Monitor / PuTTY / другую IDE

Питание

Симптом

Причина

Что делать

При запуске nRF плата ребутится / зависает

Просадка по 3.3 В на nRF (стабилизатор Nano не вывозит)

Поставить конденсатор 10-47 µF между 3V3 и GND рядом с nRF

Сразу после включения дым/запах

Выключить питание! Скорее всего, перепутаны VCC и GND, либо nRF24L01+ получает 5 В вместо 3.3 В

Проверить разводку питания, заменить выгоревший модуль

Шина I²C

Симптом

Причина

Что делать

i2c_scanner не находит ничего

Шина не работает: оторваны SDA/SCL/GND или нет питания устройств

Проверить A4=SDA, A5=SCL, общий GND, питание модулей

Видно только 0x68 (MPU)

Чаще всего CCS811 не отвечает: WAK не на GND

Притянуть WAK к GND (см. Получение данных с CCS811)

Видно 0x68 и 0x76, но нет 0x5A

CCS811 не определился, см. выше

То же

MPU на 0x69 вместо 0x68

На пине AD0 уровень HIGH

Норма. main_full оба адреса умеет, для теста mpu9250_read.ino поправьте константу MPU_ADDR

Появляется много (5+) «странных» адресов

Шина «звенит» — плохой контакт SDA/SCL

Пошевелить и переткнуть Dupont-провода

Сенсор инициализируется, потом значения замирают

Сенсор завис, шина «отвалилась» при работе

Перезапустить плату; проверить, не жмёт ли провод

Шина SPI / SD-карта

Симптом

Причина

Что делать

SD init failed

Карта не FAT32 / > 32 ГБ / не вставлена до щелчка

Отформатировать FAT32 (SD Card Formatter от sdcard.org), взять карту 32 ГБ

SD работает в одиночном тесте, но падает в main_full

Конфликт с nRF на той же SPI-шине: один из модулей не «отпускает» MISO после своего обмена

Проверить контакт CSN nRF (D10) и CS SD (D4); пошевелить провода у разъёмов

SD пишет белиберду в файл

Проблемы с питанием / экранированием шины

Замедлить SPI_FULL_SPEED SPI_HALF_SPEED в скетче (если уверены в коде)

Радио nRF24L01+

Симптом

Причина

Что делать

nRF24 begin FAILED на TX или RX

Питание не 3.3 В / контакт CE/CSN / SPI

Проверить CE=D9, CSN=D10 на Nano; CE=GPIO2, CSN=GPIO4 на ESP32

TX OK идёт, на RX тишина

Параметры радио различаются на сторонах (канал/pipe/скорость/ размер пакета)

Сверить настройки строка-в-строку. Особенно setPayloadSize(...) — должен быть одинаковый на TX и RX

Связь дёргается на 1-2 м

Слабый стабилизатор Nano + всплески тока nRF

Конденсатор 10-47 µF рядом с nRF; внешнее питание модуля

Сильные потери при близком Wi-Fi

Канал 76 нашей сети накладывается на 2.4 ГГц Wi-Fi

Норма для дешёвых nRF; на полевом выезде проблема исчезнет

GPS NEO-6M

Симптом

Причина

Что делать

В GPSLOG.CSV chars=0, crc_ok=0

Поток NMEA от GPS не доходит

Подключён ли TX модуля к D0 Nano (часто после прошивки забывают воткнуть)

chars растёт, но fix=0 много минут

Нет неба над антенной / холодный старт

Вынести на улицу или к окну с открытым видом; ждать до 15 минут при первом включении

Координаты есть, но «прыгают» на сотни метров

Низкое качество фикса (HDOP > 5)

Подождать ещё спутников; искать более открытое место

В Serial Monitor идёт «мусор» вместо текста

Скорость монитора не 9600

В main_full/gps_sd_logger UART занят GPS на 9600, поставить такой же баудрейт в Serial Monitor — или просто не смотреть в монитор и читать SD

LED-лента / зуммер

Симптом

Причина

Что делать

Лента не загорается

Питание / сигнал не на D6

Проверить 5V, GND, DIN к D6

Лента горит «случайными» цветами на самотесте

Помехи на длинном dupont-проводе DIN

Укоротить провод DIN или переткнуть его поплотнее в разъём

Зуммер не пикает

Активный зуммер требует LOW для звука

Проверить полярность подключения (на корпусе модуля обычно есть + / стрелка)

Полная миссия (main_full)

Симптом

Причина

Что делать

Самотест выдал двойной писк

На этом этапе подсистема не отозвалась

См. секции выше по конкретной подсистеме (nRF / GPS / SD)

На самотесте всё OK, потом тишина

Плата зависла в loop()

Проверить питание (просадка), переподключить, посмотреть в Полная миссия (main_full) чек-лист запуска

В TBOY.CSV температура и давление по нулям

BME280 не инициализировался

Прогнать Получение данных с BME280 отдельно

В TBOY.CSV GPS-поля по нулям, sats=0

Нет fix’а на момент записи

Норма в помещении; вывести на улицу

Если ничего не помогло

  1. Сделайте чёткий список что именно не работает (не «не работает», а «в Serial Monitor строка X, ожидал Y»).

  2. Сделайте фото монтажа крупным планом — часто видно оторванный провод или неверный пин.

  3. Запустите Проверка шины I²C — это самый простой индикатор «жива ли вообще шина».

  4. Если симптом не из списка — пишите в общий чат / на форум, и не забудьте приложить, что Serial Monitor показывает.