Использование VSCode для модификации прошивок
Работа с прошивками в VSCode: сборка, правки, PlatformIO и типичные ошибки.
Введение
В данной заметке я постараюсь максимально просто объяснить как установить среду разработки VSCode для сборки собственных прошивок.
https://git-scm.com/install/windows - приложение GIT для скачивания исходного кода
https://www.python.org/downloads/ - язык Python без которого сборка не будет происходить
https://code.visualstudio.com/Download/ - сама среда разработки VSCode
Установка требуемых зависимостей
Для начала надо скачать и установить GIT и Python. Начнем:
Идем по первой ссылке, качаем установочный файл

После скачивания запускаем файл, и нажимаем далее-далее, кроме тех моментов, которые отражены на этих скриншотах!
Завершаем установку GIT, и приступаем к установке Python. Идем по второй ссылке, и немного проматываем содержимое окна
Нажимаем скачать, и после скачивания дистрибутива - запускаем его.
и нажимаем далее-далее-далее.
После установки можно перезагрузить компьютер, а можно и не перегружать. Вроде как оно работает и без перезагрузки.
Установка VSCode
Теперь самая важная часть - установка непосредственно VSCode, среда разработки, где мы будем работать в будущем. Идем на сайт и качаем нужную версию. Скорее всего это будет установщик под систему x64.

Устанавливаем. Во время установки просто жмем далее-далее, никаких важных установок или нюансов тут нет.
Забираем исходники
Далее, для того, чтобы начать редактировать исходный код прошивок, добавлять что-то свое, нам нужно скачать их. Делается это достаточно просто, на примере MeshCore я расскажу как это происходит.
Заходим на https://github.com/meshcore-dev/MeshCore

Нажимаем Code и копируем название репозитория. После этого необходимо где-то, лучше всего в корне диска С или диска D создать рабочий каталог, где и будет производиться работа с исходными кодами. Можно создать и на рабочем столе, но я не рекомендую. На моем примере, у меня диск D , каталог с названием DEV. Создаем.
После создания запускаем командную строку (кто не знает - Win+R, пишем cmd.exe и запускаем), и переходим в наш каталог. Для этого используем команду CD и клавишей TAB можно дополнять команду. Перешли. Набираем команду git clone https://github.com/meshcore-dev/MeshCore.git
Нажимаем enter и наблюдаем. Если сделали все правильно, должен создаться локальный клон репозитория.
Теперь мы готовы запустить VSCode…
Первый запуск
Запускаем VSCode и сразу же идем в раздел Extensions , нам надо установить PlatformIO, это дополнительная среда разработки для микроконтроллеров, там же сразу можно нажать INSTALL
Через какое-то время PlatformIO установится, и возможно попросит перезапустить приложение. Разрешаем.
Открытие проекта, выбор устройства
Мы все установили, проблем не возникло. Теперь надо открыть каталог с нашими исходными кодами. Для этого нажимаем “Open Folder” и открываем ту папку, куда скачали наши исходники. После открытия каталога, для безопасности, VSCode заблокирует полный доступ к редактированию/запуску приложений. Чтобы разблокировать нужно нажать сверху Manage и выбрать TRUST.

После этого проект откроется полноценно, и вероятнее всего, начнется скачивание разных зависимостей. Это делается однократно, но объем данных будет приличный, будьте внимательны. Когда закончат бегать всякие ползунки - зависимости скачаны, можно продолжать.
Редактирование
Изначально проект открывается с настройками по-умолчанию. В частности, версия прошивки (левее) и устройство для прошивки (правее).
В левом меню рекомендую сразу щелкнуть на самую верхнюю иконку Explorer - она покажет все файлы нашего проекта.
Для meshcore левое не трогаем, а нажав на правое, где написано Default (MeshCore) - вверху выпадет список со всеми доступными устройствами для прошивки. Опять же, для примера выберем Meshadventurer на чипе SX1262 (это частота 868) компаньон со связью по блютузу.
Система скачает еще некоторое количество зависимостей, уже быстрее и будет готова работать дальше.
Прошивка
Для прошивки надо в левой части меню щелкнуть на мордочку муравья (или кого там?) он же PlatformIO , и у нас появится список основных действий

Самые ходовые из них два:
- Upload and monitor - используется для сборки прошивки, и непосредственно прошивки устройства, с последующим мониторингом (дебаг)
- Erase Flash - очистка flash памяти. Необходима если вы переходите с одной прошивки на другую (meshcore / meshtastic) или хотите точно стереть предыдущие данные и конфигурации, которые могут вам помешать.
Соответственно, в частности подготовки к прошивке - это все. Остальное будет касаться уже редактированию прошивок и попыток вкратце объяснить что за что отвечает.