building

Meshtastic использует PlatformIO, среду разработки, которая позволяет легко разрабатывать для нескольких платформ и централизованно управлять инструментами.

Настройка среды сборки

  1. Установите Git
  2. Установите PlatformIO
  3. Клонируйте репозиторий Meshtastic Firmware shell git clone https://github.com/meshtastic/firmware.git
  4. Обновите субмодули репозитория shell cd firmware && git submodule update --init :::info Если вы хотите собрать цели для RP2040 и получаете ошибку 'Filename too long' в Windows, пожалуйста, обратитесь к документации Platformio по этому инструментарию :::

Обновление среды сборки

  1. Перейдите в папку firmware shell cd firmware
  2. Получите последние изменения в репозитории Meshtastic Firmware и субмодулях shell git pull --recurse-submodules

Сборка

  1. Откройте недавно склонированную папку в Visual Studio Code. Если вы делаете это впервые, это может занять довольно много времени, поскольку PlatformIO загрузит все необходимые инструменты и библиотеки. Также, если platformio не установлен, VSCode попросит вас установить его, возможно, потребовав перезапуск программы.
  2. Чтобы выбрать устройство, которое вы хотите собрать, откройте командную палитру:
  3. Windows: Ctrl + Shift + P
  4. Mac: command + Shift + P
  5. Введите: PlatformIO: Pick Project Environment и выберите вашу цель.
  6. Чтобы собрать прошивку, просто запустите PlatformIO: Build из командной палитры.
  7. Наконец, прошейте прошивку на ваше устройство, запустив PlatformIO: Upload

Добавление пользовательского оборудования

Система сборки модульная. Добавление нового варианта платы для уже поддерживаемой архитектуры просто.

Сборка с пользовательским оборудованием

  1. Перейдите в папку variants в исходном коде прошивки и создайте новую директорию для вашего оборудования, назовем ее m5stack_atom, и скопируйте существующую конфигурацию, которую хотите изменить: shell cd variants; mkdir m5stack_atom cp heltec_v1/* m5stack_atom cd m5stack_atom
  2. Измените файл platformio.ini в этой поддиректории с канонического определения варианта оборудования (HELTEC_V1 в данном случае) на PRIVATE_HW и сделайте -I в build_flags указывающим на newly созданную директорию. shell [env:m5stack-atom] extends = esp32_base board = m5stack-atom monitor_filters = esp32_exception_decoder build_flags = ${esp32_base.build_flags} -D PRIVATE_HW -I variants/m5stack_atom lib_deps = ${esp32_base.lib_deps}
  3. Отредактируйте файл variant.h в этой поддиректории, чтобы он отражал определения и конфигурации для вашей платы. Пример очень хорошо прокомментирован.
  4. Соберите, запустите и отладьте, пока не будете удовлетворены результатом.

Политика принятия моделей оборудования

В связи с ограниченной доступностью и постоянной поддержкой новые номера моделей оборудования будут добавляться только для спонсоров и партнеров Meshtastic. Команда Meshtastic оставляет за собой право делать исключения из этой политики при необходимости. Если вы хотите, чтобы ваше оборудование официально поддерживалось, пожалуйста, свяжитесь с Meshtastic Solutions.

Альтернатива для участников сообщества

Оборудование с поддержкой сообщества по-прежнему приветствуется, и участники сообщества могут добавлять оборудование DIY, однако обратите внимание: