Хотелось бы поделиться опытом настройки и использования любимых мной программных продуктов по программированию Arduino контроллеров на Mac OS. Многие используют Sublime как хорошую среду программирования, например, добавив пакет Stino можно получить возможность писать код и заливать его в Arduino контроллеры. О том как всё это за 10 минут настроить под Windows написано много мануалов, но вот как заставить работать на Mac OS сказано мало. Если у вас есть Mac и Arduino, добро пожаловать под кат (внимание, много картинок!).

Итак у меня на данный момент такой набор:

— MacBook Pro Sierra OS
— Arduino IDE 1.6.11
— Arduino AVR Boards 1.6.13
— Sublime Text 3 (build 3126)
— Stino (v2016.01.22.05.51.02)

Первым делом установим Arduino IDE, запустим и в самой IDE, в Board Manager установим нужную версию Arduino AVR Boards, у меня всё заработало с версией 1.6.13:



Далее скачиваем и устанавливаем Sublime Text 3. Думаю здесь особых проблем возникнуть не должно и особо заострять внимание на том как устанавливать софт под мак я не буду, перейдем собственно к настройке.

Советую также проверить идет ли загрузка программы в Arduino контроллер из Arduino IDE, если всё работает то идем дальше, если же нет, то сначала найдите в чем причина.

Теперь мы должны добавить в Sublime возможность устанавливать пакеты дополнений, для этого нам нужен Package control (следуем инструкции тут). Всё в точности также как на Windows, заходим во View -> Show Console и копируем туда код с сайта, по ссылке выше.



После чего в Sublime Text > Preferences появиться Package Control.



Далее нужно добавить репозиторий, откуда мы установим Stino, пакет для работы с Arduino.
Выбираем Add Repository и вводим внизу в строчку следующее:

https://github.com/gepd/Stino/tree/new-stino


После устанавливаем Stino, Sublime Text > Preferences > Package Control и там Install Package, далее вводим Stino.

Теперь в Sublime Text в меню крайне справа появилась надпись Arduino. Почти всё настроено для работы с Arduino контроллерами, осталось пару важных моментов.

Укажем путь к папке с Arduino IDE, для этого в программе Sublime, заходим в новое появившееся меню Arduino и там Preferences > Select Arduino Application Folder. Если вы ранее не ставили Arduino IDE в какое-то либо другое место, то по умолчанию это будет /Applications/Arduino.app.



Когда я устанавливал это все в первый раз, то думал что на этом шаге всё готово, и можно уже писать программу в Sublime Text и смело заливать в Arduino контроллер. Так я и поступил и столкнулся с ошибками компилятора. Что самое интересное, что с Arduino IDE всё заливалось отлично, а с Sublime + Stino были какие-то проблемы. Быстрый поиск особых ответов не дал, кто советовал поиграться с версиями Arduino AVR Boards, кто советовал перейти на совсем ранние версии Arduino IDE, ну и так далее. Ни один вариант у меня на Mac OS Sierra не заработал. После прочтения нескольких десятков страниц на Stack Overflow, я нашел решение, почему всё это в связке работает у меня под Windows, но не работает под мак.

И так, идем в папку Applications, находим там Arduino, на значке двойной клик и Show Package Contents. Далее проследуем в папку Contens/Java/hardvare/arduino/avr и находим файлик platforms.txt и открываем его в том же Sublime Text. Переходим на 101 строку и удаляем там {upload.verify}. После чего строка должна выглядеть так:



Сохраняем и перезагружаем Sublime Text и пробуем загрузить программу в Arduino контроллер. Не забываем выбрать нужный порт!



Результат — всё залилось без ошибок. Надеюсь статья будет полезна тем, кто хотел бы работать в удобной Sublime text и писать код для Arduino контроллеров.
Поделиться с друзьями
-->

Комментарии (8)


  1. abbath0767
    25.10.2016 21:09

    Благодарю за статью, как раз недавно пересел за мак — повод смахнуть пыль с ардуинки


  1. anatoly314
    25.10.2016 22:44

    А может кто-то посоветовать как отлаживать на OSX? Имеется ввиду поставить breakpoint point и посмотреть значение переменных в этом месте?


    1. safari2012
      27.10.2016 15:52

      Не знаю, есть ли VisualStudio для маков. Но точно есть плагин arduino для VS, который кроме автоподстановки кода еще позволяет делать breakpoint-ы, трассировку и смотреть значения переменных. Правда, чудес не бывает, всё это реализовано так, что компилятор сам прописывает все эти ништяки в HEX. Т.о., на большом проекте памяти может не хватить.


  1. zb3k
    26.10.2016 02:58
    +1

    Раньше использовал Stino. Сейчас перешел на PlatformIO + Atom (есть плагины для других IDE, в том числе и для Sublime Text).
    Из плюсов для меня:


    • Нет завязки на Arduino IDE
    • Работает с множеством различных платформ и фреймворков
    • Очень удобная работа со сторонними библиотеками (добавил в конфиг название библиотеки или ссылку на репозиторий)
    • Консольная утилита.


    1. xruyn
      26.10.2016 13:42

      Насколько я понял плагин Stino разработчик забросил. Его продолжением является плагин Deviot, как раз таки на основе PlatformIO.


  1. ploop
    26.10.2016 16:02

    Пару месяцев назад настраивал это на Ubuntu (так как Arduino IDE убога чуть более, чем полностью), заняло всё от силы пять минут, вместе с прописыванием правил в udev. Ну, то есть, плагин заработал «из коробки»

    Сам не люблю эту платформу, но сын увлёкся. Пришлось купить, теперь довольный кодит, а главное — видит результат в железе. В этом её несомненный плюс!


  1. safari2012
    27.10.2016 15:50

    А что даёт эта IDE кроме подсветки синтаксиса? Автоподстановка кода есть?


    1. ploop
      27.10.2016 23:34

      Грубо говоря это и не IDE даже, а продвинутый блокнот. Однако, очень быстрый и удобный.
      Подстановка есть, но работает по дефолту анализом предыдущего текста, предлагая варианты из ранее набранных идентификаторов. Хотя, в принципе, этого достаточно (сделано это довольно хитро и удобно).
      Короче, синтаксического анализа конкретного языка нет, но возможно это реализовано в плагинах, т.к. их миллион.