Pull to refresh
3
0
Ivan Kravets @xman

User

Send message

Спасибо, Вам! Очень крута статья! От себя (PlatformIO) хочу добавить, что у нас есть полная поддержка RISC-V, включая эмуляцию. 2 недели назад Western Digital Extends Openness of PlatformIO and Enhances its RISC-V Portfolio to Accelerate Data-Centric Innovation мы обявили о сотрудничестве с Western Digital and SiFive. Много хороших новостей впереди!


Martin Fink, CTO of Western Digital, записал очень крутые видео-уроки — RISC-V ASM with PlatformIO + VSCode. Можно поиграться с его проектом даже без физической HiFive1 платы.

Это временная бизнес модель которая позволяет поддерживать open source PlatformIO.Org и быть полностью независимым от hardware vendors.


Напишите, пожалуйста, на contact@pioplus.com со ссылкой на этот пост и получите бесплатную лицензию.

Его можно поменять для проекта используя home_dir в platformio.ini.


Если надо глобально — можете сделать export PLATFORMIO_HOME_DIR=/some/dir

Прошу прощения, но PlatformIO не меняет права, использует Python's default. Можете для эксперимента проверить?
python -c "import os; os.makedirs(os.path.expanduser('~/.habrtest'))"


Спасибо!
Мы (The PlatformIO Team), вчера анонсировали полную поддержу ARM mbed ecosystem в PlatformIO 3.0. Там же и есть пример с BBC micro:bit
[env:bbcmicrobit]
platform = nordicnrf51
framework = mbed
board = bbcmicrobit
lib_deps =
   microbit@~2.0.0-rc4


Будем благодарны за Ваш отзыв.
У Вас уже стоит плагин (autocomplete-clang) который будет это делать. Надо переключиться на PR (ждем когда добавлят в главный бренч) PlatformIO IDE for Atom: Go To Declaration.
Большое СПАСИБО за первую статью o PlatformIO :) У нас просто рук не хватает на это дело :(
Если можно, добавьте, пожалуйста, линк на https://github.com/platformio/platformio, а то нету упоминания что это 100% open source, free and Apache 2.0 license.
Также у PlatformIO есть отдельная команда для установки библиотек platformio lib, к сожалению она по умолчанию устанавливает библиотеки глобально

В PlatformIO 3.0 по-умолчанию библиотеки будут ставиться в project's lib. Я открыл на эту тему issue #475. Если хватит сил, то сделаем ну очень продвинутый Library Manager по типу npm, когда библиотека будет ложить свои зависимости в свой dependency list. Но тогда очень сильно придется повозиться с PlatformIO Build System.
В целом, library логика будет переписана с нуля в PlatformIO 3.0. Здесь можно посмотреть что нас ждет...
Если интересна поддержка других плат (более 150+), включая Arduino Due — советую посмотреть на PlatformIO. Не нужно ставить никакие Arduino IDE, тулчейны и тд. Работает на всех популярных ОС (Win, Linux, Mac), включая Linux ARMv6/7.

PlatformIO имеет встроенный экспорт проекта под популярные IDE, включая Qt Creator. В Вашем случае это будет выглядит так:
platformio init --ide qtcreator --board due


Дальше достаточно просто импортировать созданный проект и «Menu: Build > Build All».
Дорогие друзья,

Рад сообщить о полной stand-alone поддержке mbed framework в PlatformIO. Полный список плат которые сейчас поддерживаются можно посмотреть в Embedded Boards Explorer.

Список примеров: github.com/ivankravets/platformio/tree/develop/examples/mbed

Полный прес-релиз PlatformIO 1.2 — redd.it/2zqz41
Посмотрите на platformio.org. Нет зависимостей по Arduino IDE, Makefiles или tool chains… Поведение одно и тоже в независимости от ОС (работает на всех популярных ОС). Есть Library Manager. Легко интегрируется в любимые IDE.

Для Вашего примера с «atmega168» platformio.ini будет смотреться так:
[env:test_atmega168]
platform = atmelavr
board_mcu = atmega168
board_f_cpu = 16000000L

upload_protocol = arduino
upload_speed = 19200

targets = upload


Пример проекта ATmel AVR Native Blink.
Я к тому, что может быть у вас есть возможность им как-то намекнуть, что это не лучший путь?

К сожалению, именно к этому не имею никакого отношения.

Про Arduino IDE, извините, я вообще лучше промолчу.

+ 1

P.S: В Arduino «IDE» — есть свой смысл и своя аудитория. Это как есть любители Notepad… Здесь важен момент «вхождения»: если все просто — значит «новички» не потеряются, и наоборот. Но это другая тема :)
Если не хотите ждать релиза — можете стянуть SDK отсюда github.com/mbedmicro/mbed
А дальше в Eclipse в свойствах C/C++ проекта указать пути Indexer-у к папке где лежат *.h. По поводу того, чтобы сразу по Cmd/Ctrl+B запустить на билдинг — можно сделать Makefile котрый будет делать нечто подобное developer.mbed.org/handbook/mbed-tools

P.S: Посмотрите для примера, как я делал для PlatformIO + Eclipse IDE. На выходе получилось куда интерестней стандартной Arduino IDE.
Также ведутся разработки над собственным SDK. Разработчикам будет дана возможность создавать проекты и вести разработку в десктоп версии IDE. К тому же, планируется создать собственный менеджер библиотек и программных компонентов на подобии популярного NPM.


Немножко забегу наперед… :) Сейчас веду переговоры с MBED по поводу интеграции с PlatformIO. Очень поздно я к ним обратился, они уже начали разрабатывать похожую штуку только для своих нужд, и только для ARM®. Возможно, раньше можно было бы объединить усилия и мы уже б давно могли «ставить MBED SDK» на чистую OS с помощью одной команды. Но, лучше поздно — чем никогда. + есть отличия когда работает команда из десятка человек в рабочее время, и когда я один в свободное время, которое не всегда есть :) Но! Что получилось и что может еще получиться?

1. Есть надежда что вскоре можно будет начать разработку под MBED с помощью одной команды:

> platformio install mbed

# завести новый проект с пустим конфигом
> platformio init

# настроить среды для проекта (envs) с нужной `board` в 'platformio.ini` и...
> platformio run -t upload

# если надо будут какие-то библиотеки, тогда всегда можно их поставить прямо не уходя с консоли
> platformio lib search --platform=mbed %QUERY%
> platformio lib install %LIB_ID%


2. Пока стараюсь поддерживать работоспособность всего под Mac/Win/Linux x86/x64/ARM (RaspberryPi and etc.)

3. Автор (Paul) Teensy также заинтирисовался в PlatformIO и отправил сегодня Teensy 3.1 для экспериментов… Значит надо ждать и их в списке supported platforms :)

4. Как упомянули об «менеджер библиотек» — прошу покритиковать сырой прототип. Почему сырой? Потому что еще не до конца обсудили спецификацию library.json.

Поступило предложение интегрировать PlatformIO Library Registry прямиком в Arduino IDE / Energia IDE. Сейчас ведется дискусия на эту тему в групе Arduino Developers. Многим интерестно, спасибо за личные сообщения, так как там в групе не все могут писать. Но! Все говорят «круто! Мы хотим», но помочь никто ничем не может. Поэтому, если есть желающие «попилить Processing» для Arduino/Energia IDEs — свяжитесь со мной, буду благодарен!

P.S: Я не электронщик и не embedded-гуру, поэтому могу ошибаться в embedded-терминах и тд. Прошу «простить и помиловать».

P.S.S: Если эта тема с cross-билдингом с под разных OS для разных платформ кому то интересна, и он готов променять Ino/Makefiles на PlatformIO — буду очень признателен за Introduction to PlatformIO отдельным топиком здесь.

Если нужен только CLI для embedded и не хочется ставить всего джава-монстра в виде Arduino IDE (или ему подобного), советую посмотреть на PlatformIO. В документации есть примеры как его интегрировать в разные IDE.

Web-сайт сырой, как раз работаю над ним. Веб-поиск по библиотекам пока не работет. Но работает CLI Search.

P.S: К сожалению, нету времени у меня на все эти запчасти к PlatformIO. Был бы признателен, если бы кто-то помог с наполнением library.json конфигов для библиотек (Arduino, MSP430,...). Примеры здесь github.com/ivankravets/platformio-libmirror/tree/master/configs
>> что МК скорее программируют инженеры с навыками программиста, чем прирожденные программисты.
Читаете мои мысли :)

>> Я бы лучше дальше занялся улучшением поддержки embedded платформ со стороны qbs и QtCreator
Спасибо. Буду следить.

P.S: Извиняюсь, ответ к #comment_7703313
Видя человека с ARM-железякой в руках уже сложно его на что-то другое пересадить, если у него есть его любимая IDE и она с его задачами на отлично справляется.

Как-то задавался этим вопрос и получал ответы такого вида: «У нас нету много времени чтобы изучать Ваши новые IDE, Toolchains и тд., так как нас полностью устраивает то, что идет „с коробки“ от производителя. Все свое основное время мы лучше потратим на аппаратный мир (то есть, сам МК) и его изучение.»

Но пользуясь случаем хотел бы задать такие вопросы (извиняюсь за небольшой «оффтоп»):
  • Как часто Вам приходиться «билдить» или «дебажить» с консоли?
  • Была бы Вам интерестна платформа STM32 в PlatformIO?


Всем большое СПАСИБО!
Существует очень интересное приложение — BetterTouchTool. И в нем как раз есть Windows Snapping о котором Вы говорите. Оно бесплатное.

Но цель этого приложения совсем другая. И я им уже несколько лет пользуюсь. Это очень крутой инструмент для твикинга жестов для Magic Mouse, Macbook Trackpad and Magic Trackpad. Ну и там много чего другого интересного. Всем советую!

На этом скриншоте хорошо показано где находиться этот Windows Snapping:
image

Согласен с m0Ray выше: «облако» и «умный дом» — это дом построен на минном поле :-)

Давно читаю подобные материалы здесь и ни разу никто не упомянул об openHAB (если не считать отчета с Duke's Choice Awards 2013). Как по мне, хорошая альтернатива тому же «cloud»-у. Да, согласен, он(openHAB) немножко «тормознутый». Но даже с такими потребностями по ресурсам его можно поднять на RaspberryPi или BeagleBone.

По поводу Arduino или ему подобным: в последнее время нашел возможность воплотить в реалии то, что сидит у меня в голове уже 3 года :) Идея была простая: подружить hi-level девелопера через разного вида API с популярными и не дорогими платформами (Arduino, TI Launchpad, MBED and etc.). То есть, убрать «полку»(IDE, Toolchains, C, ASM and etc.) с процесса взаимодействия с девайсом. Написанием кода для МК и компиляций должен заниматься кто-то другой… Так и родился SmartAnthill. Проект сырой, но самое главное, что живой! :) Документация немножко отстает от кода.
В планах стоит задача покрыть платформы (Arduino, TI Launchpad, MBED) для взаимодействия как с проводными шинами(пока что CAN), так и беспроводные(тот же nrf24l01, что автор в статье упомянул и ему подобные).

P.S: Если будет готов какой-небудь пре-релизный вариант и с нашей стороны(UA) будет доступ к хабру — постараюсь написать более подробный материал.
P.S.S: Если у Вас есть желание помочь SmartAnthill — буду благодарен, присоединяйтесь (MIT License)!
1

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity