Compare commits

...

1747 Commits

Author SHA1 Message Date
d5725062c9 Merge branch 'release/v3.2.0' 2016-12-07 22:08:44 +02:00
7c72445143 Bump version to 3.2.0 2016-12-07 22:07:03 +02:00
f02ff75f6e Update PIO Remote diagram 2016-12-07 20:52:04 +02:00
ea901a33d3 Add “Test” target for Eclipse & Sublime Text IDEs 2016-12-07 20:19:07 +02:00
7d8cdcb792 Add File Watchers for CLion IDE 2016-12-07 20:14:28 +02:00
8ac3c086f8 Add docs for Eclipse Che Cloud IDE 2016-12-07 19:34:42 +02:00
0ccd63bb46 Add PIO Remote Architecture diagram 2016-12-07 18:50:20 +02:00
b26442d1fe Don’t touch VCS file if it isn’t modified // Issue #848 2016-12-07 00:58:22 +02:00
ac01a37f5f Improve content caching system 2016-12-07 00:38:59 +02:00
22a272061f Fix merging of ".gitignore" files when re-initialize project // Resolve #848 2016-12-07 00:14:47 +02:00
de4bec0a21 Downgrade ARM mbed to v126 2016-12-06 23:50:48 +02:00
9483c0c51f Export libsource_dirs for IDE data 2016-12-06 13:25:03 +02:00
20d6901dea Add link to global lib_extra_dirs option 2016-12-06 13:19:35 +02:00
2a5d686d5a Use unified link to docs pages 2016-12-05 21:25:10 +02:00
8d5cdf6c61 Fix broken images after docs transferring 2016-12-05 20:51:28 +02:00
683e9ff858 Add docs submodule 2016-12-05 20:45:31 +02:00
42c52e2729 Move docs to https://github.com/platformio/platformio-docs 2016-12-05 20:44:07 +02:00
336aa029db Update deps for PIO Plus 2016-12-05 19:26:43 +02:00
898513c95f Bump version to 3.2b6 2016-12-05 19:25:36 +02:00
08cda5e7ea Enable caching by default for API requests and Library Manager 2016-12-05 18:51:25 +02:00
6de8325130 Propagate full PYTHONPATH only for Windows 2016-12-05 18:36:55 +02:00
cd51f7c5b0 JSON output for account show 2016-12-05 16:50:23 +02:00
c14f515526 Propagate full PYTHONPATH 2016-12-05 15:48:59 +02:00
9867de7a41 Rename pio account info command to pio account show 2016-12-05 14:59:16 +02:00
44e11bcc33 Added global “lib_extra_dirs” option to “[platformio]” section // Resolve #842 2016-12-05 14:43:06 +02:00
c75fc623cb Better parser for IDE data 2016-12-04 23:52:38 +02:00
2571305dc9 Update history 2016-12-04 23:38:20 +02:00
9515972c31 Fix indention for RST 2016-12-04 19:32:08 +02:00
4efc0c04e1 Native integration with VIM/Neovim using “neomake-platformio” plugin // Resolve #467 Resolve #808 2016-12-04 18:59:54 +02:00
b51f1f18b6 Rename PIO Core Repository 2016-12-04 18:59:07 +02:00
aed7597bd7 Unix shell-style wildcards for “upload_port” // Resolve #839 2016-12-03 17:59:15 +02:00
50fa64d6de Update boards list in docs 2016-12-03 00:36:03 +02:00
71c7401f6d History: Upgrade development platform with the latest toolchains and Energia framework 2016-12-03 00:20:19 +02:00
f045e65331 PyLint fix 2016-12-02 20:50:03 +02:00
822ba63486 Fix unable to include SSH user in `lib_deps` repository url // Resolve #830 Resolve #836 2016-12-02 20:47:37 +02:00
acf56b28a1 Show vendor version of a package // Resolve #838 2016-12-02 19:55:19 +02:00
25c979a8ee Pass all PIO variables to PlatformManager 2016-12-02 19:21:56 +02:00
aac627abf4 Bump PlatformIO 3.2b5 2016-12-02 00:52:01 +02:00
738c0f9616 Add new LDF Modes 2016-12-01 17:37:12 +02:00
48b87db2fb Bump PlatformIO 3.2 Beta 4 2016-11-30 19:25:23 +02:00
4beb04d8b9 Refactored LDF C/C++ Preprocessor for conditional syntax // Issue #837 2016-11-30 19:05:37 +02:00
cbe733ce80 Update SCons dependency 2016-11-30 18:20:37 +02:00
e0461fedf6 Improve defines processing 2016-11-30 18:05:14 +02:00
7ab393cea7 Refactor CPPDEFINES to tuple style 2016-11-30 15:53:36 +02:00
50df0bfc1c Add Assembler Blink example for AVR // Resolve #843 2016-11-30 13:13:02 +02:00
a93028d6e4 Bump version to 3.2.0b3 2016-11-30 02:14:52 +02:00
448ed99723 Rename project to PlatformIO Core (fix CIs) 2016-11-30 00:04:41 +02:00
12e1cc95b6 Improve LDF C/C++ Preprocessor for conditional syntax // Issue #837 2016-11-29 23:44:54 +02:00
8b121a1ccb Fix LDF C/C++ Preprocessor for conditional syntax // Resolve #837 2016-11-28 23:24:21 +02:00
2ac00fb4b1 Update tests for lib 2016-11-27 00:05:26 +02:00
a3e1856f6d Add ESP32 examples 2016-11-26 22:59:49 +02:00
d070e63c3a Incremental Project Synchronisation for PIO Plus // Resolve #825 2016-11-26 22:59:22 +02:00
3b967a27c1 Update history 2016-11-24 00:05:06 +02:00
1d4187162a Fix order for imports 2016-11-24 00:01:15 +02:00
e2de7b05b9 Improve LDF and Circular dependencies 2016-11-23 23:47:09 +02:00
5bcd7c574d Added support for Maple Mini Original, Maple Mini Bootloader 2.0, MikroElektronika Clicker 2 2016-11-23 23:45:48 +02:00
c0e4d64ee4 Update Microchip PIC32 development platform and its tools 2016-11-23 21:12:44 +02:00
dc9bc81613 Fix broken link to awards 2016-11-22 23:55:23 +02:00
bc42fdbebe Remove obsolete code rated to LD_LIBRARY_PATH & Linux 2016-11-21 16:28:37 +02:00
f7790ce537 Add support for Espressif 32 // Resolve #682 2016-11-19 18:39:25 +02:00
0e20261d76 Update docs with new boards 2016-11-18 18:50:30 +02:00
c186689672 Update history 2016-11-18 17:59:48 +02:00
71432c08dd Update ARM mbed OS to 5.1.5/rev127 2016-11-18 16:11:38 +02:00
3fa8b45e4a Fix issue with uploading to Arduino Zero on programming USB port // Resolve #805 Resolve #828 2016-11-18 13:39:58 +02:00
056436edc4 Update history 2016-11-18 13:25:44 +02:00
f70d7a4286 New article by Ricardo Quesada 2016-11-17 19:20:39 +02:00
5c38cb98fa Remove debug code 2016-11-16 17:32:49 +02:00
3b71cdc75e Keep order in summary when processing environments 2016-11-16 17:31:56 +02:00
9247be97d1 Update examples 2016-11-14 18:51:43 +02:00
f965fd7c2b Show link to the latest version of history after upgrade 2016-11-14 17:16:05 +02:00
8c1ad8e509 Disable SSL for Python < 2.7.9 2016-11-12 00:57:45 +02:00
3d5fe149c3 Reload command for remote, update, improved docs; Bump to 3.2b2 2016-11-12 00:28:49 +02:00
5670b7af1f New article by PiGreek 2016-11-10 20:13:20 +02:00
7bb435cf81 Allow minor + patch versions of PIO Plus packages 2016-11-10 00:16:05 +02:00
39df3d0dc0 Minor fixes 2016-11-10 00:04:30 +02:00
0c0043da7b New article by Xose Pérez 2016-11-08 18:53:19 +02:00
4935763210 Spell fix 2016-11-05 20:52:05 +02:00
5d3927c10a Fix PySite requirements for PIO Plus 2016-11-05 18:21:49 +02:00
5a677fa15d SemVer for PIO Plus packages 2016-11-05 17:49:50 +02:00
269500a969 Support for Account command 2016-11-04 19:40:12 +02:00
4cf146bd4f Minor improvements to PIO Remote docs 2016-11-03 23:45:31 +02:00
9328d3bd31 Add Contents for PIO Remote 2016-11-03 23:18:45 +02:00
5a850bd406 Add Quick Start for PIO Remote to docs 2016-11-03 23:15:30 +02:00
4767e5958f Bump to 3.2.0b1 2016-11-03 20:37:29 +02:00
f1788ae67f Minor Improvements to docs 2016-11-03 19:23:00 +02:00
4568e00f7b Fix image path for Codeanywhere Cloud IDE 2016-11-03 18:33:32 +02:00
9cd8e67fb6 Updates for Unit Testing Docs 2016-11-03 18:29:29 +02:00
e99abc5a36 Docs for Codeanywhere Cloud IDE 2016-11-03 18:19:03 +02:00
822a4d8255 Multi-Project workspace for Cloud9 IDE 2016-11-03 15:59:05 +02:00
b1a79db369 Update supported boards 2016-11-03 15:06:12 +02:00
4f9abde70e Improve Unit Testing docs 2016-11-03 14:37:53 +02:00
79ed0d9024 Handle nested subcommands 2016-11-03 14:03:26 +02:00
14c8231fea Remove invalid codecov badge 2016-11-03 01:23:40 +02:00
f9a369561e PIO Account information; PIO Plus v0.4.0 2016-11-03 01:04:32 +02:00
a28a8273c5 Mention CI for Unit Testing 2016-11-02 20:24:11 +02:00
ac3ebab070 PlatformIO Auth Token command 2016-11-02 19:43:45 +02:00
fa11217da7 Fix Unit Test build environment 2016-11-02 18:53:03 +02:00
9b786ba8c7 Remote Unit Testing 2016-11-02 18:24:52 +02:00
db4dbeeca7 Add advanced example for Travis.CI 2016-11-01 12:54:45 +02:00
1c5535d75f Add info about custom reset methods for ESP8266 // Issue #821 2016-11-01 01:18:52 +02:00
92e3ca2686 Improve docs for Custom Reset Method // Resolve #821 2016-11-01 01:11:22 +02:00
8236f3ff86 Ask about serial port for device monitor when more than one is found 2016-10-31 20:06:48 +02:00
a251470ebd Python style formatting 2016-10-31 20:05:34 +02:00
653f8b87ec Drop support for PySerial 2.7 2016-10-31 18:13:41 +02:00
7b4d94ccfb Custom boards per project with `boards_dir` option in platformio.ini // Resolve #515 2016-10-31 17:41:01 +02:00
e4a91b8343 Inject system environment variables to configuration settings in platformio.ini // Resolve #792 2016-10-31 17:04:34 +02:00
e42387fbf4 Add link to Cloud IDE for PIO Remote 2016-10-31 15:41:46 +02:00
c92ab885f7 Fix formatting 2016-10-31 14:43:30 +02:00
76a65e9238 Add support for both CHE_APIs 2016-10-30 23:31:51 +02:00
ef7bbe5aa6 Typo fix 2016-10-30 02:09:08 +03:00
0e3f329db9 Use only "platformio.ini" in menu for docs 2016-10-30 02:01:57 +03:00
fcd7e60b68 Docs for Cloud9 2016-10-30 01:54:29 +03:00
2cbe284e58 Switch temporary to develop version 2016-10-29 22:22:01 +03:00
7c4b1cedf7 Refactor menu PIO IDE & CLI in docs 2016-10-29 22:07:25 +03:00
5771a9e0f8 Docs for PIO Remote, PIO Account; other improvements for docs 2016-10-29 19:55:36 +03:00
1875495360 Use board ID instead Type 2016-10-29 00:33:26 +03:00
0a19730fa6 Access to Serial Ports (USB/UART) information for dev platform 2016-10-29 00:17:55 +03:00
42000f34b0 Access to Serial Ports (USB/UART) information 2016-10-29 00:08:18 +03:00
53c4c6d2a8 Update docs with "buildprog" target, add/post actions // Resolve #812 2016-10-27 23:40:31 +03:00
3f955659a1 Fix invalid examples for PLATFORMIO_BUILD_FLAGS environment variables 2016-10-27 22:35:09 +03:00
bf48d81c43 Bump version to 3.2.0a10 2016-10-27 01:39:38 +03:00
f907386107 Temporary fix for Eclipse Che 2016-10-27 01:38:49 +03:00
4247f448a8 Add docs for PIO Account 2016-10-26 21:07:43 +03:00
c2bf38f873 Improved handling of library dependencies specified in `library.json` manifest // Resolve #814 2016-10-26 18:35:43 +03:00
2ec0bbb023 Skip custom LD_LIBRARY_PATH for PIO Plus 2016-10-25 21:51:22 +03:00
63f1939c83 PIO Account, Subscription, other improvements 2016-10-24 21:03:54 +03:00
f027e8c52e Fix example with custom ARGUMENT for extra scripting 2016-10-17 22:41:49 +03:00
d4ab58548f Add support for Teensy Audio feature (`build_flags = -D USB_AUDIO`) 2016-10-14 13:30:12 +03:00
9348dc12be Detect Python Arch under Windows OS 2016-10-13 00:42:16 +03:00
90e9dfcd33 Fix docs 2016-10-12 20:17:47 +03:00
27e988e63a Update docs for boards, platforms and frameworks 2016-10-12 18:51:47 +03:00
e8866c9643 Update history for ST STM32 development platform 2016-10-12 18:23:22 +03:00
8ac31d21ec Bump version to v3.2.0a7 2016-10-11 01:40:31 +03:00
2676e77ea4 Isolate test target 2016-10-11 00:06:09 +03:00
b09526a248 Fix PIO installation using get-platformio script 2016-10-10 23:06:09 +03:00
c2ee36a4d7 Initial support for Eclipse Che 2016-10-10 20:59:47 +03:00
5f83861f52 New article by Xose Perez 2016-10-10 20:14:23 +03:00
1d203b46b4 Change default exit combination for Device Monitor from `Ctrl+] to Ctrl+C` 2016-10-10 20:08:54 +03:00
4ead3f0570 Pass all options to remote serial monitor 2016-10-10 18:30:58 +03:00
1a57d0330a Fix contact link 2016-10-09 00:57:30 +03:00
417780ff70 Don't process dependency in lazy mode 2016-10-09 00:23:33 +03:00
c3a16ab8c7 Fix update operation in package manager 2016-10-06 19:41:45 +03:00
66d80b80cd Don't require development version of PlatformIO ESP8266 stage 2016-10-06 17:42:36 +03:00
2231461ef3 Bump version to 3.2.0a4 2016-10-06 16:14:08 +03:00
03497c40ca Pass only 3-rd party PySites to global env 2016-10-06 15:50:41 +03:00
6c7673f17b Fix Unit Test 2016-10-06 13:41:30 +03:00
7bf5d349d7 Ignore buildprog target status 2016-10-05 22:40:19 +03:00
aa8199201f Catch ReturnCode exception 2016-10-05 21:43:28 +03:00
c5f6f408b7 Bump version to 3.2.0a3 2016-10-05 20:11:25 +03:00
31692901c8 Merge branch 'feature/pio-remote' into develop 2016-10-05 20:08:47 +03:00
d2a7d77282 Add SF package registry for PIO Plus 2016-10-05 20:07:55 +03:00
485ba19601 Add package requirements for PIO Plus 2016-10-05 15:46:04 +03:00
41c69797f2 Fix handler for renamed commands 2016-10-05 01:23:50 +03:00
b708653c26 Allow multiple emails for PIO Remote share 2016-10-04 19:37:48 +03:00
2c8736777b Share option for PIO Remote agent 2016-10-04 14:13:30 +03:00
09fc30e777 Bump version to 3.2.0a1 2016-10-04 01:27:41 +03:00
5bcec6b6a0 Merge branch 'develop' into feature/pio-remote
* develop:
  Fix "99-platformio-udev.rules" checker for Linux OS
  Fix issue with "PATH" auto-configuring for upload tools
  New article by Kadda Sahnine
2016-10-04 01:26:19 +03:00
00aeaf021d Further work on PIO Remote 2016-10-04 01:24:38 +03:00
810b6d807f Improve finding of actual LD Script 2016-10-04 01:21:26 +03:00
e51680be63 Rewrite on-the-fly renamed commands 2016-10-03 17:26:24 +03:00
3600ef61a7 Additional target "buildfs" to accompany "uploadfs" // Resolve #6 2016-10-03 17:24:39 +03:00
214f4501b0 Better formatting of envs summary 2016-10-03 16:47:23 +03:00
0595201d81 Use link to the latest release notes 2016-10-02 18:19:07 +03:00
bee52c715e Handle process in container 2016-09-29 23:53:19 +03:00
36ced8010a Fix "99-platformio-udev.rules" checker for Linux OS 2016-09-29 19:03:56 +03:00
71d74f40b0 Fix issue with "PATH" auto-configuring for upload tools 2016-09-29 18:58:35 +03:00
dc874ebf49 New article by Kadda Sahnine 2016-09-27 19:17:28 +03:00
5cfca6b1f6 Initial support for PIO Remote 2016-09-26 22:15:08 +03:00
36dc1c82b2 Add new ESPrectro board 2016-09-25 20:46:30 +03:00
4b4ac58d60 Improve Project Generator for CLion IDE when source folder contains nested items 2016-09-25 19:49:17 +03:00
f9a7451995 Article by The Linux Foundation 2016-09-22 17:19:42 +03:00
8cc06c214a Improve detecting of ARM mbed media disk for uploading 2016-09-21 19:31:02 +03:00
417cce1929 New article by Francesco Azzola 2016-09-21 18:43:00 +03:00
de3157dc2a Add info about multiple options 2016-09-20 20:16:39 +03:00
b0d9680506 New article by Doc Walker 2016-09-20 18:14:50 +03:00
77a5eb24c2 Typo fix 2016-09-19 22:21:26 +03:00
e2e28c7444 Merge branch 'release/v3.1.0' 2016-09-19 21:12:56 +03:00
eb21d54ef8 Merge branch 'release/v3.1.0' into develop 2016-09-19 21:12:56 +03:00
b06c20a1a6 Version bump to 3.1.0 (issues #611, #705, #774, #777, #785) 2016-09-19 21:12:40 +03:00
a3ce23e331 Improvements to docs 2016-09-19 21:02:12 +03:00
6147e0e29b Add example with upload_port 2016-09-19 15:32:11 +03:00
da48ea3818 Improve a work in off-line mode 2016-09-19 15:10:28 +03:00
543a137506 Fix udev.rules warning under Linux Mint 2016-09-18 23:48:10 +03:00
02e7ff6b19 Cosmetic change 2016-09-18 01:41:31 +03:00
935894633c Correct processing summary 2016-09-18 01:21:40 +03:00
9b0bc500fd Summary about processed environments // Resolve #777 2016-09-18 01:11:55 +03:00
83b6bf6c6a Remove test code 2016-09-17 23:50:36 +03:00
5e6469596c Dynamic variables/templates for "platformio.ini" // Resolve #705 2016-09-17 23:46:53 +03:00
c12df19fd1 Fix Project Generator for CLion IDE using Windows OS // Resolve #785 2016-09-17 18:13:39 +03:00
37552a81fc Fix Project Generator for CLion IDE using Windows OS // Resolve #785 2016-09-17 16:55:42 +03:00
e50327bccc Deprecate `lib_force option, please use lib_deps` instead 2016-09-17 16:32:16 +03:00
7dc378bba7 Update examples 2016-09-17 00:24:29 +03:00
72b6390613 Minor updates 2016-09-17 00:02:01 +03:00
52bb6fcbf0 Add dozens of new boards 2016-09-16 23:48:21 +03:00
63748cd83d Add support for Teensy 3.5 and 3.6 boards; Updated Arduino Framework for Teensy to v130 2016-09-16 01:00:50 +03:00
254dcac149 Add Bintray as mirror for development platform manifests 2016-09-15 21:31:56 +03:00
e1f3a248ea Add step with manual installation of ESP8266 Stage 2016-09-15 01:45:36 +03:00
74a8e88308 Rename stage version of esp8266 2016-09-15 01:39:03 +03:00
9c15fed722 Fix issue with escaping platform name 2016-09-15 01:30:51 +03:00
a14dec70c2 Simplify ESP8266-stage using 2016-09-15 01:28:41 +03:00
18153d4168 Cleanup platform name before initialization 2016-09-15 01:17:16 +03:00
bd30de4f18 ESP8266: Using Arduino Framework with Staging version 2016-09-14 23:42:26 +03:00
3b6bda825b Update a complex test for platform install command 2016-09-14 23:26:51 +03:00
92e69a60f4 Fix typo 2016-09-14 23:10:46 +03:00
72084a2013 Fix issue with cache cleaning 2016-09-14 22:50:14 +03:00
27df09533c Clean cache before upgrade 2016-09-14 22:32:35 +03:00
bd207667e3 Implement LocalCache system for API and improve a work in off-line mode 2016-09-14 19:06:22 +03:00
37eb37e2a1 Improve a work in off-line mode 2016-09-14 14:55:07 +03:00
7116deaf54 Allow to initialize project in off-line mode 2016-09-14 14:46:10 +03:00
d2a45245e2 Fix linter warnings 2016-09-13 20:39:04 +03:00
05bbd4a7f8 Improve Project Generator when custom `--project-option is passed to platformio init` command 2016-09-13 19:22:19 +03:00
8199272328 Better checking of available package updates 2016-09-13 18:53:17 +03:00
33b5e18582 Use stable documentation 2016-09-13 17:36:36 +03:00
eae152959b Minor change to BoardConfig() API 2016-09-13 17:36:20 +03:00
35cbbeb457 Fix downloader with Unicode path // Resolve #771 2016-09-12 19:54:28 +03:00
96f7c7c0b0 Add new article by Pedro Minatel 2016-09-12 19:24:24 +03:00
ac7743e217 Rename setting DISABLE_SSL to ENABLE_DISABLE and set it to No by default 2016-09-12 02:11:04 +03:00
7d10041727 Fix test 2016-09-10 23:42:51 +03:00
72a18125ee Fix test 2016-09-10 19:07:24 +03:00
1bd893409d Install empty dev platform in processing mode 2016-09-10 18:58:18 +03:00
d9d5ee15fd Fix default package configurator 2016-09-10 18:49:59 +03:00
78c86446cf Fix RegExp for line error 2016-09-10 17:27:47 +03:00
2a9ba3821a Support PlatformIO Plus 2016-09-10 16:39:27 +03:00
4328d311a5 Remove obsolete defines 2016-09-09 23:18:00 +03:00
a42cf4ebdd Fix incorrect line order when converting from INO to CPP and pointer is used 2016-09-09 18:49:58 +03:00
39a787b0d1 Fix unit test 2016-09-09 18:26:38 +03:00
f186ad30c1 Notify about version field when creating library 2016-09-09 18:08:18 +03:00
160ae3fb60 Add support for SparkFun Blynk Board 2016-09-08 21:39:30 +03:00
80d74c608d Return valid exit code from `plaformio test` command 2016-09-08 16:17:58 +03:00
df4560412d Disable SSL Server-Name-Indication for Python < 2.7.9 2016-09-08 13:50:45 +03:00
dab4c91c98 Merge branch 'release/v3.0.1' into develop 2016-09-08 02:00:07 +03:00
dd20c4273b Merge branch 'release/v3.0.1' 2016-09-08 02:00:06 +03:00
cf5023436c Version bump to 3.0.1 (issue #772) 2016-09-08 01:59:54 +03:00
ff312f0405 Disable temporary SSL for PlatformIO services // Resolve #772 2016-09-08 01:57:50 +03:00
9012ed256c Merge branch 'release/v3.0.0' into develop 2016-09-07 20:50:47 +03:00
0a63b8b905 Merge branch 'release/v3.0.0' 2016-09-07 20:50:46 +03:00
f78c9436c8 Version bump to 3.0.0 (issues #770, #766, #747, #730, #765, #640, #659, #742, #459, #542, #763, #759, #753, #757, #749, #748, #745, #519, #709, #743, #413, #498, #410, #740, #361, #414, #554, #732, #588, #475, #461, #101, #719, #721, #537, #415, #522, #289, #556, #570, #456, #617, #432, #408, #479, #667, #510) 2016-09-07 20:50:34 +03:00
578d8910aa Fix menu height for docs 2016-09-07 19:16:05 +03:00
cd45749c82 Fix issue with multiple archives when linking firmware 2016-09-07 19:05:15 +03:00
3069abfe13 Add migration guide for PIO2 to PIO3 2016-09-07 18:50:25 +03:00
f7b994354b Search libraries by headers/includes with `platformio lib search --header` option 2016-09-07 18:50:09 +03:00
a28e04bfde Update pio run command examples 2016-09-07 15:56:53 +03:00
960de87585 Add Unit Testing Demo 2016-09-07 15:46:48 +03:00
f525165758 Update PIO Plus badge title and link 2016-09-07 13:51:59 +03:00
9e3b2a381e Add PlatformIO Plus badge 2016-09-07 13:50:47 +03:00
f6491b2285 Add links to PlatformIO Plus 2016-09-07 13:47:42 +03:00
93aa0c2b08 Test PlatformIO 3.0 packages 2016-09-04 18:25:28 +03:00
0f300a24a1 Fix issue with archive downloader 2016-09-04 12:03:57 +03:00
a05d192beb Implement installing packages/libraries from different archive (with/without manifests) // Resolve #767 2016-09-04 00:35:47 +03:00
fda7392b84 Rename "espressif" platform to "espressif8266" 2016-09-03 19:35:40 +03:00
6036c54b05 Fix broken URL for Teensy site 2016-09-03 17:07:10 +03:00
7f1b569d6f Update docs for embedded platforms, frameworks and boards 2016-09-03 16:26:52 +03:00
c8849a4648 Extend JSON output when listing installed development platforms 2016-09-03 14:59:50 +03:00
e2d2295866 Handle url with ".git" extension as Git package/library 2016-09-03 01:27:34 +03:00
d4ffc89c02 Merge branch 'feature/test-plus' into develop 2016-09-02 23:49:38 +03:00
139bd4c10a Export library path for PlatformIO Plus 2016-09-02 23:30:24 +03:00
21d34482da Fix package manager when "git@url" is used 2016-09-02 22:41:27 +03:00
9b2999d64b Fix test for "pio test" 2016-09-02 22:23:26 +03:00
65b5f20cf7 Fix typo in docs 2016-09-02 18:50:14 +03:00
ec035c25a1 Improve "clean" target // Resolve #747 2016-09-02 18:45:19 +03:00
a1cb089d0d Add new articles 2016-09-02 16:55:11 +03:00
424d5e71a8 Minor improvements to docs 2016-09-02 16:45:08 +03:00
a48201f60f Skip converting if INO nodes are not found 2016-09-02 15:19:54 +03:00
6442c86084 Fix INO to CPP converter when #define is used 2016-09-02 14:35:07 +03:00
b06dc1e63f Bump new version 2016-09-02 00:46:06 +03:00
bbe6550abe Fix Sphinx warnings 2016-09-02 00:22:12 +03:00
b8af2acce5 Fix issue with converting INO to CPP and missing line number 2016-09-01 23:19:46 +03:00
6b63ae2e46 Ignore warning when can't delete temporary file 2016-09-01 21:56:43 +03:00
85439dbff7 Allow to use dependencies separated with comma + space 2016-09-01 21:34:37 +03:00
b6269188fe Fix indention 2016-09-01 20:02:12 +03:00
bb62444f15 Handle C multiline strings when converting INO to CPP // Resolve #765 2016-09-01 19:08:32 +03:00
ac4c054d1f Implement retrying mechanism for get results from PlatformIO API 2016-09-01 16:05:02 +03:00
838063b1b7 Allow passing custom project configuration options to `platformio ci and platformio init commands using -O, --project-option`. 2016-09-01 15:14:38 +03:00
c51ac0489f Use global library storage for CI 2016-09-01 01:30:14 +03:00
0e464b011f Improve Library Dependency Finder in mode=1 2016-09-01 00:06:34 +03:00
86aa7ad692 Temporary enable LDF_MODE=2 before refactoring 2016-08-31 20:28:26 +03:00
013c675bc4 Allow to control library dependency finder mode from library.json; set ldf_mode to 1 by default 2016-08-31 18:52:27 +03:00
3be35f9987 Introduce PlatformIO Plus 2016-08-31 16:07:35 +03:00
86794d2cf1 Don't check program path 2016-08-31 14:13:09 +03:00
c3004c6a6c Disable HG testing 2016-08-31 13:15:40 +03:00
3a7b0d2c9d Fix INO to CPP converting when 2-tokens type is used 2016-08-31 12:49:10 +03:00
1b32091d7d Fix broken Unit Testing 2016-08-31 02:06:43 +03:00
7a88778f5e Improve INO to CPP converter // Resolve #659 2016-08-31 01:47:57 +03:00
e703054716 Update INO2CPP examples 2016-08-31 01:26:08 +03:00
c33a745862 Fix wrong line number for INO file when `#warning` directive is used // Resolve #742 2016-08-31 01:03:13 +03:00
a94aa898a6 Remove temporary INO/CPP file at process exit 2016-08-31 00:34:23 +03:00
8a379d2db2 Refactor INO to CPP converter 2016-08-31 00:16:23 +03:00
34a860cfa6 Limit max sources length for Win to 6000 chars 2016-08-30 23:09:53 +03:00
d0d139511c Skip unknown packages while updating 2016-08-30 20:38:00 +03:00
dec5529a64 Cleanup not used packages after update 2016-08-29 22:25:38 +03:00
64520130f6 Add development packages 2016-08-29 22:19:56 +03:00
d516d31b30 Remove unused import 2016-08-29 22:07:21 +03:00
5d2f42a5a8 Cleanup PackageManager 2016-08-29 22:06:37 +03:00
f8e70c9362 Improve detecting of Python EXE Path 2016-08-29 20:20:12 +03:00
023e2978ba Disable platforms patching (while PIO3 is not released) 2016-08-29 14:56:55 +03:00
0f8f9c94cd Make less verbose AS command 2016-08-29 14:10:09 +03:00
22bb1c39b1 Handle EOL when update VCS ignore file 2016-08-29 13:35:35 +03:00
6765a60ec3 Minor improvements 2016-08-28 00:03:54 +03:00
d28f0b259a Generate better UID 2016-08-27 23:15:32 +03:00
6894d2c5d2 Allow to pass project file path to run command instead project dir 2016-08-27 20:32:21 +03:00
7b474c69ab PyLint fix 2016-08-27 19:30:53 +03:00
e232810325 Improve output in non verbose mode 2016-08-27 19:30:38 +03:00
4ba3625987 Update comment header for platformio.ini 2016-08-27 12:14:43 +03:00
99dfc23d96 Update supported manifests for Library Registry 2016-08-26 20:22:32 +03:00
84abc5764d Improve docs for library.json build field 2016-08-26 19:11:35 +03:00
8e09d637e7 Improve compatibility with Arduino 1.0 library format 2016-08-26 18:52:44 +03:00
37dff70cd6 Replace TYPE for board/platform with ID // Resolve #459 2016-08-26 16:09:52 +03:00
3e403ef9ee Add example with Library Manager 2016-08-26 14:57:21 +03:00
8d8bfd5587 Document version option for dependencies field in library.json 2016-08-26 14:44:45 +03:00
054790d161 Use stderr stream to write errors instead env.Exi() 2016-08-26 14:39:23 +03:00
c637729eae Rename `platformio serialports command to platformio device` 2016-08-26 14:25:50 +03:00
6e26ce8162 Better exception handling 2016-08-26 12:30:37 +03:00
f9e8ea66ea Remove `enable_prompts` setting. Now, all PlatformIO CLI is non-blocking! 2016-08-26 11:46:59 +03:00
de62e5082e Handle WindowsError when can't create .pioenvs directory 2016-08-26 01:42:05 +03:00
6ff99e4ddd Show error when boards manifest doesn't contain required fields 2016-08-26 01:29:26 +03:00
8cc54bf9be Switch to SSL PlatformIO API 2016-08-25 22:57:52 +03:00
012d33146c Use HTTPS PlatformIO API 2016-08-25 21:02:20 +03:00
1e4ea2dde9 Minor fix 2016-08-25 20:47:39 +03:00
1aabf0ebf5 Build System: Attach custom Before/Pre and After/Post actions for targets // Resolve #542 2016-08-25 20:40:14 +03:00
f51781c763 Add new article 2016-08-25 18:47:39 +03:00
b1cebe9e0e Fix unicode issue when search libraries 2016-08-25 14:21:46 +03:00
a352318f0f Update broken links to issues 2016-08-25 14:18:09 +03:00
62f1f93ad9 Update history of development platforms 2016-08-25 14:14:58 +03:00
3979ee33a3 Update copyrights 2016-08-25 00:12:03 +03:00
a57ed93923 Add information about C/C++ Index Rebuiding 2016-08-24 23:50:15 +03:00
aa19b1c424 Show error message when broken JSON manifest is found 2016-08-24 23:03:41 +03:00
0751c966c4 Use base name of library path instead manifest name 2016-08-24 20:54:54 +03:00
e8643528ea Test updates for PubSubClient library 2016-08-24 15:18:45 +03:00
69773fc838 Fix bug with Arduino based library where utility folder is used 2016-08-24 13:47:16 +03:00
40dbc6c849 Update lib test according to renaming Json lib to ArduinoJson 2016-08-24 13:41:03 +03:00
35cc57f263 Skip headers from examples 2016-08-24 00:28:22 +03:00
e6fc0e30ec Update docs for Library Manager 2016-08-24 00:26:28 +03:00
f1a14a03af Update pio platform command titles 2016-08-23 14:37:14 +03:00
5a63060699 Improve support for "library.properties" manifest 2016-08-23 13:40:32 +03:00
81d3b7fd11 Sync with the latest examples 2016-08-23 11:14:22 +03:00
b3abee8513 Ignore broken libraries; show link to the docs with lib_compat_mode // Resolve #759 2016-08-23 00:09:28 +03:00
d420e956e9 Mode "include" and "exclude" options to "export" field for the library.json 2016-08-22 00:03:27 +03:00
f5b4cb0ae8 Refactor "test_ignore" to accepts test names separated with comma // Resolve #753 2016-08-21 19:32:11 +03:00
0f7f301787 Improve unit testing output; fix issue with non-ascii output from embedded device // Issue #753 2016-08-21 19:27:38 +03:00
3426c01955 Fix invalid example with converting INO to CPP in the Atom docs // Resolve #757 2016-08-21 13:35:31 +03:00
1a517995a0 Rename "quiet" option to "silent" 2016-08-21 00:31:58 +03:00
e51b8d2f61 Cleanup AppVeyor Config 2016-08-19 17:08:31 +03:00
5c105a9bcb Fix CI test 2016-08-18 23:51:32 +03:00
55c627e4ee Minor changes 2016-08-18 20:29:00 +03:00
ec897d217c Update issue template 2016-08-18 20:26:29 +03:00
6f8614906d New article "Installing PlatformIO on Arch Linux" 2016-08-18 19:01:34 +03:00
dab81291eb Extend win hooks for ASPPCOM 2016-08-18 18:51:23 +03:00
fb6df55326 Don't notify ikravets 2016-08-18 16:52:31 +03:00
9b292e0614 Notify only when build changes status 2016-08-18 16:08:47 +03:00
f25e166ea8 Push notification to Slack 2016-08-18 16:05:49 +03:00
ef6952b27a Add Contents to library index page 2016-08-18 15:11:26 +03:00
b0d74c4640 Extend "examples" default value 2016-08-18 15:02:56 +03:00
512ea68dce Disable email notification 2016-08-18 14:47:21 +03:00
d410696729 Push notification to Slack 2016-08-18 14:29:54 +03:00
d630aa4f37 Check CI SRC paths passed via system environment variable 2016-08-18 12:18:27 +03:00
0e9050f2e8 Update lib search test 2016-08-18 00:30:51 +03:00
f01b858e90 Minor fix 2016-08-18 00:13:29 +03:00
d40d1e4f2b Rename url to homepage 2016-08-18 00:08:55 +03:00
b2e6d16221 Don't use shell for Windows and exec commands 2016-08-17 17:38:20 +03:00
64cc353455 Implement build hooks for Windows 2016-08-17 17:36:05 +03:00
9b08244ed8 Add article "ESP8266 Mobile Rick Roll Captive Portal" 2016-08-16 20:10:03 +03:00
797688dedd Fix EXTRA_LIB_BUILDERS 2016-08-16 17:27:11 +03:00
2a3a12b816 Handle relative paths for "lib_extra_dirs" // Resolve #749 2016-08-16 13:02:57 +03:00
8d8a0efdb9 Refactor long command hook for GCC and Windows CMD limitations 2016-08-15 20:14:09 +03:00
94299139cf Allow to pass extra "EXTRA_LIB_BUILDERS" for Library Builder 2016-08-15 19:49:15 +03:00
bb01ec9a1e Fix test for lib command 2016-08-15 19:24:31 +03:00
317c7272cd Explain how to use "uploading" with CI command // Resolve #686 2016-08-13 10:33:03 +03:00
d28e8a06b5 Add new article 2016-08-11 20:55:18 +03:00
9a959a0aa4 Cover maintenance operations with tests 2016-08-11 19:20:54 +03:00
31fdc76f25 Implement "LIBSOURCE_EXTRA" environment variable for extra libraries 2016-08-11 15:23:36 +03:00
3eadadf638 Improve CI command for Windows OS 2016-08-11 12:41:03 +03:00
30f6d456af Update platform command 2016-08-11 10:54:28 +03:00
d3e2b2bde4 Cover CI command with tests 2016-08-10 23:00:46 +03:00
473c821132 Cover init command with tests 2016-08-10 21:58:12 +03:00
3ba0d25f27 Fix updating project libraries // Resolve #745 2016-08-10 19:39:17 +03:00
9299b6716a Fix broken link to Unit Testing examples 2016-08-10 17:50:02 +03:00
6ac2abfc3b Fix docs warning 2016-08-10 17:15:51 +03:00
4b50a9c721 Skip Calculator example from generic test 2016-08-10 16:10:26 +03:00
ef0322019f Add Unit Testing example with Calculator // Issue #519 2016-08-10 15:51:53 +03:00
a395b171e3 Add Support for local ("PC") unit tests // Resolve #519 2016-08-10 15:50:01 +03:00
9177c6f210 Fix typo with known default options for [platformio] section 2016-08-09 23:44:40 +03:00
0264c4eeea Remove debug code 2016-08-09 17:12:30 +03:00
f1e65869f3 Remove "#" from platformio.ini docs 2016-08-09 16:55:14 +03:00
bda61d0ae2 Use semicolons for comment in INI File 2016-08-09 16:53:51 +03:00
55c1a90fc9 Remove unused import 2016-08-09 15:24:56 +03:00
0ab7d53991 Add example with Microbit 2016-08-09 15:13:55 +03:00
5ba20fc6ed Remove prompts from init command; Update template for Project Configuration File 2016-08-09 15:10:52 +03:00
92e82941fe Hint about hard reset for the boards with mbed bootloader // Issue #709 2016-08-09 14:37:44 +03:00
fe76192590 Automatically detect Microbit disk for upload // Issue #709 2016-08-09 14:25:05 +03:00
20be83ef95 Add support for BBC micro:bit board that is built on the ARM mbed and Nordic nrf51 platform // Resolve #709 2016-08-09 14:09:21 +03:00
97c58c8dca Add CI for macOS 2016-08-09 10:30:21 +03:00
239be03a54 Minor changes 2016-08-08 23:25:44 +03:00
70df551eef Fix platformio test command // Resolve #743 2016-08-08 23:10:57 +03:00
7f7cf5281f Show package name when updating 2016-08-08 20:04:47 +03:00
8b53f6e320 Move Unit Testing to the TOP level 2016-08-08 19:51:15 +03:00
20e7525118 Update links to Library Dependency Finder 2016-08-08 19:44:31 +03:00
f9ead74b88 Fix issue when check that LibBuilder contains source file by path 2016-08-08 18:57:18 +03:00
1efea0bd27 Mark "lib_deps" as PIO3; first development "alpha" 2016-08-08 16:06:12 +03:00
655efb1fb6 Merge branch 'feature/platformio-30' into develop 2016-08-08 16:04:20 +03:00
65e0daa06d Project dependencies per build environment using "lib_deps" option // Resolve #413 2016-08-08 16:03:17 +03:00
0b749c3888 Warn about unknown options in project configuration file // Resolve #740 2016-08-08 14:00:23 +03:00
80c7a8d1ce Warn about unknown options in project configuration file // Resolve #740 2016-08-08 14:00:01 +03:00
098653aac7 Better explanation with dependencies 2016-08-05 18:52:24 +03:00
db267513ca Implement custom "rmtree"; resolve issue with Windows and .git 2016-08-05 18:43:20 +03:00
c64354ebcc Add PlatformIO Plus info 2016-08-05 18:20:09 +03:00
6970c95aca Fix command lib test 2016-08-05 17:59:10 +03:00
4fc0ab0649 Fix updating from VCS 2016-08-05 17:39:32 +03:00
39542c4ef2 Improve platform manager when VCS is used 2016-08-05 17:02:39 +03:00
bf727d6905 Update article links 2016-08-05 16:23:39 +03:00
c1178277ca Print coverage report to terminal 2016-08-05 16:04:10 +03:00
976fc8975a Fix coverage reporting 2016-08-05 15:00:15 +03:00
795b8be386 Update examples 2016-08-05 13:57:13 +03:00
e9ed55b6e9 Improve updating of development platforms 2016-08-05 13:51:28 +03:00
dad8f9d80e Show valid text when "Checking" packages version 2016-08-05 13:10:27 +03:00
b714fb1be0 Update OpenOCD uploading flags // Issue #732 2016-08-04 18:37:52 +03:00
179a971770 Fix OpenOCD upload command for atmelsam // Issue #732 2016-08-04 12:00:38 +03:00
d27c31a389 Formatter: allow multiline lambdas 2016-08-04 00:55:07 +03:00
941c7ffd07 Remove Python 2.6 code 2016-08-03 23:40:04 +03:00
87d0ead203 Format code with pep8 style 2016-08-03 23:38:20 +03:00
0c9d539a92 Update copyrights 2016-08-03 22:18:51 +03:00
306b77a3f4 Extend a clean target 2016-08-03 22:01:11 +03:00
823e8374b1 Don't show tools in processing output 2016-08-03 20:21:23 +03:00
6b064cb915 Refactor DevPlatform to PioPlatform 2016-08-03 19:58:35 +03:00
11c8ab52f6 Improve "update" command; add test 2016-08-03 17:43:54 +03:00
82a7e67bec Don't show verbose info for LDF when is a clean target 2016-08-03 17:06:30 +03:00
98a6449b06 Show hint about verbosity mode 2016-08-03 01:04:40 +03:00
fbadf83997 Use stable docs 2016-08-03 00:26:48 +03:00
64b8df6d81 Merge branch 'develop' into feature/platformio-30
* develop: (21 commits)
  Use stable docs
  Version bump to 2.11.2 (issues #500, #533, #732, #731, #737, #733, #438, #722, #52, #725)
  Update project configuration template
  Use stable docs
  Implement firmware merging with base firmware for Nordic nRF51 development platform // Resolve #500 , Resolve #533
  Fix firmware uploading to Atmel SAMD21-XPRO board using ARM mbed framework // Resolve #732
  Add firmware merging process for nordicnrf51 // Issue #533, #500
  Add OpenOCD as an alternative upload method for atmelsam platform // Issue #732
  Sync flags parser with PlatformIO 3.0 branch // Resolve #738
  Update ``udev`` rules for the new STM32F407DISCOVERY boards // Resolve #731
  Add explanation about "Failed to find MSBuild toolsets directory"
  Add support for local "--echo" for Serial Port Monitor // Resolve #733
  Update history
  Improve support for Microchip PIC32 development platform and ChipKIT boards // Resolve #438
  Fix Project Generator for ESP8266 and ARM mbed based projects
  Switch to gcc-built LwIP library for espressif platform
  Push 2.11.2.dev2
  Fix linking process for microchippic32 platfrom // Issue #438
  Improve Project Generator for PlatformIO IDE (fixes incorrect linter errors)
2016-08-03 00:24:59 +03:00
edc04987d3 Use stable docs 2016-08-02 21:31:12 +03:00
a87c0c8a7a Merge branch 'release/v2.11.2' 2016-08-02 21:25:50 +03:00
40b6072163 Merge branch 'release/v2.11.2' into develop 2016-08-02 21:25:50 +03:00
f15bb1d545 Version bump to 2.11.2 (issues #500, #533, #732, #731, #737, #733, #438, #722, #52, #725) 2016-08-02 21:25:28 +03:00
0b0064afd0 Update project configuration template 2016-08-02 21:21:08 +03:00
4f2c207bb3 Use stable docs 2016-08-02 21:13:58 +03:00
9d1128af51 Implement firmware merging with base firmware for Nordic nRF51 development platform // Resolve #500 , Resolve #533 2016-08-02 21:06:50 +03:00
855c28d956 Fix firmware uploading to Atmel SAMD21-XPRO board using ARM mbed framework // Resolve #732 2016-08-02 21:02:39 +03:00
1cb8d61787 Stop Supporting Python 2.6 2016-08-02 20:40:54 +03:00
677cff1230 Stop Supporting Python 2.6 2016-08-02 20:35:28 +03:00
bd430e5afd Makefile with useful targets 2016-08-02 20:19:52 +03:00
758396c9ea PlatformIO Library Manager 3.0 // Resolve #588 , Resolve #414, Resolve #498, Resolve #475, Resolve #410, Resolve #461, Resolve #361, Resolve #507, Resolve #554 2016-08-02 19:10:29 +03:00
a588e88fec Add firmware merging process for nordicnrf51 // Issue #533, #500 2016-08-02 17:32:48 +03:00
5b5a63cb5f Use codecov after success script 2016-08-02 15:50:04 +03:00
26dae8ee94 Skip some tests from coverage 2016-08-02 15:45:05 +03:00
ca2adbac13 Add OpenOCD as an alternative upload method for atmelsam platform // Issue #732 2016-08-02 14:07:12 +03:00
bfab3dac81 Measure code coverage by tests // Resolve #101 2016-08-02 14:04:32 +03:00
e60c2a6ba1 Improve base package manager; VCS and package ID support 2016-08-01 17:05:48 +03:00
e3bf12f65c Rename test for platform command 2016-08-01 14:50:03 +03:00
c728b91914 Check development version automatically 2016-08-01 14:25:11 +03:00
e5b76687a8 Minor changes for PyLint 2016-08-01 00:32:38 +03:00
ef535e399e Cleanup docs 2016-08-01 00:21:52 +03:00
34231327b7 Minor fixes 2016-08-01 00:19:43 +03:00
e49994e205 Fix PyLint warning 2016-08-01 00:16:52 +03:00
513577958f Introduce "Library Dependency Finder" 2016-08-01 00:14:22 +03:00
df0373c4fa Sync flags parser with PlatformIO 3.0 branch // Resolve #738 2016-07-31 20:49:59 +03:00
4c10c85937 Update `udev` rules for the new STM32F407DISCOVERY boards // Resolve #731 2016-07-31 20:21:55 +03:00
22e67e6fdd Rename "lib_compat_level" to "lib_compat_mode" 2016-07-31 15:46:57 +03:00
74af8a5c39 Handle "dependencies" from library and project when build libraries // Issue #709 2016-07-31 00:00:58 +03:00
b364389541 If platformio is installed via brew, show it for upgrade 2016-07-30 19:46:08 +03:00
e6d3f6bc3f Add explanation about "Failed to find MSBuild toolsets directory" 2016-07-30 14:10:15 +03:00
e821a438fe Add support for local "--echo" for Serial Port Monitor // Resolve #733 2016-07-28 23:08:42 +03:00
34b1f3b0a1 Handle includes from CPPPATH for PlatformIOLibBuilder 2016-07-28 22:15:03 +03:00
5c53b93a49 Update history 2016-07-28 18:49:22 +03:00
c61ff611fb Improve support for Microchip PIC32 development platform and ChipKIT boards // Resolve #438 2016-07-28 18:47:20 +03:00
ef9e1a0170 Fix Project Generator for ESP8266 and ARM mbed based projects 2016-07-28 18:44:29 +03:00
3a7032ec9c Show a warning about Circular Dependencies 2016-07-28 17:29:53 +03:00
339acab917 PyLint fix 2016-07-28 16:27:48 +03:00
8c5fabe411 Avoid infinite loop when we've already searched for dependencies 2016-07-28 16:13:49 +03:00
269967a809 Typo fix 2016-07-28 14:39:38 +03:00
b177bb5bfb Remove debug code; a few bugfixes 2016-07-28 14:09:29 +03:00
3c795a215e Fix typo 2016-07-28 02:08:30 +03:00
e3e6676420 Refactor Library Dependency Finder 2016-07-28 01:54:09 +03:00
be85eb3e4a Refactor Library Dependency Finder 2016-07-28 01:52:18 +03:00
98f8c6b25a Switch to gcc-built LwIP library for espressif platform 2016-07-27 14:59:00 +03:00
262b12524b Push 2.11.2.dev2 2016-07-26 20:45:00 +03:00
826b518048 Fix linking process for microchippic32 platfrom // Issue #438 2016-07-26 20:11:50 +03:00
187315fc08 Allow to disable library archiving ("*.ar") // Resolve #719 2016-07-24 20:04:09 +03:00
01c0b45ea2 Introduce "lib_compat_level" option for project configuration file 2016-07-24 18:17:23 +03:00
dfc594fc39 Improve Project Generator for PlatformIO IDE (fixes incorrect linter errors) 2016-07-23 23:11:50 +03:00
2892cb8c2f Fix cmd_init test 2016-07-22 18:16:26 +03:00
fc9c66b0c3 Update examples 2016-07-22 18:03:35 +03:00
6900052ecd Reorder command options 2016-07-22 18:02:04 +03:00
0b862735b2 Push 2.11.2.dev0 2016-07-22 17:23:49 +03:00
a1d9bc7cee Fix ElfToHex builder for microchippic32 2016-07-22 16:43:02 +03:00
1738f44847 Simplify platformio.ini default template 2016-07-19 23:51:22 +03:00
30733e8376 Improve package caching for PkgManager 2016-07-19 23:49:50 +03:00
1029233ec7 Merge branch 'develop' into feature/platformio-30
* develop:
  Update docs for Teensy USB Features // Issue #722
  Implement Teensy 2.0 USB functionality (HID, SERIAL_HID, DISK, MIDI, etc.) // Resolve #722
  Add support for Pinoccio Scout board // Resolve #52
  Fix broken LD Script for Element14 chipKIT Pi board // Resolve #725  Resolve #726
  Fix USB flags processing for teensy platform // Issue #722
  Add Pinoccio board // Issue #52
  Minor improvements for CLion docs
  Improved docs for integration with CLion IDE
  Version bump to 2.11.1 (issues #472, #629, #710, #711, #712, #713, #718)
  Typo fix
  Add "udev" rules for OpenOCD CMSIS-DAP adapters // Resolve #718
  Update history
  Ignore "[platformio]" section from custom project configuration CI
  Bump to 2.11.1b1
  Add Arduino M0 Pro and Tian to the examples // Issue #472
  Fix issue when `pioenvs` folder doesn't exist
  Add more info about `.pioenvs` directory
  Improve CMSIS selection for SAMD21 boards
  Improve support for SAMD21 based boards
  Add contributing guidelines
2016-07-18 22:43:24 +03:00
f16c05c429 Update docs for Teensy USB Features // Issue #722 2016-07-18 22:20:04 +03:00
d7fa255166 Implement Teensy 2.0 USB functionality (HID, SERIAL_HID, DISK, MIDI, etc.) // Resolve #722 2016-07-18 21:06:45 +03:00
60b3fef37a Add support for Pinoccio Scout board // Resolve #52 2016-07-18 20:39:04 +03:00
7b8fb77250 Fix broken LD Script for Element14 chipKIT Pi board // Resolve #725 Resolve #726 2016-07-18 20:36:24 +03:00
1127914512 Fix broken import 2016-07-18 15:47:38 +03:00
5b68d34764 Allow to load PlatformIO project using passed directory 2016-07-18 15:36:08 +03:00
79a4a943dc Fix USB flags processing for teensy platform // Issue #722 2016-07-18 14:52:25 +03:00
7ad8d08037 Add Pinoccio board // Issue #52 2016-07-18 12:14:48 +03:00
f10202c00b Refactor base package manager; Full VCS support as external package item 2016-07-18 01:38:35 +03:00
7b3a235bd7 Don't duplicate source code to .pioenvs directory 2016-07-17 19:19:53 +03:00
e264788f8e Fix non renamed PLATFORM variable 2016-07-17 16:36:05 +03:00
49f5c1d078 Fix PyLint "line too long" warning 2016-07-17 16:19:24 +03:00
8eed54ca45 Refactor PLATFORM and FRAMEWORK build variables with PIO prefix 2016-07-17 16:05:28 +03:00
daac1b2590 Print human-readable information when processing environments without // Resolve #721 2016-07-17 00:48:59 +03:00
70031040b3 Rename test --ignore option to --skip 2016-07-16 18:00:55 +03:00
da6f424b11 Export root "env" to the extra script 2016-07-16 00:19:56 +03:00
02e883b55c Implement "lib_extra_dirs" option for project environment // Resolve #537 2016-07-15 23:51:33 +03:00
9838aef6b8 Check library compatibility with project environment before building // Resolve #415 2016-07-15 23:06:10 +03:00
2bfa3517f0 Add license field to library.json // Resolve #522 2016-07-15 19:57:55 +03:00
06494729f1 Fix for Python 2.6 2016-07-15 19:40:11 +03:00
8726f8317c Typo fix 2016-07-15 18:59:10 +03:00
c7d9ab8474 Allow to use extra build options as array for library.json // Issue #289 2016-07-15 18:41:16 +03:00
4997528f6a Handle specific extra build flags from library.json // Resolve #289 2016-07-15 16:12:07 +03:00
4b622b8603 Improve library builder for Arduino lib structure 2016-07-13 13:24:44 +03:00
4f57cc52d4 Minor improvements for CLion docs 2016-07-13 11:56:20 +03:00
ba23475425 Improved docs for integration with CLion IDE 2016-07-13 11:49:52 +03:00
f88466f3cd Merge branch 'release/v2.11.1' 2016-07-12 19:37:00 +03:00
60be939a1f Merge branch 'release/v2.11.1' into develop 2016-07-12 19:37:00 +03:00
2dd01247e1 Version bump to 2.11.1 (issues #472, #629, #710, #711, #712, #713, #718) 2016-07-12 19:34:14 +03:00
77a4d3f773 Typo fix 2016-07-12 19:29:49 +03:00
6cbd286836 Add "udev" rules for OpenOCD CMSIS-DAP adapters // Resolve #718 2016-07-12 19:26:33 +03:00
b447e0aeab Update history 2016-07-11 23:08:08 +03:00
b165c3f543 Ignore "[platformio]" section from custom project configuration CI 2016-07-11 22:40:37 +03:00
d246ef9a2e Bump to 2.11.1b1 2016-07-11 21:04:40 +03:00
8fd553fbfc Add Arduino M0 Pro and Tian to the examples // Issue #472 2016-07-11 19:52:47 +03:00
f4cebfdbae Fix issue when pioenvs folder doesn't exist 2016-07-11 19:44:36 +03:00
2fdc57055b Add more info about .pioenvs directory 2016-07-11 19:34:36 +03:00
03b0b61aa1 Improve CMSIS selection for SAMD21 boards 2016-07-11 19:26:07 +03:00
3984f80bae Improve support for SAMD21 based boards 2016-07-11 19:12:10 +03:00
8427b9c7ee Create BasePkgManager for PlatformManager and Library Manager 2016-07-11 13:27:30 +03:00
581fd356cd Add contributing guidelines 2016-07-10 19:15:55 +03:00
d88997c418 Typo fix 2016-07-09 19:30:02 +03:00
d6b38dafc6 Merge branch 'develop' into feature/platformio-30
* develop:
  Remove debug info
  Add "Rebuild C/C++ Project Index" target to CLion and Eclipse IDEs
  Iterating the dictionary directly instead of calling .keys()
  Iterating the dictionary directly instead of calling .keys()
  Add example dynamic `build_flags`
  Add new articles
  Update examples
2016-07-09 19:01:43 +03:00
0056651447 Remove debug info 2016-07-09 18:49:35 +03:00
a0d9173b4f Add "Rebuild C/C++ Project Index" target to CLion and Eclipse IDEs 2016-07-09 18:44:45 +03:00
f12c721f44 Iterating the dictionary directly instead of calling .keys() 2016-07-09 15:26:38 +03:00
a73a710364 Iterating the dictionary directly instead of calling .keys() 2016-07-09 15:16:42 +03:00
e33e950712 Add example dynamic build_flags 2016-07-09 14:38:49 +03:00
f767feeef9 Add new articles 2016-07-07 00:26:33 +03:00
fd924f29f3 Update examples 2016-07-06 15:28:39 +03:00
13112ad6d4 Fix issue when development platform doesn't support frameworks 2016-07-06 15:27:46 +03:00
b043a2258f Merge branch 'develop' into feature/platformio-30
* develop: (27 commits)
  Update boards list
  Add Arduino M0 as a separate board
  Update history
  Update microchippic32 platform and boards
  Fix PyLint warning
  Keep user changes for ".gitignore" file when re-generate/update project data
  Documented uploading of EEPROM data
  Push 2.11.1.dev1
  Automatically install dependent upload tools // Issue #472
  Split source files to HEADERS and SOURCES when generate project for Qt Creator IDE // Resolve #713
  Improve project generator for CLion IDE
  Fix missing trailing ``\`` for the source files list when generate project for Qt Creator IDE // Resolve #711
  * Fix missed ``--boot`` flag for the firmware uploader for ATSAM3X8E Cortex-M3 MCU based boards (Arduino Due, etc) // Resolve #710
  Initial support for Arduino M0/Tian boards // Issue #472
  Update project template for Qt Creator // Issue #711
  Fix missed --boot flag for sam3x uploader // Issue # 710
  Auto-remove project cache when PlatformIO is upgraded
  Version bump to 2.11.0 (issues #472, #520, #614, #620, #685, #698, #699)
  Update history
  Update espressif platform according to the new framework version
2016-07-06 15:04:30 +03:00
7f47a2fd25 Update boards list 2016-07-06 13:27:36 +03:00
8fe8318c77 Add Arduino M0 as a separate board 2016-07-06 11:02:36 +03:00
ae81ec043d Update history 2016-07-05 17:40:00 +03:00
9ba96d3673 Update microchippic32 platform and boards 2016-07-05 17:06:14 +03:00
db204941ed Fix PyLint warning 2016-07-05 13:28:22 +03:00
5cd3f9d84d Keep user changes for ".gitignore" file when re-generate/update project data 2016-07-05 13:18:31 +03:00
9160e61ac7 Documented uploading of EEPROM data 2016-07-05 12:34:37 +03:00
63ae732e72 Push 2.11.1.dev1 2016-07-05 00:14:00 +03:00
ac9c3f88f9 Automatically install dependent upload tools // Issue #472 2016-07-05 00:11:48 +03:00
52f1502051 Split source files to HEADERS and SOURCES when generate project for Qt Creator IDE // Resolve #713 2016-07-04 23:42:19 +03:00
e8acc9ca39 Improve project generator for CLion IDE 2016-07-04 23:30:34 +03:00
935f7cd5c3 Fix missing trailing `\` for the source files list when generate project for Qt Creator IDE // Resolve #711 2016-07-04 20:36:02 +03:00
e8290054c2 * Fix missed `--boot` flag for the firmware uploader for ATSAM3X8E Cortex-M3 MCU based boards (Arduino Due, etc) // Resolve #710 2016-07-04 20:35:29 +03:00
2c7c74743d Initial support for Arduino M0/Tian boards // Issue #472 2016-07-04 19:28:02 +03:00
4dd90d5493 Update project template for Qt Creator // Issue #711 2016-07-04 18:01:49 +03:00
241ad8174f Fix missed --boot flag for sam3x uploader // Issue # 710 2016-07-04 13:40:43 +03:00
98f5f73a41 Auto-remove project cache when PlatformIO is upgraded 2016-06-29 13:17:06 +03:00
62ad72fb11 Merge branch 'release/v2.11.0' 2016-06-28 18:04:20 +03:00
4552931b95 Merge branch 'release/v2.11.0' into develop 2016-06-28 18:04:20 +03:00
39f9789fa1 Version bump to 2.11.0 (issues #472, #520, #614, #620, #685, #698, #699) 2016-06-28 18:04:08 +03:00
8d7ff7f37e Update history 2016-06-28 18:01:08 +03:00
59606410f4 Update espressif platform according to the new framework version 2016-06-28 14:10:18 +03:00
486529b112 Add initial support for Arduino M0 Pro board // Issue #472 2016-06-28 11:27:49 +03:00
b16938937b Merge pull request #706 from jphollanti/doc_updates
Doc updates
2016-06-26 21:43:22 +03:00
2ba3603a3d add command example to create library examples 2016-06-26 11:29:46 +03:00
f6b9fd02b2 Added mention about building docs to README.rst 2016-06-26 11:19:13 +03:00
85becf861f Add a mention about library managers 24 hour update cycle 2016-06-26 11:12:02 +03:00
7344828cf7 Update history 2016-06-25 13:34:51 +03:00
51a9565a72 Refactored lib_force and lib_ignore logic 2016-06-25 13:23:24 +03:00
bc30bf5566 Typo fixes 2016-06-24 12:54:01 +03:00
dd111aac4a Library deep search for dependency finder 2016-06-23 23:25:13 +03:00
476b43d539 Fix issue with super() 2016-06-23 21:39:24 +03:00
1d919e5874 New articles 2016-06-23 20:21:48 +03:00
1089c55b26 Update history 2016-06-23 17:34:00 +03:00
d4a866414f Minor fixes 2016-06-23 15:51:08 +03:00
2ed00064e2 Fix PyLint warning 2016-06-22 23:58:42 +03:00
1d7add213e Embedded Board compatibility with more than one development platform // Resolve #456 2016-06-22 23:21:36 +03:00
3572b60afd Show detailed build information about dependent libraries // Resolve #617 2016-06-22 23:17:02 +03:00
f8db1d11a7 New Library Build System: intelligent dependency finder that interprets C Preprocessor conditional macros // Resolve #432 2016-06-22 21:25:44 +03:00
bb7bf4e91b Fix issue with board extraFlags 2016-06-22 19:56:22 +03:00
51dd86e6da Add new SAMD21 boards // Issue #520, #620 2016-06-21 15:03:09 +03:00
4736bfeea6 Fix missed build.extra_flags for the board 2016-06-20 21:47:13 +03:00
d656d6d594 Duplicate source files to pioenvs 2016-06-20 21:37:10 +03:00
76e07d5012 Refactor source files finder 2016-06-20 20:33:53 +03:00
037b520b2c Merge branch 'develop' into feature/platformio-30
* develop:
  Use env.Flatten to manipulate with CPPDEFINES
  Update name of the OpenEnergyMonitor board // Resolve #699
  Fix PyLint warning
  Remove duplicated flags // Issue #698
  Disable dependancy info
  Revert back previous LINKFLAGS
  Better removing unnecessary flags using ``build_unflags`` option // Resolve #698
  Fix unnecessary uppercase for target includes
2016-06-19 19:21:07 +03:00
748437ef7a Use env.Flatten to manipulate with CPPDEFINES 2016-06-18 23:37:58 +03:00
d219999892 Update name of the OpenEnergyMonitor board // Resolve #699 2016-06-18 13:26:04 +03:00
53bd1df8e5 Fix PyLint warning 2016-06-18 01:15:15 +03:00
2b88ef134b Remove duplicated flags // Issue #698 2016-06-18 00:56:04 +03:00
2eca835ec7 Disable dependancy info 2016-06-18 00:53:23 +03:00
8d94a62b9c Revert back previous LINKFLAGS 2016-06-18 00:52:46 +03:00
4035b9ac6c Better removing unnecessary flags using `build_unflags` option // Resolve #698 2016-06-18 00:38:00 +03:00
8a13a18737 Fix PyLint warning 2016-06-16 00:53:19 +03:00
8a67ea9ca2 Allow to ignore tests using glob patterns // Issue #408 2016-06-16 00:36:04 +03:00
31a110c37f Fix unnecessary uppercase for target includes 2016-06-15 20:55:45 +03:00
6a08b2126f Merge branch 'develop' into feature/platformio-30
* develop:
  Fix issue with ``platformio init --ide`` command for Python 2.6
  Version bump to 2.10.3
  Fix issue with appending PIO version to Build Defines
  Add test for `init --ide eclipse`
  Version bump to 2.10.2 (issues #695)
  Fix firmware uploading to Arduino/Genuino 101 // Resolve #695
  Use $PLATFORM from build environment instead from the board config
  Update Intel ARC32 Arduino framework to v1.0.6 // Issue #695
  Update Intel ARC32 Arduino framework to v1.0.6
  Add support for ST Nucleo L031K6 board to ARM mbed framework
  Revert mcu option for genuino101
  Update intel_arc32 platform
  Update HISTORY.rst
  Fix upload size checker
  Process "$BUILD_UNFLAGS" variable
  Restore PIO macros if it was deleted by framework
2016-06-15 20:11:22 +03:00
47c238b1eb Fix issue with `platformio init --ide` command for Python 2.6 2016-06-15 19:30:37 +03:00
72c4db25f0 Merge branch 'release/v2.10.3' into develop 2016-06-15 18:46:57 +03:00
50f9186682 Merge branch 'release/v2.10.3' 2016-06-15 18:46:56 +03:00
2cd22f725e Version bump to 2.10.3 2016-06-15 18:46:41 +03:00
1cab0c168e Fix issue with appending PIO version to Build Defines 2016-06-15 18:42:56 +03:00
5dac4e3af6 Add test for init --ide eclipse 2016-06-15 18:42:25 +03:00
09032fb4a5 Merge branch 'release/v2.10.2' 2016-06-15 17:57:39 +03:00
48a8086519 Merge branch 'release/v2.10.2' into develop 2016-06-15 17:57:39 +03:00
c62a3f8ee6 Version bump to 2.10.2 (issues #695) 2016-06-15 17:57:28 +03:00
682e435ded Fix firmware uploading to Arduino/Genuino 101 // Resolve #695 2016-06-15 16:02:04 +03:00
cdcf075635 Use $PLATFORM from build environment instead from the board config 2016-06-15 14:56:31 +03:00
7e027db02b Update Intel ARC32 Arduino framework to v1.0.6 // Issue #695 2016-06-15 14:52:11 +03:00
4abaa67580 Update Intel ARC32 Arduino framework to v1.0.6 2016-06-15 14:48:46 +03:00
13d43425e5 Add support for ST Nucleo L031K6 board to ARM mbed framework 2016-06-15 14:48:27 +03:00
0ba315243b Revert mcu option for genuino101 2016-06-15 14:45:08 +03:00
1ac1e93bbf Add links to the main command and repo with examples 2016-06-15 14:36:10 +03:00
9655ca229f Update intel_arc32 platform 2016-06-15 14:31:07 +03:00
4b553dd659 Revert link to the issue 2016-06-15 14:13:43 +03:00
bb22a1297b Unit Testing for Embedded // Resolve #408 2016-06-15 14:10:42 +03:00
f5727af40e Fix upload size checker 2016-06-15 13:25:35 +03:00
b842a1d9b1 Update HISTORY.rst 2016-06-15 13:18:29 +03:00
2978133862 Fix upload size checker 2016-06-15 00:59:44 +03:00
7422b99b42 Process "$BUILD_UNFLAGS" variable 2016-06-14 20:53:30 +03:00
d04a7de26b Restore PIO macros if it was deleted by framework 2016-06-14 20:48:56 +03:00
4383f81c0f Restore PIO macros if it was deleted by framework 2016-06-14 20:47:25 +03:00
36a9bf69de Merge branch 'develop' into feature/platformio-30
* develop:
  Add support for ST Nucleo L031K6 board to ARM mbed framework
  Fix typo
  Fix pylint error
  Update history
  Improve linker flags handling for mbed
  Update examples
  Improve include selection for mbed boards with a custom vendor
  Re-submit a package to PyPI
  Version bump to 2.10.0 (issues #683, #687, #688, #689, #691)
  Pass PlatformIO macros with version to libs
  Update ARM mbed framework package to v121
  Typo fixes
  Move custom platform and board to separate page
  Add new ST Nucleo board
  Update build script for mbed framework
  Improve firmware uploading to Arduino Leonardo based boards // Resolve #691
  Typo fix
2016-06-14 20:10:50 +03:00
68d834fba0 Add support for ST Nucleo L031K6 board to ARM mbed framework 2016-06-14 19:59:17 +03:00
64c9004036 Fix typo 2016-06-14 19:54:27 +03:00
350fb885b8 Fix pylint error 2016-06-14 19:44:57 +03:00
8d03f2dc80 Update history 2016-06-14 19:41:34 +03:00
220dcd0f5c Improve linker flags handling for mbed 2016-06-14 19:29:54 +03:00
3671d7549d Update examples 2016-06-14 18:08:35 +03:00
a38910b381 Improve include selection for mbed boards with a custom vendor 2016-06-14 13:00:51 +03:00
941b8e84f5 Merge branch 'release/v2.10.1' 2016-06-13 21:32:07 +03:00
382c860d9b Merge branch 'release/v2.10.1' into develop 2016-06-13 21:32:07 +03:00
3dd51a442d Re-submit a package to PyPI 2016-06-13 21:31:17 +03:00
ed21e8c7b2 Merge branch 'release/v2.10.0' 2016-06-13 19:49:55 +03:00
2b6ba32b2c Merge branch 'release/v2.10.0' into develop 2016-06-13 19:49:55 +03:00
14f582faeb Version bump to 2.10.0 (issues #683, #687, #688, #689, #691) 2016-06-13 19:49:37 +03:00
768ac77ea2 Pass PlatformIO macros with version to libs 2016-06-13 19:46:54 +03:00
f75a7c91eb Update ARM mbed framework package to v121 2016-06-13 19:42:35 +03:00
104132c5d3 Typo fixes 2016-06-13 19:24:13 +03:00
3a315c5575 Move custom platform and board to separate page 2016-06-13 19:23:24 +03:00
91fb714250 Add new ST Nucleo board 2016-06-13 17:46:35 +03:00
10d868efa4 Update build script for mbed framework 2016-06-13 17:45:28 +03:00
3b8bc42266 Improve firmware uploading to Arduino Leonardo based boards // Resolve #691 2016-06-11 23:35:29 +03:00
41617f5560 Update documentation for the new decentralised development platforms // Resolve #479 2016-06-11 17:37:32 +03:00
9fb7f251f6 Typo fix 2016-06-11 16:49:25 +03:00
d8ca9d79c3 Merge branch 'develop' into feature/platformio-30
* develop:
  Improve checking for the program size before uploading // Issue #689
  Refactor board "hwid" option to "hwids"
  Add HWID for NodeMCU board
  Better checking of program size before uploading // Issue #689
2016-06-11 16:46:34 +03:00
5398dbef95 Improve checking for the program size before uploading // Issue #689 2016-06-11 15:39:06 +03:00
a4345cedc5 Refactor board "hwid" option to "hwids" 2016-06-11 15:12:27 +03:00
ba574667c7 Add HWID for NodeMCU board 2016-06-11 13:35:02 +03:00
f2c1e279c9 Better checking of program size before uploading // Issue #689 2016-06-11 00:55:38 +03:00
51ad0ed830 Merge branch 'develop' into feature/platformio-30
* develop:
  Check program size before uploading to the board // Resolve #689
  Fix issue with "-L relative/path" when parsing "build_flags" // Resolve #688
  Fix upload speed for OpenEnergyMonitor board
2016-06-11 00:36:27 +03:00
60ff546fec Check program size before uploading to the board // Resolve #689 2016-06-11 00:02:36 +03:00
f6088cbbe1 Fix issue with "-L relative/path" when parsing "build_flags" // Resolve #688 2016-06-10 19:54:17 +03:00
4b093dcdbb Fix upload speed for OpenEnergyMonitor board 2016-06-10 18:01:46 +03:00
4f39a2e3da Merge branch 'develop' into feature/platformio-30
* develop:
  Add support for STM32F0 boards for SPL framework // Issue #683
  Add support for emonPi the OpenEnergyMonitor system // Resolve #687
  Fix path to dfu util when it contains spaces.
2016-06-10 14:40:26 +03:00
c9020d4879 Add support for STM32F0 boards for SPL framework // Issue #683 2016-06-09 19:17:19 +03:00
c5b5e80de4 Add support for emonPi the OpenEnergyMonitor system // Resolve #687 2016-06-09 18:50:08 +03:00
c1a8fdb940 Fix path to dfu util when it contains spaces. 2016-06-09 11:39:44 +03:00
ff3e100b33 Minor fixes 2016-06-08 14:00:40 +03:00
e892473af7 Refactor AutodetectUploadPort 2016-06-08 13:47:03 +03:00
3a143270c2 Handle custom boards 2016-06-08 13:34:49 +03:00
0aa2db8e91 Merge branch 'develop' into feature/platformio-30
* develop:
  Add support for Arduboy DevKit

# Conflicts:
#	platformio/__init__.py
#	platformio/boards/misc.json
2016-06-06 18:14:53 +03:00
1c8de51054 Add support for Arduboy DevKit 2016-06-06 18:13:12 +03:00
d3ab58a487 Merge branch 'develop' into feature/platformio-30
* develop:
  Typo fix
  Version bump to 2.9.4
  Show "udev" warning only for the Linux OS while upload firmware
  Version bump to 2.9.3
  Notify Linux user to install PlatformIO udev rules
  Add new article
  Add support for Arduboy
  Remove unused imports
  Refactor firmware uploading to the embedded boards with SAM-BA bootloader
  Fix firmware uploading to the embedded boards with SAM-BA bootloader
  Add explanation about waiting for the new serial port
  Hook when new serial port is the same in boot mode
  Revert back some code linked with uploading to Leonardo/Due

# Conflicts:
#	platformio/__init__.py
#	platformio/boards/misc.json
#	platformio/builder/scripts/atmelavr.py
#	platformio/builder/scripts/atmelsam.py
#	platformio/builder/tools/pioupload.py
2016-06-06 14:33:09 +03:00
34c171f9fd Typo fix 2016-06-04 00:30:02 +03:00
9b2d49455a Merge branch 'release/v2.9.4' 2016-06-04 00:26:01 +03:00
730b2371df Merge branch 'release/v2.9.4' into develop 2016-06-04 00:26:01 +03:00
f1afa864cd Version bump to 2.9.4 2016-06-04 00:25:15 +03:00
439cd77db8 Show "udev" warning only for the Linux OS while upload firmware 2016-06-04 00:23:33 +03:00
4c35870dff Merge branch 'release/v2.9.3' 2016-06-03 21:04:04 +03:00
9f3624d26e Merge branch 'release/v2.9.3' into develop 2016-06-03 21:04:04 +03:00
ac4e8514db Version bump to 2.9.3 2016-06-03 21:03:48 +03:00
646123f9ab Notify Linux user to install PlatformIO udev rules 2016-06-03 20:57:20 +03:00
11ef9dbdcb Add new article 2016-06-03 20:40:24 +03:00
f3526b1d95 Add support for Arduboy 2016-06-03 20:14:37 +03:00
45d5159fe3 Remove unused imports 2016-06-03 18:46:28 +03:00
439e6b4ccf Refactor firmware uploading to the embedded boards with SAM-BA bootloader 2016-06-03 18:35:47 +03:00
fb08322c17 Fix firmware uploading to the embedded boards with SAM-BA bootloader 2016-06-03 13:58:51 +03:00
c815e0fadc Add explanation about waiting for the new serial port 2016-06-03 01:29:18 +03:00
190ffab76d Hook when new serial port is the same in boot mode 2016-06-03 01:16:16 +03:00
882bddf77e Revert back some code linked with uploading to Leonardo/Due 2016-06-03 00:42:52 +03:00
06e42dc689 Merge branch 'develop' into feature/platformio-30
* develop:
  Version bump to 2.9.2 (issues #641, #645, #648, #652, #664, #665, #666, #671, #674)
  Fix issue with ARM mbed framework when abstract class breaks compile for LPC1768 // Resolve #666
  Fix issue with ARM mbed framework and multiple definition errors   on FRDM-KL46Z board // Resolve #641
  List embedded boards in docs
  Fix multiple definition in mbed framework when using abstract class // Issue #641, #666
  Add "stlink" as the default uploader for STM32 Discovery boards // Resolve #665
  Implement grep serial ports for Windows
  Remove unused imports
  Minor improvements
  Fix PyLint's "misplaced-comparison-constant"
  Use $PROGNAME instead static name when looking for the firmware
  Update title of the article
  Add new articles
  Link Community Forums FAQ with Docs FAQ
  Grep for "/dev/cu.*" on OS X
  Skip grep search for serial ports on Windows machines
  Improve firmware uploading to Arduino Leonardo based boards
  Add MinGW to the PATH

# Conflicts:
#	docs/index.rst
#	docs/platforms/creating_board.rst
#	docs/projectconf.rst
#	docs/userguide/platforms/cmd_install.rst
#	platformio/__init__.py
#	platformio/builder/scripts/atmelavr.py
#	platformio/builder/scripts/atmelsam.py
#	platformio/builder/scripts/frameworks/mbed.py
2016-06-02 23:53:24 +03:00
4f1e1a38c9 Merge branch 'release/v2.9.2' 2016-06-02 20:57:09 +03:00
a9c02c9cbc Merge branch 'release/v2.9.2' into develop 2016-06-02 20:57:09 +03:00
331cfb5b54 Version bump to 2.9.2 (issues #641, #645, #648, #652, #664, #665, #666, #671, #674) 2016-06-02 20:56:52 +03:00
0b80ed6c2b Fix issue with ARM mbed framework when abstract class breaks compile for LPC1768 // Resolve #666 2016-06-02 20:47:09 +03:00
38967eab64 Fix issue with ARM mbed framework and multiple definition errors on FRDM-KL46Z board // Resolve #641 2016-06-02 20:45:43 +03:00
3ad1ad4ef1 List embedded boards in docs 2016-06-02 20:41:10 +03:00
0c8f469246 Fix multiple definition in mbed framework when using abstract class // Issue #641, #666 2016-06-02 17:27:52 +03:00
03d9351dec Add "stlink" as the default uploader for STM32 Discovery boards // Resolve #665 2016-06-02 16:41:04 +03:00
b3fc6617e5 Implement grep serial ports for Windows 2016-06-02 14:57:44 +03:00
1fdc2e3091 Remove unused imports 2016-06-02 01:13:34 +03:00
c773c8f5d5 Minor improvements 2016-06-02 01:09:05 +03:00
b188a05b69 Fix PyLint's "misplaced-comparison-constant" 2016-06-02 00:14:02 +03:00
d7ca3f15a4 Use $PROGNAME instead static name when looking for the firmware 2016-06-01 23:33:15 +03:00
406e240de1 Update title of the article 2016-06-01 22:14:37 +03:00
f3689ac157 Add new articles 2016-06-01 21:30:30 +03:00
ce72ee04f4 Link Community Forums FAQ with Docs FAQ 2016-06-01 20:36:13 +03:00
694121d49a Grep for "/dev/cu.*" on OS X 2016-06-01 20:35:05 +03:00
250b39bcc8 Skip grep search for serial ports on Windows machines 2016-06-01 20:26:10 +03:00
c74a2b4529 Improve firmware uploading to Arduino Leonardo based boards 2016-06-01 20:24:08 +03:00
ff7bc9092d Patch development platforms after upgrade process // Issue #479 2016-05-31 23:43:27 +03:00
d6b6fa2baf Install development platform from local dir and VCS(git, hg, svn) // Issue #479 2016-05-31 00:22:25 +03:00
bfd66deb37 Initial support for unit testing // Issue #408 2016-05-30 17:50:37 +03:00
bf149c075d Auto install too-unity for hardware unit testing 2016-05-30 14:31:58 +03:00
a1e7ce415b Add MinGW to the PATH 2016-05-30 13:15:19 +03:00
2ecc007615 Implement packages updating; other improvements to Package Manager // Issue #479 2016-05-29 23:28:50 +03:00
7a053e6df2 Merge branch 'develop' into feature/platformio-30
* develop:
  Automatically add source directory to "CPPPATH" of Build System
2016-05-29 18:17:34 +03:00
ab15bafc5b Automatically add source directory to "CPPPATH" of Build System 2016-05-29 18:09:21 +03:00
806f6cd2ab Fix platform installer if platform is already installed 2016-05-29 17:59:08 +03:00
b7921c7dcb Merge branch 'develop' into feature/platformio-30
* develop:
  Fixed configuration data for TI LaunchPads based on msp430fr4133 and msp430fr6989 MCUs // Resolve #676
2016-05-29 17:18:29 +03:00
f6014d2e52 Fixed configuration data for TI LaunchPads based on msp430fr4133 and msp430fr6989 MCUs // Resolve #676 2016-05-29 16:47:54 +03:00
420c93aaa3 Automatically install missed development platform for run command 2016-05-29 00:50:05 +03:00
23ef51a4e8 Update tests according new development platforms architecture // Issue #479 2016-05-28 22:51:33 +03:00
c73dd60bd1 Merge branch 'develop' into feature/platformio-30
* develop:
  Install tox manually
  Simplified documentation for Continuous integration with AppVeyor // Resolve #671
  Fix broken links to project examples
  Add stlink as the default uploader for disco boards // Issue #665
  Specify supported types of library repository
2016-05-28 20:42:50 +03:00
35a602cfef Install tox manually 2016-05-28 20:27:16 +03:00
6ecd86a244 Simplified documentation for Continuous integration with AppVeyor // Resolve #671 2016-05-28 20:22:15 +03:00
0cb28f906e Fix broken links to project examples 2016-05-28 19:09:24 +03:00
426389b255 Fix package removing when it is symbolically linked 2016-05-27 15:50:57 +03:00
825c60e2bd Automatically add SCons to the packages list if it is missed in platform manifest // Issue #479 2016-05-27 14:47:22 +03:00
46893e2f04 Stop build process when framework is used and board is not specified 2016-05-27 12:48:10 +03:00
567f9c06cc Disable platform auto-update (temporary) 2016-05-27 12:35:20 +03:00
9a1f1ddb8b Allow to install development platform from local directory // Issue #479 2016-05-26 22:33:17 +03:00
d68eb28629 Decentralized architecture for development platforms // Issue #479 2016-05-26 19:43:36 +03:00
1a305f2dd7 Add stlink as the default uploader for disco boards // Issue #665 2016-05-25 11:29:26 +03:00
cd22f5197b Specify supported types of library repository 2016-05-24 19:20:12 +03:00
349b159a7b Move boards and platforms to separate repos // Issue #479 2016-05-23 22:28:48 +03:00
b3d27b42ad Add key-binding for Toggle Build Panel 2016-05-18 15:46:59 +03:00
ab3a5331c1 New article by Pedro Minatel 2016-05-12 19:51:22 +03:00
9cbe12fbb8 New article by Pedro Minatel 2016-05-12 19:51:04 +03:00
056cc08d68 Fix issue with `src_filter` option for Windows OS // Resolve #652 2016-05-10 15:36:00 +03:00
69effbfedb Add new articles; Link to the Virtual IoT Meetup 2016-05-07 00:16:39 +03:00
d881dfb63c Typo fix 2016-05-06 19:52:27 +03:00
d89b2828e3 Add "Keep build panel visible" to PlatformIO IDE FAQ 2016-05-06 18:22:09 +03:00
75ca6c6e52 Add several new mbed boards 2016-05-06 15:26:56 +03:00
304c8b7184 Add support for MightyCore ATmega8535 board // Issue #585 2016-05-06 15:18:48 +03:00
3c46c17242 Typo fix 2016-05-04 15:51:45 +03:00
aca646e6b9 Use HTTP mirror for Package Manager in case with SSL errors // Resolve #645 2016-05-04 15:50:00 +03:00
b587927687 Sync examples 2016-05-04 15:11:15 +03:00
3edc336f62 Fix bug with "env_default" when "pio run -e" is used 2016-05-04 15:10:08 +03:00
eee6685c59 Update platforms liste README 2016-05-04 14:59:08 +03:00
76b5434157 Merge branch 'release/v2.9.1' into develop 2016-04-30 18:20:46 +03:00
a05f55554f Merge branch 'release/v2.9.1' 2016-04-30 18:20:45 +03:00
ea800f35b7 Version bump to 2.9.1 (issues #639) 2016-04-30 18:20:31 +03:00
4c70856505 Update history 2016-04-30 17:40:55 +03:00
cf7a3e377f Scan all prototypes with pointers 2016-04-30 17:35:41 +03:00
03c0033bed Optmize INO to CPP converter // Issue #639 2016-04-30 17:33:45 +03:00
238fa36212 Fix path for Windows for Preprocessor 2016-04-30 17:23:51 +03:00
f42c8f10f3 Improve INO to CPP converter // Issue #639 2016-04-30 17:19:18 +03:00
0a760ce9a4 Update number of supported development platforms 2016-04-30 13:36:20 +03:00
a77cbe5c16 Handle pointer to the prototypes while converting "*.ino" to ".cpp" // Resolve #639 2016-04-30 13:28:57 +03:00
475a521d0f Minor fixes 2016-04-28 21:19:31 +03:00
6a387359c3 Import examples as submodule 2016-04-28 18:49:50 +03:00
7498791520 Remove examples 2016-04-28 18:48:59 +03:00
f80b378a7b Merge branch 'release/v2.9.0' 2016-04-28 18:48:01 +03:00
9b86fdcfb0 Version bump to 2.9.0 (issues #438, #472, #480, #535, #559, #576, #585, #590, #596, #598, #599, #600, #601, #602, #604, #609, #610, #613, #616, #618, #626, #627, #631, #632, #633, #635, #636, #637) 2016-04-28 18:23:50 +03:00
4e2e8b9f07 Added support for new Arduino.org boards // Issue #472 2016-04-28 17:16:18 +03:00
69d6529f7e Add path to dfu-util for intel_arc32 // Issue #535 2016-04-28 16:48:58 +03:00
4f0b48174b Add support for MightyCore boards // Resolve #585 2016-04-28 16:27:53 +03:00
0cf78c4297 Added support for Generic ATTiny13 // Resolve #636 2016-04-28 15:48:17 +03:00
4c80a022c7 Use Unix path while converting INO to CPP // Issue #610 2016-04-28 14:52:53 +03:00
f5f9421894 Disable Simba from CI 2016-04-28 14:24:34 +03:00
f7a0374d2b New RTOS and build Framework named "Simba" // Resolve #412 2016-04-28 14:11:56 +03:00
ab48a2a8ff Merge branch 'develop' of https://github.com/ivankravets/platformio into develop
* 'develop' of https://github.com/ivankravets/platformio:
  Add missed COMMAND_LINE_TARGETS for microchippic32
  Remove program target code from microchippic32
2016-04-28 13:47:26 +03:00
8411769b0a Sync examples 2016-04-28 13:47:07 +03:00
9a9e177c41 Add missed COMMAND_LINE_TARGETS for microchippic32 2016-04-28 10:41:35 +03:00
e98cc7e500 Remove program target code from microchippic32 2016-04-28 10:28:20 +03:00
3529e9083d Update history 2016-04-27 17:51:50 +03:00
2cd12f30a4 Further work on Intel ARC 32-bit development platform // Issue #535 2016-04-27 17:48:26 +03:00
d6d8e7ec74 New article by Hackaday 2016-04-27 17:13:39 +03:00
b410eed57d Fix lint errors 2016-04-27 15:26:59 +03:00
53e5c483f7 Add info about intel_arc32 packages 2016-04-27 15:24:05 +03:00
7b131ebdde Initial support for intel_arc32 platform // Issue #535 2016-04-27 15:12:07 +03:00
7a0ad497da Improve microchippic32 platform 2016-04-27 14:19:38 +03:00
4b6fc94f94 Allow to specify default environments "env_default" // Resolve #576 2016-04-27 14:10:18 +03:00
ad9ae4c0af Fix uploader flags for microchippic32 platform 2016-04-27 13:23:22 +03:00
fc96e6a145 Add temporarily x32 libs for microchippic32 toolchain 2016-04-27 13:16:17 +03:00
b317e7227a Ask to install Python and Clang before PlatformIO IDE 2016-04-27 12:59:29 +03:00
ab5d7f3313 Allowe to unflag(remove) base/initial flags using build_unflags // Resolve #559 2016-04-27 12:55:07 +03:00
a7c0e2e944 Sync examples 2016-04-27 12:29:09 +03:00
2264141879 Sync examples 2016-04-27 11:55:37 +03:00
d5b41fe617 Add support for Microchip PIC32 development platform // Resolve #438 2016-04-27 11:43:48 +03:00
b036a82203 Fix cache system when project's root directory is used as src_dir // Resolve #635 2016-04-27 00:00:40 +03:00
eaf325b003 Further work on the support for PIC32 2016-04-26 23:29:45 +03:00
3519cc1a75 PyLint fix 2016-04-26 22:54:39 +03:00
2f58b9c7d2 Sync examples 2016-04-26 18:46:01 +03:00
24ef799de7 Remove unused imports 2016-04-26 18:14:30 +03:00
2682e8db8a Optimise converter from ini to cpp // Issue #610 2016-04-26 18:11:03 +03:00
00b76e6fb5 Refactor source code converter from "*.ino" to "*.cpp" // Resolve #610 2016-04-26 18:05:11 +03:00
b70858261f Fix toolchain name for microchippic32 2016-04-26 17:49:44 +03:00
360024af38 Initial support for Microchip PIC32 platform // Issue #438 2016-04-26 17:47:23 +03:00
bfdc425e7c Update history with new boards 2016-04-26 14:19:45 +03:00
7b14182083 Fix mcu option checking 2016-04-26 13:45:30 +03:00
7c760da618 Update espressif platform according to the latest framework 2.2.0 // issue #627 2016-04-26 13:44:10 +03:00
262307608c Ask to install Python before IDE 2016-04-26 13:34:51 +03:00
879efeffd5 Add variant for bbcmicrobit board 2016-04-26 13:24:31 +03:00
a1ba9d542f Add new timsp430 boards 2016-04-26 13:23:44 +03:00
c77e1a9ae8 Add some new boards with mbed support 2016-04-26 13:21:30 +03:00
c5d961e27e Fix latice_ice40 dev platform for Python 2.6 // Issue #480 2016-04-26 13:13:44 +03:00
ffdec11db4 Include Lattice iCE40 FPGA development platform in the docs 2016-04-26 11:54:30 +03:00
b51d95aba5 New Lattice iCE40 FPGA development platform // Resolve #480 2016-04-26 11:43:46 +03:00
f3e8cd9707 Add several ATTtiny boards 2016-04-26 11:38:48 +03:00
19a4ccee8c Be quiet when JSON output 2016-04-26 00:28:48 +03:00
f7be8ad666 Fix firmware uploading using serial port with spaces in the path 2016-04-25 22:02:22 +03:00
d01d40d33c Sync examples 2016-04-25 21:58:25 +03:00
0dd134c338 Remove Circle CI badge and conf 2016-04-25 21:07:08 +03:00
b2aa46bf62 Allow multiple VID/PID pairs when detecting serial ports // Resolve #632 2016-04-25 21:05:34 +03:00
d1f4f82897 Fix port autodececting without hwid 2016-04-25 20:35:57 +03:00
12ef1b26bf Fix flags scope for atmelsam 2016-04-25 14:39:23 +03:00
1872ecff16 Add HWID option for the boards // Issue #632 2016-04-25 12:35:21 +03:00
7cb21dd981 Move octocat to right 2016-04-24 23:21:58 +03:00
565ca05366 Fix typo 2016-04-24 00:52:36 +03:00
db0dbe6d8c Automatically add `-DUSB_MANUFACTURER` with vendor's name // Resolve #631 2016-04-24 00:50:56 +03:00
a821e5b553 Implement --json-output and --page options for pio lib search command // Resolve #604 2016-04-24 00:01:42 +03:00
0fdccddd88 Code improvements 2016-04-23 23:21:01 +03:00
9ff22f802a Remove unused imports 2016-04-23 20:56:05 +03:00
a2d08c6d9c Sync examples 2016-04-23 20:49:09 +03:00
da2946f45c Update links to the new repo with Project Examples 2016-04-23 20:21:04 +03:00
52bfe10ed5 Add submodule with Project Examples 2016-04-23 19:59:32 +03:00
fb8c2c705c Move examples to own repo https://github.com/platformio/platformio-examples 2016-04-23 19:51:12 +03:00
f75358f561 Add ArduinoISP to docs 2016-04-23 17:52:01 +03:00
a6ac5ad19b Add GitHub corner 2016-04-23 15:48:57 +03:00
728ef7f1b7 Add to docs "Jump to Declaration" and "Code Formatting" 2016-04-22 21:10:38 +03:00
c1c9b1b219 Add FAQ to PlatformIO IDE and auto save modified files on build 2016-04-22 13:21:45 +03:00
2cac6796ff Fix default value for RTS/DTR for Serial Port Monitor 2016-04-22 00:59:09 +03:00
05a52003d0 Add new article about PlatformIO IDE // Resolve #624 2016-04-20 21:26:31 +03:00
f559d31363 Typo fix 2016-04-18 19:22:58 +03:00
b0b84560b1 Typo fixes // Resolve #613 #616 #618 2016-04-17 00:27:38 +03:00
2884c8b641 Update link to Apple Xcode 2016-04-15 14:03:15 +03:00
7e9929a310 Typo fix 2016-04-14 00:12:03 +03:00
92ffc112b8 HTTPS for Community 2016-04-13 18:04:43 +03:00
9c15accbbb Improve explanation about "data" directory for SPIFFS // Issue #382 2016-04-13 12:40:43 +03:00
582a1f744e Add new articles 2016-04-12 18:22:01 +03:00
05277af5a7 Add link to XCode 2016-04-10 01:46:28 +03:00
c7880b6736 Fix indention // Issue #609 2016-04-09 23:01:44 +03:00
6356e49fdd Automatically reboot Teensy board after upload when Teensy Loader GUI is used // Resolve #609 2016-04-09 18:39:10 +03:00
669561782b Implement load_json for "util" 2016-04-09 14:15:59 +03:00
fe08e1f3f9 Update API IP 2016-04-09 14:09:26 +03:00
530868a1fe Update native SDK support for espressif platform // Issue #366, #546, #593 2016-04-07 19:19:32 +03:00
9b95d68475 New article; update history 2016-04-07 13:47:19 +03:00
93f9603043 Update TravisCI conf 2016-04-07 13:33:00 +03:00
2c45f18fa1 Update project template for CodeBlocks 2016-04-04 20:49:13 +03:00
e3b3ea53be Add docs for CodeBlocks IDE 2016-04-04 20:48:19 +03:00
3a0ef70249 New article "PlatformIO + Geany + Raspberry PI" 2016-03-30 14:14:51 +03:00
a5b064eb26 Fix template for CodeBlocks IDE // Issue #600 2016-03-30 13:35:33 +03:00
5ceae22f5f Update history 2016-03-30 13:33:09 +03:00
da7ee2c86f Update build flags form atmelsam // Resolve #601 2016-03-30 11:49:41 +03:00
bc3d8d26d0 Don't check OS type for ARM mbed-enabled boards and ST STM32 development platform before uploading to disk 2016-03-29 20:47:12 +03:00
b67acfec9c Add initial project template for CodeBlocks IDE 2016-03-29 18:37:22 +03:00
b5366f9d2f Add missing build flag to reduce code size for atmelsam // Resolve #599 2016-03-29 13:05:06 +03:00
dbeea7ec4f Merge branch 'develop' of https://github.com/ivankravets/platformio into develop
* 'develop' of https://github.com/ivankravets/platformio:
  Add separate examples for atmelsam platform
  Fix build flags for digix board
2016-03-28 15:04:59 +03:00
9a850d4c61 Fix broken compilation for Atmel SAMD based boards except Arduino Due // Resolve 598 2016-03-28 15:04:49 +03:00
9c545dc67b Add separate examples for atmelsam platform 2016-03-28 13:34:58 +03:00
61256c53fe Fix build flags for digix board 2016-03-28 13:23:20 +03:00
5be9b0e120 Add article "PlatformIO IDE Installation" // Resolve #597 2016-03-27 18:29:06 +03:00
44c0575e9b Add new articles 2016-03-26 20:02:59 +02:00
14da22f5ab Merge branch 'release/v2.8.6' into develop 2016-03-22 23:02:57 +02:00
e50121e013 Merge branch 'release/v2.8.6' 2016-03-22 23:02:56 +02:00
b169f2e252 Version bump to 2.8.6 (issues #568, #571, #572, #586, #591) 2016-03-22 23:02:42 +02:00
d83b1280ed Fix "KeyError: 'content-length'" in PlatformIO Download Manager // Resolve #591 2016-03-22 22:03:51 +02:00
2d684d36e8 Update the support for Sanguino Boards 2016-03-22 19:14:32 +02:00
4023d5e558 Add screenshot for Clang installer 2016-03-22 19:13:35 +02:00
0091ceecae Update Sanguino boards // Resolve #586 2016-03-22 16:12:34 +02:00
9a6d15cfe6 Fix resetmethod of ESPresso Lite 2.0 // Resolve #584 2016-03-21 19:15:00 +02:00
b39dcb11ee Peter test for Unicode and home_dir 2016-03-21 18:50:45 +02:00
ac4387328f Fix typo with exception 2016-03-21 18:33:49 +02:00
5e4fcf0ed5 Check user profile for ASCII 2016-03-21 18:31:22 +02:00
ea5a0ae75c Improve support for non-Unicode user profiles for Windows OS 2016-03-21 18:08:15 +02:00
657345fa7a Don't process symbolic links for CI 2016-03-21 16:47:24 +02:00
2862c97958 Update Release Notes 2016-03-21 14:39:02 +02:00
b958960512 Handle ConnectTimeout for API requests 2016-03-21 14:20:37 +02:00
c327cd5c3f Improve DNS lookup for PlatformIO API 2016-03-21 14:17:36 +02:00
4256d6b6a3 Disable progress bar for download operations when prompts are disabled 2016-03-21 14:17:04 +02:00
b34b00eed2 Move arduinoteensy specific math libraries to framework build script 2016-03-19 16:20:41 +02:00
ec2305bb10 Better handling of used boards when init/update project 2016-03-19 00:13:51 +02:00
553b91460a Update linker flags for teensy platform 2016-03-18 18:50:05 +02:00
32e1ce219a Add Seeed Arch Max board // Resolve #572 2016-03-18 11:50:14 +02:00
86ddf628b1 Extra docs for some dev platforms 2016-03-17 00:40:26 +02:00
1af462ff66 Fix broken "warning" block for Teensy platform 2016-03-16 22:17:14 +02:00
9d50803b0c Minor fix for Teensy platform 2016-03-16 19:40:46 +02:00
08d38b0b79 Merge pull request #581 from PaulStoffregen/teensydocs
Document Window driver requirement for Teensy
2016-03-16 19:19:13 +02:00
edb2a50100 Document Window driver requirement for Teensy 2016-03-16 10:14:34 -07:00
3011c6dd3f Add "What is ".pioenvs" dir to FAQ 2016-03-16 17:40:58 +02:00
74a9483286 Fixed invalid board parameters (reset method and baudrate) for a few ESP8266 based boards 2016-03-15 19:57:32 +02:00
3f68eab9bc Fix parameters for espressif boards 2016-03-15 17:23:19 +02:00
7dc80af70a Add information about Deviot Plugin for Sublime Text 2016-03-15 17:20:26 +02:00
83698dbdc0 Add article by Peter B Marks 2016-03-15 11:09:32 +02:00
e231b664fe Minor update to IDE installation 2016-03-14 13:55:41 +02:00
c8c1c28054 Note that don't need to install PlatformIO CLI for IDE 2016-03-14 00:59:21 +02:00
85ad1a1f29 Improve installation section of PlatformIO IDE 2016-03-14 00:37:29 +02:00
f412abf137 Remove unused slash 2016-03-12 21:34:50 +02:00
97487b617a Switch to pretty PlatformIO URLs 2016-03-12 21:32:13 +02:00
3ce17fbcb6 Add article by Richard Arthurs // Resolve #574 2016-03-12 13:49:28 +02:00
af499876ff Note about NetBeans C++ IDE version 2016-03-11 19:22:25 +02:00
3487a21795 Add warning about dev version for PlatformIO IDE 2016-03-11 16:07:21 +02:00
757df8c8ab Fix multiple definition errors for ST STM32 development platform and mbed framework // Resolve #571 2016-03-11 16:01:24 +02:00
034f431ab1 Add new article 2016-03-11 15:25:02 +02:00
fa30a50d20 Update environment variable for extra args. 2016-03-10 13:56:44 +02:00
6523445185 Update script command for dynamic testing of the boards 2016-03-10 13:51:48 +02:00
8d22591914 Short IDE title 2016-03-10 01:33:07 +02:00
a9bd45bbc8 Launch PlatformIO Community Forums // Resolve #530 2016-03-10 01:31:28 +02:00
605a5da65a Fix screenshot in "Quick Start" tutorial 2016-03-09 15:29:17 +02:00
739cfb2182 Add new article "New world with PlatformIO" 2016-03-08 16:26:36 +02:00
6005eaa9bc Update screenshots fort the "Quick Start" tutorial 2016-03-08 12:52:30 +02:00
14f80975fa Update screenshots for PlatformIO IDE 1.0.5 2016-03-08 00:24:41 +02:00
ea13e084ed Add screenshot for each IDE 2016-03-07 21:30:06 +02:00
f9cb31a2f3 Try to disable notification for each commit 2016-03-07 21:29:35 +02:00
85a5409e85 Fix link to PySerial Miniterm 2016-03-07 20:38:35 +02:00
99abd8c090 Update ISSUE_TEMPLATE.md 2016-03-07 18:46:48 +02:00
f633dde50c Merge branch 'release/v2.8.5' into develop 2016-03-07 18:34:44 +02:00
26566282ee Merge branch 'release/v2.8.5' 2016-03-07 18:34:43 +02:00
44fc5163e7 Version bump to 2.8.5 (issues #395, #401, #523, #526, #527, #528, #534, #536, #540, #541, #543, #544, #550, #552, #555) 2016-03-07 18:34:29 +02:00
c231f0e41e Show notification about new PlatformIO as the bottom of screen 2016-03-07 18:27:33 +02:00
6ee9c06285 Travis: Notify only for problems 2016-03-07 18:13:53 +02:00
4063cd6abd Use src_dir directory from platformio.ini when initializing project otherwise create base src directory // Resolve #536 2016-03-07 17:42:15 +02:00
325c50e924 Notify to slack about builds 2016-03-07 16:00:52 +02:00
efd1896825 Explain about IntelliSense Errors for VS // Resolve #543 2016-03-07 15:35:36 +02:00
4f61a05c9e Update ISSUE_TEMPLATE.md 2016-03-07 11:56:59 +02:00
26bfd74a3c Update docs for IDE & init command 2016-03-06 01:03:43 +02:00
ee088f3aea Fix dumping data for IDE with excess -fPIC flag 2016-03-06 00:40:28 +02:00
c162988868 Create ISSUE_TEMPLATE.md 2016-03-06 00:19:16 +02:00
213938a9f8 Add info about "Using Arduino Framework with Staging version" // Resolve #401 2016-03-05 19:01:54 +02:00
d091d4f000 Improve docs 2016-03-04 19:49:30 +02:00
f74f79eed0 Add new article by Ricardo Vega 2016-03-04 15:51:42 +02:00
4c4682f457 Fix incorrect parsing of GCC "-include" flag // Resolve #552 2016-03-04 01:45:04 +02:00
614a736eff Merge ASFLAGS and CCFLAGS in a proper way. 2016-03-03 20:28:06 +02:00
1332413f63 Combine ASFLAGS and CCFLAGS in a proper way 2016-03-03 20:05:51 +02:00
1e3e3dd999 Fix issue with updating package which was deleted manually by user // Resolve #555 2016-03-03 19:01:09 +02:00
888967eb61 Minor improvements to docs 2016-03-03 16:39:58 +02:00
7e0ccd0712 Update Emacs screenshot 2016-03-03 01:47:29 +02:00
6a0cd46da7 Refactor Quick Start page 2016-03-02 22:01:21 +02:00
288eb4df25 Add new article "Introduction to PlatformIO IDE" 2016-03-02 01:42:00 +02:00
8388359b36 Fix invalid detecting of compiler type // Resolve #550 2016-03-02 00:25:36 +02:00
c9505b3acc Add warning block about IntelliSense to Visual Studio documentation 2016-03-01 18:45:39 +02:00
72cb2f1240 Put parsed mbed flags to appropriate scope 2016-03-01 12:58:54 +02:00
9473e51e40 Fix platform ID for NetBeans IDE under Windows 2016-02-29 18:00:47 +02:00
8cf3765b30 Complete NetBeans project template for Windows 2016-02-29 17:48:51 +02:00
a1441b3e73 Minor updates 2016-02-29 17:33:20 +02:00
98026d83b6 Rename CMakeListsLocal.txt to CMakeListsPrivate.txt // Issue #523 2016-02-29 17:33:08 +02:00
b0ba8ae5e3 Improve espressif platform for updated framework. 2016-02-29 12:08:24 +02:00
6190f1aa8f Project generator for NetBeans IDE // Resolve #541 2016-02-27 20:09:27 +02:00
fdff0afd89 Update Gitter badge 2016-02-27 14:30:26 +02:00
52bbe9af33 Generate appropriate project for CLion IDE and CVS // Resolve #523 2016-02-27 01:27:57 +02:00
6d2130444d Add link to @Bintray 2016-02-27 01:01:32 +02:00
ce2bef7d26 Change direct links to PlatformIO IDE binaries 2016-02-27 00:36:48 +02:00
2c4fbda5e3 Add support for the ESP8266 ESP-07 board // Resolve #527 2016-02-27 00:20:42 +02:00
f6f4366030 Add new article "PlatformIO Blink On Nodemcu Dev Kit" 2016-02-26 23:26:20 +02:00
e6c1e35e75 Refactor test for packages manifest 2016-02-26 21:00:51 +02:00
bcb40fb2f9 Initial documentation for "Quickstart" tutorial. 2016-02-26 20:18:38 +02:00
8baf163684 Better handling of PlatformIO Storage Mirrors 2016-02-26 19:48:30 +02:00
99ddea6906 Remove debug code 2016-02-26 01:10:48 +02:00
1c481e0840 Fix handling of build flags passed via environment vars // Resolve #526 2016-02-25 15:09:23 +02:00
ff08416307 Add Awards block 2016-02-25 02:57:42 +02:00
d7e97731d8 Minor updates to docs 2016-02-25 02:38:06 +02:00
0263691f8d Refactor docs for "What is PlatformIO?" 2016-02-25 02:23:54 +02:00
2b2fe46772 Add NetBeans to supported list of IDEs 2016-02-25 02:23:26 +02:00
10ad8ec987 Cleanup docs 2016-02-25 02:22:57 +02:00
fed45e5453 Add new article "How to Integrate PlatformIO with Netbeans" 2016-02-25 01:10:38 +02:00
1f1dc9c5e6 Better handling of build flags passed via environment vars // Resolve #526 2016-02-24 18:23:42 +02:00
caa0efd265 Add new article by Ptarmigan Labs 2016-02-24 12:16:18 +02:00
76c8ac4e6c Fix broken link to IDE 2016-02-23 22:19:42 +02:00
3e52c194ca Fix issue with Project Generator when optional build flags were passed using system environment variables 2016-02-23 21:24:00 +02:00
3f8d89f34a Remove links to PlatformIO IDE from other IDE pages 2016-02-23 21:22:28 +02:00
17796de60d Refactor platform build scripts // Resolve #528 2016-02-22 21:52:44 +02:00
66713021de Update IDE DL links to the new storage // Resolve #531 2016-02-22 11:45:37 +02:00
d3f03f3fc8 Minor updates to IDE docs 2016-02-22 01:23:55 +02:00
17c9e8ddc1 Replace DL links with own DL storage 2016-02-20 08:57:16 +02:00
87bc6a7e8c Update Docs navigation bar according main site 2016-02-20 01:20:18 +02:00
2faa2e003a Place links to PlatformIO IDE 2016-02-20 01:06:25 +02:00
a965d0ea6f Update docs for PlatformIO IDE 1.0.0 2016-02-19 21:54:20 +02:00
90382e0f0d Add new article Develop easier with PlatformIO ecosystem 2016-02-19 18:07:38 +02:00
62d226c8a3 Update donate link // Resolve #478 2016-02-18 00:08:06 +02:00
d7c49b72a9 Typo fix 2016-02-17 22:55:43 +02:00
779798c622 Merge branch 'release/v2.8.4' 2016-02-17 22:53:08 +02:00
fbdcda720d Merge branch 'release/v2.8.4' into develop 2016-02-17 22:53:08 +02:00
321640bd71 Version bump to 2.8.4 (issues #494, #501, #503, #506, #518) 2016-02-17 22:52:52 +02:00
5107d767ee Update links to the new PlatformIO site 2016-02-17 22:47:55 +02:00
dc007dd136 Handle new environment variables PLATFORMIO_UPLOAD_PORT and PLATFORMIO_UPLOAD_FLAGS 2016-02-17 20:20:39 +02:00
50294274c3 Explain what does mean "pip" // Issue #517 2016-02-13 17:51:08 +02:00
63902c8215 Add "pip" to title of installation method using Python Package Manager 2016-02-13 17:46:27 +02:00
69836be1ca Show different info about upgrading PlatformIO within CLI or IDE 2016-02-13 17:22:17 +02:00
851f7db825 Fix issue with pointer (char* myfunc()) while converting from *.ino to *.cpp // Resolve #506 2016-02-11 00:43:52 +02:00
3484c41b64 Fix issue with quotes in CPPDEFINES when dumping data for IDE 2016-02-11 00:27:41 +02:00
d0d292b80f Add support for the new ESP8266-based boards (ESPDuino, ESP-WROOM-02, ESPresso Lite 1.0 & 2.0, SparkFun ESP8266 Thing Dev, ThaiEasyElec ESPino) to Espressif development platform 2016-02-11 00:16:43 +02:00
7e5f6fe22a Update docs for board_flash_mode 2016-02-11 00:00:23 +02:00
45efc0e0d6 Add "board_flash_mode" option to Project Configuration File 2016-02-10 23:16:25 +02:00
6baf6568d2 Add "board_f_flash" option to Project Configuration File // Resolve #501 2016-02-10 22:58:12 +02:00
1a4d1c7d40 Fix unable to link C++ standard library to Espressif platform build // Resolve #503 2016-02-10 17:19:24 +02:00
afe80072c6 Merge branch 'feature/cpp-libs-issue-503' into develop 2016-02-10 17:17:15 +02:00
b17acd7605 Fix issue with "CPPDEFINES" which contain space and break PlatformIO IDE Linter 2016-02-10 17:16:52 +02:00
45096c3137 Change libs order. 2016-02-09 13:58:08 +02:00
c3f78d1977 Temporary disabled "CPPDEFINES" which contain space and break PlatformIO IDE Linter 2016-02-03 01:37:43 +02:00
8dfd6ac3bb Merge branch 'release/v2.8.3' 2016-02-02 19:52:38 +02:00
8a2789fe3f Merge branch 'release/v2.8.3' into develop 2016-02-02 19:52:38 +02:00
40729c38eb Version bump to 2.8.3 (issue #487) 2016-02-02 19:52:05 +02:00
6c2df7d0e1 Fix missing dependency (mbed framework) for Atmel SAM development platform // Resolve #487 2016-02-02 19:47:11 +02:00
223a055e8b Fix issue with removing temporary file while converting *.ino to *.cpp 2016-02-01 00:18:04 +02:00
96c7ef36c2 Update info about PlatformIO IDE 2016-01-31 01:13:06 +02:00
21b52031e7 Fix issue when board is not specified 2016-01-30 21:45:26 +02:00
b44c75a3c1 Better integration of PlatformIO Builder with PlatformIO IDE Linter 2016-01-30 19:14:11 +02:00
1f95b6be25 Add QuickStart for PlatformIO IDE 2016-01-30 13:41:46 +02:00
848c50c55c Update docs for PlatformIO IDE 2016-01-29 23:52:14 +02:00
0c4e0327e3 Fix docs layout 2016-01-29 20:43:22 +02:00
3eb3ba4ee0 Merge branch 'release/v2.8.2' into develop 2016-01-29 20:34:48 +02:00
631fd707fe Merge branch 'release/v2.8.2' 2016-01-29 20:34:47 +02:00
8a269b1d24 Version bump to 2.8.2 (issues #484) 2016-01-29 20:34:25 +02:00
131f1eb943 Correct RAM size for NXP LPC1768 based boards // Resolve #484 2016-01-29 18:17:33 +02:00
c036bde86c Reverted `-Wl,-whole-archive` hook for ST STM32 and mbed 2016-01-29 17:55:48 +02:00
9102a70e04 More strictness to default src filter for builder 2016-01-29 17:52:54 +02:00
c9616ed0fa Exclude only "test" and "tests" folders from build process 2016-01-29 17:25:31 +02:00
dce2f2594a Merge branch 'release/v2.8.1' 2016-01-29 15:50:33 +02:00
8c0bcc6ad9 Merge branch 'release/v2.8.1' into develop 2016-01-29 15:50:33 +02:00
edf19a8cac Version bump to 2.8.1 2016-01-29 15:50:17 +02:00
41f2adc1f6 Fix a bug with Project Initialization in PlatformIO IDE 2016-01-29 15:49:31 +02:00
2b55a2fd05 Merge branch 'release/v2.8.0' 2016-01-29 14:43:35 +02:00
45e8379d99 Merge branch 'release/v2.8.0' into develop 2016-01-29 14:43:35 +02:00
73041b71a4 Version bump to 2.8.0 (issues #441, #444, #447, #453, #458, #465, #470, #474, #476, #483) 2016-01-29 14:43:20 +02:00
f8419c9184 Inform users about PlatformIO IDE 2016-01-29 14:38:06 +02:00
aebba5f1c1 Minor fix to error message 2016-01-29 14:28:56 +02:00
a446386cc9 Don't build empty project // Resolve #483 2016-01-29 14:22:10 +02:00
2be2a4ebf3 Change case for data size 2016-01-28 21:55:21 +02:00
d20eca3f09 Fix incorrect flash size for SeeedStudio Seeeduino-Arch-Pro 2016-01-28 21:53:01 +02:00
3bc5cb0d27 Fix ideate dump for non existing lib dirs 2016-01-28 20:35:02 +02:00
e6745de8d8 Skip empty __cores__ dir for project generator 2016-01-28 18:42:56 +02:00
04cd772f0d Fix PyLint warning 2016-01-28 00:56:25 +02:00
d44d757985 Convert CleanPioEnvsError to warning 2016-01-28 00:37:16 +02:00
df8fda5b69 Better handling of installed libs for Project Generator 2016-01-28 00:20:01 +02:00
c74f122426 Ignore duplicate includes in project generator 2016-01-27 20:04:35 +02:00
c20b6af1ec Disable PyLint warning 2016-01-27 02:00:35 +02:00
de43166257 Generate project for IDEs with information about installed libraries 2016-01-27 01:37:20 +02:00
5c2ba90edf Add donate button/badge // Issue #478 2016-01-26 21:09:32 +02:00
503decdf2e Merge branch 'develop' of https://github.com/ivankravets/platformio into develop
* 'develop' of https://github.com/ivankravets/platformio:
  Allow using custom linker script for the libopenCM3 framework.
2016-01-26 20:31:30 +02:00
ec19341e05 Fix error with unicode for serial ports description 2016-01-26 20:30:45 +02:00
477f387bd7 Allow using custom linker script for the libopenCM3 framework. 2016-01-26 14:17:49 +02:00
9ede9d3c6d Temporary solution for PlatformIO IDE and Serial Monitor 2016-01-26 13:52:40 +02:00
34d5358eaa Exclude "test*" folder by default from build process 2016-01-26 13:02:33 +02:00
9db5a7e004 Add "pio" alias to docs // Resolve #447 2016-01-26 02:00:55 +02:00
e5f3dee470 Ask Windows users to add LLVM to the system PATH 2016-01-26 01:18:33 +02:00
63911f5192 Minor changes 2016-01-26 01:02:14 +02:00
8824c14768 Remove banner 2016-01-26 00:47:07 +02:00
17d68652cf Disable Serial Monitor for PlatformIO IDE (temporary) 2016-01-26 00:27:15 +02:00
559c46beb0 Merge pull request #473 from floretan/patch-1
Mention "overclocking"
2016-01-26 00:13:54 +02:00
380d6eb4be Update docs for PlatformIO IDE 2016-01-25 23:43:11 +02:00
d2f3b76132 Fix error with non unicode chars in serial port description 2016-01-25 23:42:43 +02:00
07b69e9f59 Mention "overclocking"
I couldn't find information on how to overclock my teensy with platformio until I asked in the chat and @ivankravets pointed me to this page. Mentioning overclocking should help others find that information more easily.
2016-01-25 22:24:08 +01:00
3ce32e54b2 Fix broken CXX path on Windows 2016-01-25 22:58:52 +02:00
7cce906e55 Generate settings for GCC linter and PlatformIO IDE 2016-01-25 22:49:29 +02:00
a3911eda3b Fix Atom Preferences link for Linux 2016-01-25 14:29:24 +02:00
3ac72e4b8c Improve docs for PlatformIO IDE 2016-01-25 01:05:54 +02:00
456e0109cd Add new article about IntelliJ IDEA & PlatformIO by Sergey Prilukin 2016-01-24 23:11:25 +02:00
1a2ed160cd Move PlatformIO IDE at top 2016-01-24 21:34:37 +02:00
9b49b80051 Fix docs warnings for literal blocks 2016-01-24 18:14:39 +02:00
8a55e65388 Remove test code and fix PyLint warning 2016-01-24 17:19:59 +02:00
0cecd955c5 Allow to disable progress bar for package/library downloader and uploader 2016-01-24 16:45:04 +02:00
a0d3a180e4 Specify full path to PlatformIO IDE screenshot 2016-01-24 01:47:02 +02:00
e257eeff0a Minor changes 2016-01-24 01:14:01 +02:00
8bc54b0179 PlatformIO IDE for Atom // Resolve #470 2016-01-24 00:44:18 +02:00
59a97bff3d Allow upgrading to the latest develop version if no new stable release using "platformio upgrade" 2016-01-23 21:45:08 +02:00
870b306b86 Handle caller id from os environment 2016-01-23 21:01:25 +02:00
c29399944e Improve docs for "version" field of library.json 2016-01-22 23:34:25 +02:00
21834b0832 Typo fix 2016-01-22 22:30:28 +02:00
5535529903 Document tags/releases for "version" field in library.json 2016-01-22 22:25:13 +02:00
1ae2e189dd Document "branch" subfield for "repository" field from library.json 2016-01-22 22:01:24 +02:00
5e8bfe5ef2 Fix url to CVS 2016-01-21 01:02:50 +02:00
6bd7129c80 Rename to "Release Notes" 2016-01-20 16:36:23 +02:00
a41cf3dd48 Fix grammar 2016-01-20 01:24:36 +02:00
1829952b1e Extend examples list with c/cpp/h extensions 2016-01-20 01:24:21 +02:00
d658363b53 Fix bug with custom BOARD_F_CPU for Espressif platform 2016-01-19 23:06:25 +02:00
cc1dec39cf Allow to force to output color ANSI-codes even if the output is a `pipe (not a tty`) 2016-01-19 21:03:49 +02:00
3035d4eeec Add new article by @squix78 2016-01-19 19:31:56 +02:00
c55204cc50 Use current Python interpreter for the all subprocess platformio calls 2016-01-19 18:42:59 +02:00
c48ffc0089 Skip example* from build process 2016-01-19 16:50:26 +02:00
257f4b1c5b Update examples with extra scripts 2016-01-19 00:22:12 +02:00
7f386126cb Typo fix 2016-01-15 23:37:41 +02:00
b1e9dea790 Add "pio" command line alias for "platformio" command // Resolve #447 2016-01-14 01:26:24 +02:00
88fe8f2129 Set 1Mb SPIFFS for Espressif boards by default // Resolve #458 2016-01-14 01:21:25 +02:00
52ceb64758 Added "upload_resetmethod" option to Project Configuration File platformio.ini and allowed to change default upload reset method for Espressif development platform // Resolve #444 2016-01-14 01:07:57 +02:00
1b85a3ddd3 Add banner about IoT Award 2016-01-14 00:02:23 +02:00
9ba493bcee Add new article "STM NUCLEOF401RE TIMER IO" by @g7uvw 2016-01-13 22:50:19 +02:00
54f2f4ce45 Use current Python interpreter to show updated version 2016-01-13 22:22:55 +02:00
2d42f944cd Update history with SPL framework for nucleo_f401re // Issue #453 2016-01-13 21:09:26 +02:00
2f9b61aee4 Docs: add SPL support for nucleo_f401re // Issue #453 2016-01-13 21:05:49 +02:00
e2d9d0a5d8 Add SPL support for nucleo_f401re // Resolve #453 2016-01-13 21:03:45 +02:00
b60eb059c3 Explain in documentation how to overwrite upload reset method for Espressif development platform // Resolve #444 2016-01-13 15:21:51 +02:00
516887c050 Refactor Project Configuration Page 2016-01-13 15:03:13 +02:00
8a85d7ef1c Ignore stupid PyLint warning with "wrong-import-order" 2016-01-13 01:23:58 +02:00
fa51860268 Fix builder for mbed framework and ST STM32 platform 2016-01-11 19:20:26 +02:00
3d0aad6df8 Add support for completions to Atom text editor using ".clang_complete" 2016-01-06 16:52:22 +02:00
4e2370e0a0 Update docs with new boards, tools 2016-01-06 15:47:58 +02:00
5634419513 Merge branch 'release/v2.7.1' into develop 2016-01-06 14:56:31 +02:00
5552460b2f Merge branch 'release/v2.7.1' 2016-01-06 14:56:30 +02:00
038b641a4d Version bump to 2.7.1 (issues #356, #421, #422, #426, #427, #428, #434) 2016-01-06 14:56:16 +02:00
b397748f53 Hook for requires services 2016-01-06 14:45:58 +02:00
cd1440adb2 Remove board ldscripts test 2016-01-06 14:13:47 +02:00
4097c34db8 Add new article "Internet Of Things: The IDE scandal" 2016-01-05 21:38:02 +02:00
fcf50a80ac Merge pull request #436 from valeros/develop
Initial support for Arduino Zero board // Resolve #356
2016-01-05 17:48:59 +02:00
010a8d15cd Merge pull request #435 from ZachMassia/develop
Update Emacs doc page
2016-01-05 17:40:56 +02:00
29174e343d Fix pylint error 2016-01-05 09:47:57 +02:00
9dde962add Initial support for Arduino Zero board // Resolve #356 2016-01-05 09:39:11 +02:00
5c9bfdac00 Update Emacs doc page 2016-01-04 23:33:41 -05:00
a9464d7878 History fix 2016-01-05 02:35:29 +02:00
33543d6d8f Add generic targets for VIM // Issue #427 2016-01-05 02:26:37 +02:00
df099e15c0 Add generic targets for IDE // Resolve #427 2016-01-05 02:15:43 +02:00
7a7fa845fe Update Teensy Arduino Framework to 1.26 // Resolve #434 2016-01-05 00:07:28 +02:00
0751a2cef9 Fix CMakeLists.txt add_executable has only one source file // Resolve #421 2016-01-04 18:11:20 +02:00
917c0e3388 Use esptool as OBJCOPY for ElfToBin builder // Resolve #426 2016-01-04 17:47:10 +02:00
13ba785400 Merge pull request #433 from ZachMassia/clang-complete
clang_complete support for Emacs and Atom
2016-01-04 14:04:52 +02:00
6bc7404d3a Add .clang_complete for Atom 2016-01-04 00:29:37 -05:00
44f0fc9720 Remove CMake from Emacs project template 2016-01-04 00:29:37 -05:00
7184d70f0c Remove donate button 2016-01-04 03:36:54 +02:00
5ecf952934 Minor improvements to docs 2016-01-04 03:34:47 +02:00
39839e919e Remove quotes from includes 2016-01-04 01:46:38 +02:00
363249f165 Minor improvements to the docs 2016-01-04 01:45:57 +02:00
5d74e8ae6e Improve docs for library.json "version" field 2016-01-04 01:07:42 +02:00
db50043972 Generate .clang_complete file for Emacs project 2016-01-03 20:44:42 +02:00
fdff35e31c Fix package "shasum" validation on Mac OS X 10.11.2 // Resolve #429 2016-01-03 17:45:49 +02:00
4d2daa9da4 Merge pull request #428 from ZachMassia/generic-targets
Add external programmer and SPIFFS targets to Emacs
2016-01-03 15:20:33 +02:00
7d9cd1c2ae Add ext. programmer and spiffs targets to Emacs 2016-01-03 00:31:12 -05:00
77c192050a Add enlarge link to Eclipse IDE screenshot 2016-01-03 03:09:33 +02:00
6be39120ae Add generic targets to Eclipse IDE: Build, Clean, Upload, Upload SPIFFS image, Upload using Programmer // Issue #427 2016-01-03 03:02:21 +02:00
b1de8d119d Fix project generator for CLion IDE // Resolve #422 2016-01-02 13:53:39 +02:00
f29a06e3f3 Fix project generator for CLion IDE // Issue #422 2016-01-02 01:05:05 +02:00
678791bd09 Fix history for PlatformIO 2.7.1 2016-01-02 00:40:21 +02:00
b408f8f0bf Fix uploading of EEPROM data using "uploadeep" target for Atmel AVR development platform 2016-01-02 00:35:53 +02:00
e101b02ccb Run/Upload specific environment 2016-01-01 23:30:18 +02:00
628c54e0c6 Fix indention after bunch of replacements 2016-01-01 21:15:23 +02:00
af85f76f9a Fix PyLint warning 2016-01-01 21:02:22 +02:00
19f1ccd0df 🎄 Happy New 2016 Year! 🎄 2016-01-01 20:51:48 +02:00
5c1c1da5f0 Correction to custom PlatformIO dirs per project 2016-01-01 19:44:24 +02:00
5272f184cf Add Contributing section 2015-12-31 16:12:35 +02:00
4bd507713c Merge pull request #420 from sticilface/patch-1
Update platformio.sublime-project.tpl
2015-12-31 13:32:01 +02:00
6aaca7d33d Update platformio.sublime-project.tpl
Include SPIFFS upload in sublime project generation
2015-12-31 11:21:33 +00:00
6e02ba17e3 Update "platformio boards" guide 2015-12-31 01:16:45 +02:00
b588823799 Hint to use library.json with repo+version 2015-12-31 00:47:03 +02:00
4d3a6c9791 Fix mDNS abbreviation 2015-12-30 23:57:33 +02:00
3f19f51937 Minor updates to SPIFFS doc 2015-12-30 23:55:53 +02:00
08ba6cc51c Minor fix for HISTORY 2015-12-30 20:36:27 +02:00
be049bfac2 Merge branch 'release/v2.7.0' 2015-12-30 20:25:12 +02:00
b7ecdf631b Merge branch 'release/v2.7.0' into develop 2015-12-30 20:25:12 +02:00
02480730bb Version bump to 2.7.0 (issues #319, #382, #386, #391, #394, #397, #400, #403, #404, #406, #407, #417) 2015-12-30 20:24:51 +02:00
4d8265bee2 Remove SCons from docs, etc. 2015-12-30 20:19:56 +02:00
aff525e763 Use current interpreter to upgrade PlatformIO 2015-12-30 20:12:52 +02:00
8d6aee3178 Use current Python interpreter for Python-based tools // Resolve #417 2015-12-30 20:01:43 +02:00
d139225ffb Quote upload port for Espressif OTA // Issue #417 2015-12-30 19:23:58 +02:00
56c5ba6fbb Allow OTA upload port to be quoted // Issue #417 2015-12-30 19:10:40 +02:00
7a91683ca6 Better handling of upload port for OTA // Issue #417 2015-12-30 19:01:26 +02:00
f2cad66d79 Quote upload port for Espressif OTA // Issue #417 2015-12-30 18:42:46 +02:00
98ec2237b7 Merge pull request #418 from dh1tw/develop
updated URL in example to new mbed domain
2015-12-30 18:15:13 +02:00
27a555b99a updated URL in example to new mbed domain 2015-12-30 17:12:50 +01:00
680c3867db Allow to use DNS.local as upload port for OTA // Issue #382 2015-12-30 15:02:13 +02:00
121102beef Fix SPIFFS uploading via OTA // Issue #382 2015-12-30 14:33:16 +02:00
4f8138fe1f Add link to discussion as for SPIFFS 2015-12-30 14:23:35 +02:00
044486d46f Allow to upload SPIFFS image using OTA // Issue #382 2015-12-30 14:14:36 +02:00
2d2ce0661f Update donate button 2015-12-30 01:49:16 +02:00
e88ef48e18 Add example with library.json 2015-12-30 01:41:08 +02:00
2dd2dd4f0d Use PySerial < 3 for Python 2.6 2015-12-30 00:13:38 +02:00
38d9f0f5bc Add donate button 2015-12-29 21:59:32 +02:00
14aed800a2 Improve telemetry service 2015-12-29 21:03:51 +02:00
621393138f Move requirements to setuptools 2015-12-29 17:44:39 +02:00
a959ff767d Better handling of source files for uploading // Issue #382 2015-12-29 14:36:39 +02:00
11986354d9 Better handling of LD scripts for SPIFFS uploading // Issue #382 2015-12-29 00:21:24 +02:00
5ea7ec470a Typo fix 2015-12-28 23:29:58 +02:00
a0bcb4d4f0 Fix PyLint warning about sorting for imports 2015-12-28 20:35:56 +02:00
ed68878592 Show error for invalid LD script 2015-12-28 20:09:48 +02:00
3121ca5669 Fix SPIFFS_START address // Issue #382 2015-12-28 18:40:54 +02:00
5abb21c3f9 Minor changes for offsets 2015-12-28 13:54:07 +02:00
b9a87b3d54 Merge pull request #407 from ZachMassia/develop 2015-12-28 10:58:22 +02:00
cd1259613a Fix typo 2015-12-28 00:54:19 -05:00
023a3487e0 Don't run mkspiffs target by default 2015-12-28 01:38:41 +02:00
2c4c3a12ea Add link to ESP8266 Flash layout // Issue #382 2015-12-28 01:21:17 +02:00
cae5f1f553 Implement uploading files to file system SPIFFS for ESP8266 // Issue #382 2015-12-28 01:15:06 +02:00
d7673b69e2 Add link for enlarge to Emacs screenshot 2015-12-27 17:54:51 +02:00
85f0877d32 Project generator for Emacs text editor // Issue #404 2015-12-27 17:53:51 +02:00
e152155a58 Merge pull request #404 from ZachMassia/develop
Emacs IDE integration support
2015-12-27 16:58:46 +02:00
ce93e6013f Fix variant for RFduino board 2015-12-26 23:50:56 +02:00
bee51aadcb Fix test for LD Scripts 2015-12-26 23:04:16 +02:00
956633847d Add RFDuino iBeacon example 2015-12-26 21:50:47 +02:00
918deb41a4 Typo fix 2015-12-26 21:32:10 +02:00
1b7b2ca0a2 Add support for RFDuino // Resolve #319 2015-12-26 21:24:01 +02:00
1b84078541 Show error message when user tries to install/run PlatformIO with Python 3 2015-12-26 20:22:22 +02:00
f7311eb94d Update Wiring example according to Get-Started on home page 2015-12-26 20:08:50 +02:00
9312ca7f0d Moved SCons to PlatformIO packages. PlatformIO does not require SCons to be installed in your system.
Significantly simplified installation process of  PlatformIO. "pip install platformio" rocks!
2015-12-26 14:47:42 +02:00
533720218a Add Emacs screenshot, add Emacs to IDE doc page 2015-12-26 03:00:44 -05:00
d2088e7444 Enhance doc 2015-12-26 01:02:44 +02:00
9006b8b618 Add initial version of emacs documentation 2015-12-25 02:09:09 -05:00
b9f926d13b Add Emacs to IDE templates 2015-12-25 02:09:09 -05:00
319636f017 Fix broken RST for mbed framework 2015-12-25 01:09:41 +02:00
4c665a292a Cleanup docs for IDE integration 2015-12-25 01:06:55 +02:00
72f93cd563 Link articles with platforms and frameworks 2015-12-25 00:49:27 +02:00
2e38b156dd Add examples for frameworks 2015-12-25 00:31:13 +02:00
a9a50f79da Add examples for Atmel AVR platform 2015-12-25 00:17:19 +02:00
4b922b9de2 Documented firmware uploading for Atmel AVR development platform using Programmers 2015-12-24 23:55:49 +02:00
36912c0fe6 Update Arduino framework for Atmel AVR development platform to 1.6.7 2015-12-24 23:39:25 +02:00
dfe39f386d Add support for the new Adafruit boards Bluefruit Micro and Feather // Resolve #403 2015-12-24 23:09:40 +02:00
943d16bcf8 Add example with "Ctrl+Q" to serial ports monitor as exit key // Resolve #386 2015-12-22 20:28:37 +02:00
6d0b1a8106 Add demo for ESP8266 OTA 2015-12-22 20:17:10 +02:00
663a3b1aec Add new articles 2015-12-22 20:07:43 +02:00
131f6504ca Improve auto installation for SCons 2015-12-22 19:53:54 +02:00
94cdc9b69e Merge branch 'feature/scons-autoinstall' into develop 2015-12-22 19:09:29 +02:00
1c1cd2509e Add demo with "Over-the-Air update for ESP8266" 2015-12-22 18:21:21 +02:00
abdc76aef8 Improve auto installation for SCons 2015-12-22 18:07:15 +02:00
9b058c3958 Merge branch 'release/v2.6.3' into develop 2015-12-21 20:56:06 +02:00
d91261412e Merge branch 'release/v2.6.3' 2015-12-21 20:56:05 +02:00
2e26b5d31d Version bump to 2.6.3 (issues #396) 2015-12-21 20:55:49 +02:00
3266d3b211 Fix top menu in docs 2015-12-21 20:52:39 +02:00
c2072e3e62 Cleanup debug code 2015-12-21 20:43:07 +02:00
5266f4810b Fix PyLint warning 2015-12-21 20:41:57 +02:00
6e83b4b093 Restore support for Espressif ESP8266 ESP-01 1MB board (ready for OTA) 2015-12-21 20:39:45 +02:00
7b1b908779 Fix invalid ROM size for ESP8266-based boards // Resolve #396 2015-12-21 19:23:46 +02:00
7a95a201b5 Merge branch 'release/v2.6.2' 2015-12-21 17:42:01 +02:00
70c86525cc Merge branch 'release/v2.6.2' into develop 2015-12-21 17:42:01 +02:00
618d32b872 Version bump to 2.6.2 2015-12-21 17:41:37 +02:00
66ca204697 Removed SCons from requirements list 2015-12-21 17:35:30 +02:00
54d650aa40 Update number of supported boards 2015-12-19 01:19:36 +02:00
851b452c17 Add warning to CLion docs to avoid running targets 2015-12-18 23:44:04 +02:00
0ff795e798 Fix "ChunkedEncodingError" when SF connection is broken // Issue #356 2015-12-18 22:56:15 +02:00
43b50e5b9f Update docs with the new vendors for ESP8266 2015-12-18 21:01:56 +02:00
18d68bafd0 Fix vendors for ESP8266 boards 2015-12-18 20:56:17 +02:00
feb951c35e Merge branch 'release/v2.6.1' into develop 2015-12-18 20:30:42 +02:00
41c2164755 Merge branch 'release/v2.6.1' 2015-12-18 20:30:41 +02:00
ee87b55947 Version bump to 2.6.1 (issues #377, #378, #379, #380, #381, #383, #384, #387) 2015-12-18 20:30:30 +02:00
7119bb9084 Fix project generator for Eclipse IDE and "duplicate path entries found in project path" // Resolve #383 2015-12-18 20:18:19 +02:00
132c769766 Better error handling 2015-12-18 19:58:09 +02:00
e4dbcd50cc Improv documentation for Espressif platform 2015-12-18 19:29:20 +02:00
62d5f66ae2 Extra docs for Espressif platform 2015-12-18 18:06:20 +02:00
cfa3f1b520 Extra documentation for development platform / frameworks // Resolve #381 2015-12-18 17:06:28 +02:00
0951d53f52 Fix issue with code builder when build path contains spaces // Resolve #387 2015-12-18 15:40:44 +02:00
186580d794 Fix issue with code builder when build path contains spaces // Resolve #387 2015-12-18 15:20:37 +02:00
1a47cfc938 Show INT values for serial monitor hot keys 2015-12-18 12:18:25 +02:00
edc06f12b5 Add to FAQ "Monitoring a serial port breaks upload" // Resolve #384 2015-12-17 20:22:17 +02:00
3830e98c1d Add support for the new ESP8266 based boards 2015-12-17 20:16:17 +02:00
3cbbecb413 Repository for LD scripts; common LD script for ESP8266 // Resolve #379 2015-12-17 18:17:54 +02:00
f0abd353ae Extend link to FAQ with what is PlatformIO 2015-12-17 00:47:56 +02:00
84cbbe437d Remove default options 2015-12-17 00:08:57 +02:00
34a5d366d5 Fix reset method for Espressif NodeMCU (ESP-12E Module) // Resolve #380 2015-12-17 00:02:22 +02:00
d3b7fc7ddb Add JetBrains post in CLion Blog 2015-12-16 13:18:51 +02:00
3d413743e4 Add ESP8266 quickstart 2015-12-16 00:35:24 +02:00
b3d5ced193 Merge branch 'release/v2.6.0' 2015-12-15 20:54:31 +02:00
1e38db8cae Merge branch 'release/v2.6.0' into develop 2015-12-15 20:54:31 +02:00
b073760711 Version bump to 2.6.0 (issues #308, #365, #368, #371, #372, #373, #375) 2015-12-15 20:54:19 +02:00
f778bdb741 Fix test with ldscripts. 2015-12-15 20:45:47 +02:00
2afbe2a64b Better handling of upload targets 2015-12-15 20:25:59 +02:00
a5878c5544 Updated CMSIS framework and added CMSIS support for Nucleo F401RE board // Issue #373 2015-12-15 20:19:27 +02:00
997cfbf488 Change framework order 2015-12-15 20:10:28 +02:00
3afc8c7908 Add make related keywords 2015-12-15 20:10:04 +02:00
1e21d6e05b Merge pull request #376 from valeros/develop
Add CMSIS support for nucleo_f401re board  // Resolve #373
2015-12-15 20:06:10 +02:00
8eebd39426 Fix libopenCM3 framework. 2015-12-15 19:30:11 +02:00
7e985219ad Update builder for SPL framework. 2015-12-15 19:29:37 +02:00
7ce780bcc6 Update builder for CMSIS framework. 2015-12-15 19:28:58 +02:00
62b41e0994 Fix PyLint warnings 2015-12-15 17:04:28 +02:00
4c65093a66 Remove unused imports 2015-12-15 16:09:35 +02:00
cb4c4e13a3 Install only required packages depending on build environment // Resolve #308 2015-12-15 15:58:52 +02:00
3b7de598d3 Replace native with linux_arm platform for Raspberry Pi 2015-12-15 00:50:14 +02:00
a85bf32700 Use "format" to format exception messages 2015-12-14 22:44:16 +02:00
004125a2ca Add support for Raspberry Pi WiringPi framework // Resolve #372 2015-12-14 19:50:50 +02:00
d4e4ab07a6 Add copyrights 2015-12-14 19:40:59 +02:00
94bb0dc43e Revert back step with upgrading for pip/setuptools // Resolve #371 2015-12-14 19:21:23 +02:00
becec986ea More explanations about library.json 2015-12-14 18:47:50 +02:00
9eae55f03c Add link to telemetry setting 2015-12-14 11:30:39 +02:00
4e90a2fd42 Fix test for settings command 2015-12-14 01:14:02 +02:00
c4d5960eb6 Fix multiple search queries to "lib search" 2015-12-14 00:46:17 +02:00
3595c2cc88 More explanation about telemetry service 2015-12-14 00:40:41 +02:00
73cc3e3ac8 Handle more search args for "lib search" 2015-12-14 00:05:33 +02:00
1541537d0d Don't print any maintenance information for --json-output requests 2015-12-13 23:27:37 +02:00
abf4376d20 Add example with upload_port=IP_ADDRESS for OTA 2015-12-13 22:09:50 +02:00
faf2839a08 Remove command with target=clean 2015-12-13 22:09:19 +02:00
15224e3c02 Add .travis.yml and .gitignore files 2015-12-13 19:40:07 +02:00
093176b2ee Add link to demo projects 2015-12-12 23:37:43 +02:00
dffc8ef940 Optimise auto-scroll for docs by hash 2015-12-12 22:48:45 +02:00
21c64b2fe1 Fix anchor scroll 2015-12-12 22:45:37 +02:00
7868566a78 Improve PlatformIO installation on the Mac OS X El Capitan 2015-12-12 18:18:57 +02:00
f793ff1a86 Disable SCons man for --egg 2015-12-12 18:00:03 +02:00
e702e1eb27 Handle broken connection from SF side 2015-12-12 17:59:25 +02:00
5b2fac95ce Improve symlink fixer 2015-12-12 16:45:53 +02:00
2baf14f900 Implemented Over The Air (OTA) upgrades for Espressif development platform // Resolve #365 2015-12-11 15:31:36 +02:00
cc1eb4bad6 Add previously added boards to docs 2015-12-11 15:24:02 +02:00
fbd2c61f40 Update docs with "upload_flags" 2015-12-11 15:20:08 +02:00
9cc9912ef2 Handle upload_flags option in platformio.ini // Resolve #368 2015-12-11 15:17:38 +02:00
e69bc34678 Fix .gitignore contents 2015-12-11 14:23:12 +02:00
9d01d86652 Explain about SCons and how to fix installation 2015-12-11 00:16:06 +02:00
2c301ca422 Explain how to use Arguments and custom options 2015-12-10 23:52:33 +02:00
9cec353d40 Merge branch 'release/v2.5.0' 2015-12-08 19:28:22 +02:00
c42561de45 Merge branch 'release/v2.5.0' into develop 2015-12-08 19:28:22 +02:00
c841ba1cba Version bump to 2.5.0 (issues #352, #354, #358) 2015-12-08 19:28:08 +02:00
eb1971fb17 Fix PyLint 2015-12-08 19:08:00 +02:00
983db2f3c8 Improve project initialisation 2015-12-08 18:42:50 +02:00
c87c4691f3 Typo fix 2015-12-08 18:42:23 +02:00
68c64cd942 Improve upgrading command 2015-12-07 22:44:31 +02:00
dfb93e9682 Improve project initialisation 2015-12-07 22:23:20 +02:00
b7ab825860 Use general exception for usage error 2015-12-07 17:43:59 +02:00
28619a6ce7 Add libray.json 2015-12-07 17:43:33 +02:00
7eed6f56f6 Update keywords 2015-12-07 17:17:01 +02:00
234517ee0a Ignore unsupported mbed native library 2015-12-07 15:09:43 +02:00
a483ecdfdb Warn about missing native support for the library // Resolve #358 2015-12-07 14:52:19 +02:00
97ee8d55ce Remove debug code 2015-12-07 00:23:38 +02:00
7727562f44 Simplify .travis.yml file 2015-12-07 00:20:14 +02:00
f6686f149b Generate ".gitignore" by default 2015-12-05 23:34:25 +02:00
2345eb3bb7 Fix incorrect behaviour of "platformio serialports monitor" in pair with @PySerial 3.0 2015-12-05 23:30:42 +02:00
16abaccf96 Keep consign DB in .pioenvs 2015-12-05 23:21:16 +02:00
8c8de45f30 Fix PyLint warning 2015-12-04 22:35:22 +02:00
f4f65e4c84 Improve code builder for parallel builds (up to 4 times faster than before) 2015-12-04 21:06:29 +02:00
a8ae5e4d03 Generate .travis.yml CI config for embedded projects by default // Resolve #354 2015-12-04 15:18:31 +02:00
b91f03f082 Add examples for "extra_script" 2015-12-04 00:02:37 +02:00
e1396e57b6 Fix extension for example 2015-12-03 20:02:17 +02:00
67cbf25b96 Fix broken ci command 2015-12-03 19:25:46 +02:00
e721ebe171 Add warning to regenerate project when new libs are used 2015-12-03 17:49:26 +02:00
c2d760bccb Fix tests for init command 2015-12-03 17:39:36 +02:00
5dc1396f05 Remove prompt with "auto-uploading" from init command and add --enable-auto-uploading option // Resolve #352 2015-12-03 17:19:43 +02:00
5b1ceccd1f Add Quickstart for Library Manager 2015-12-03 00:40:17 +02:00
bf1751059c Fix URL for article 2015-12-03 00:28:35 +02:00
7e069afbb2 Add new articles 2015-12-02 23:58:21 +02:00
bacb813b31 Add "Articles/Manuals" for IDE docs 2015-12-02 23:51:07 +02:00
c670372b41 Move Library Manager to separate group 2015-12-02 23:28:49 +02:00
ec9b8f980d Merge branch 'release/v2.4.1' 2015-12-01 19:02:16 +02:00
28399f8ac6 Merge branch 'release/v2.4.1' into develop 2015-12-01 19:02:16 +02:00
ef5fa4dea0 Version bump to 2.4.1 2015-12-01 19:02:01 +02:00
84e82dd39a Restore PLATFORMIO macros with the current version 2015-12-01 19:00:40 +02:00
f842898102 Remove "future" code 2015-12-01 18:38:32 +02:00
1bf73c268d Merge branch 'release/v2.4.0' 2015-12-01 17:51:04 +02:00
17ec85263c Merge branch 'release/v2.4.0' into develop 2015-12-01 17:51:04 +02:00
50ba235917 Version bump to 2.4.0 (issues #271, #334, #335, #336, #339, #340, #343, #345, #346) 2015-12-01 17:50:35 +02:00
14fc21c379 Drop Click to (5.1) <6 // Issue #346 2015-12-01 17:43:16 +02:00
306f2f980d Drop Click to <6 2015-12-01 17:41:10 +02:00
a7a82b1c0a Fix PlatformIO version 2015-12-01 16:28:47 +02:00
d806097b60 Fix PlatformIO version. 2015-12-01 13:47:56 +02:00
9f4b73d821 Update Arduino core for Espressif platform to 2.0.0 // Resolve #345 2015-12-01 12:04:41 +02:00
ff5d57039e Merge branch 'feature/issue-339-espressif-rc-framework' into develop 2015-12-01 11:51:50 +02:00
db42863f54 Update build flags for espressif platform. 2015-12-01 11:21:23 +02:00
946f21879c Add new article by Keith Hughes 2015-11-30 21:46:21 +02:00
20b214f3a4 Rephrase slogan (add library manager) 2015-11-30 18:29:30 +02:00
8aedc50f30 Rephrase slogan 2015-11-30 18:05:32 +02:00
cd11171e33 Lint code with the latest PyLint 2015-11-30 01:11:57 +02:00
bcb4e1abfd Add new article by Mistan 2015-11-29 23:23:31 +02:00
786b977603 Print "unexpected block" for non-PlatformIO exceptions 2015-11-29 19:05:02 +02:00
5264d85a78 Fix broken link to extra css 2015-11-29 17:56:26 +02:00
5713a6233f PlatformIO is an open source ecosystem for IoT development 2015-11-28 17:14:42 +02:00
98ad4adcf3 Numerate installation methods 2015-11-27 23:56:30 +02:00
304c023b4e Fix unicode issue for Python 2.6 2015-11-27 23:49:49 +02:00
7ce1dd4f5c Fix ParseFlags for mbed 2015-11-27 21:59:08 +02:00
332b19f35b Update requirements.txt 2015-11-27 21:19:19 +02:00
774ea5240e Update click to 6.1 2015-11-27 21:16:20 +02:00
221b7ed188 Fix relative include path for preprocessor using "build_flags" // Resolve #271 2015-11-27 21:15:09 +02:00
304339e309 Try navbar over footer 2015-11-27 13:22:06 +02:00
bf9c9b8985 Add navbar to doc 2015-11-27 00:37:46 +02:00
e85bc39315 Fix inaccurate Vim instructions // Issue #340 2015-11-26 22:15:57 +02:00
ed32e07e34 Better exceptions handling 2015-11-26 22:02:59 +02:00
9bd1f99b69 Improve espressif platform for RC version of framework 2015-11-26 20:19:36 +02:00
25f57cc683 Add logo to the docs 2015-11-26 14:44:44 +02:00
fb4d605e33 Rename to Custom Board/Platform 2015-11-26 13:31:41 +02:00
426b276b08 Rename to Custom Board/Platform 2015-11-26 13:28:48 +02:00
a085d90af2 Fix broken link 2015-11-26 00:32:23 +02:00
8023b85085 Improve @circleci doc 2015-11-26 00:10:36 +02:00
f17d2d7f90 @circleci doesn't support matrix builds 2015-11-25 22:27:57 +02:00
aef06e837a Fix "LockFailed: failed to create appstate.json.lock" error for Windows 2015-11-25 19:54:06 +02:00
d63f6cff08 Update FAQ & History // Resolve #331 2015-11-24 19:58:24 +02:00
354fbf6253 Add new board with mbed framework support 2015-11-24 19:20:20 +02:00
238ce2e858 fix moteinomega configuration // Resolve #335 2015-11-24 19:08:19 +02:00
c8b6bd1c2c Add new article "Using PlatformIO to get started with Arduino in CLion IDE" by @mseroczynski 2015-11-24 17:17:25 +02:00
dd5a509a99 Fix ESP-12E flash size // Resolve #333 2015-11-24 13:14:41 +02:00
970ddd44bf Fix maximum_size for ESP-12E board // Resolve #333 2015-11-23 18:39:56 +02:00
c0eded84a0 Only bug fixes in 2.3.6 2015-11-23 17:27:02 +02:00
5a83ebe48e Add new article by @joshglendenning about "@Armstrap Eagle and @PlatformIO" 2015-11-20 22:41:36 +02:00
d90697d8db Merge pull request #328 from hoosierEE/develop
Slight grammar/wording tweaks
2015-11-20 00:08:05 +02:00
159c0a93d2 Start 2.4.0 2015-11-18 20:14:16 +02:00
a6040bb53d Merge branch 'release/v2.3.5' 2015-11-18 20:11:40 +02:00
7d39c886f4 Merge branch 'release/v2.3.5' into develop 2015-11-18 20:11:40 +02:00
771a90a588 Bump to @PlatformIO 2.3.5 2015-11-18 20:11:00 +02:00
7b1858a5ce Fix compilation error TWI_Disable not declared for Arduino Due board // Issue #329 2015-11-18 20:08:27 +02:00
c95226ec1e Fix includes for Windows 2015-11-18 19:18:50 +02:00
6bece3f371 Improve running @PlatformIO outside virtualenv 2015-11-18 19:12:53 +02:00
48c3e5aa29 Remove user's data 2015-11-18 19:12:12 +02:00
73ae2ffb9b Add Apache License, Version 2.0 to @PlatformIO examples README 2015-11-18 17:49:21 +02:00
34aaf7b157 Add Apache License, Version 2.0 to @PlatformIO docs 2015-11-18 17:33:46 +02:00
904b08f497 Add Apache License, Version 2.0 to @PlatformIO source code 2015-11-18 17:16:17 +02:00
5454c35430 Fix empty list with serial ports on Mac OS X // Resolve #294 2015-11-17 23:20:04 +02:00
aa98d7dc5d Skip thread exceptions for telemetry 2015-11-17 23:04:49 +02:00
020c1c7975 Slight grammar/wording tweaks 2015-11-17 13:26:42 -05:00
cf98750f4b Fix project generator for CLion IDE under Windows OS with invalid path to executable // Resolve #326 2015-11-16 23:17:23 +02:00
09ccae0f30 Update Arduino AVR/SAM frameworks to 1.6.6 // Resolve #321 2015-11-16 23:10:14 +02:00
522cbacada Add new article by @nocd5 2015-11-13 17:45:36 +02:00
841fa02b18 Add new article by ALvaro Garcia Gomez 2015-11-12 17:38:56 +02:00
47041272d2 Fix Circle build 2015-11-12 17:28:25 +02:00
c7a6f4f186 Update SCons to 2.4.1 2015-11-12 17:07:17 +02:00
2756984273 Add "open-source" to slogan 2015-11-11 14:59:47 +02:00
cc46fa34e8 Add "framework-arduinonordicnrf51" for the platform 2015-11-10 00:12:30 +02:00
b94cc655c2 Fix lint error. 2015-11-09 21:02:05 +02:00
1c5d34cb5f Update nordicnrf51 platform for RFduino. 2015-11-09 20:24:41 +02:00
ace9ae0b24 Initial support for RFduino. 2015-11-09 18:10:43 +02:00
91345c0bdd Add support for pySerial 3.0 // Resolve #307 2015-11-06 19:54:15 +02:00
1790c6bd0f Merge branch 'feature/pyserial-3.0' into develop 2015-11-06 16:58:50 +02:00
d72b899471 Fix installation on Mac OS X El Capitan // Resolve #312 2015-11-06 16:38:41 +02:00
bf9bbabfd6 Update languages for non-english articles 2015-11-04 16:06:43 +02:00
fff9b34ed7 Fix country name 2015-11-04 16:04:18 +02:00
ce3a8c1f46 Update articles 2015-11-04 16:02:49 +02:00
c420fa4bc2 Add new article "Arduino development at the command line: VIM + @PlatformIO (Japan)" by @caad1229 2015-11-04 00:10:42 +02:00
8e5f9067af Fix article url 2015-11-03 23:56:59 +02:00
306b0a2f62 Fix firmware uploading for "nordicrf51" development platform // Resolve #316 2015-11-02 23:03:05 +02:00
96f4667755 Update bottle to 0.12.9 2015-11-02 22:39:37 +02:00
2c53bd49f2 Upload firmware using external programmer via "platformio run –target program" // Resolve #311 2015-11-02 22:36:49 +02:00
caa0961337 Fix handling of upload port when board option is not specified in platformio.ini // Resolve #313 2015-11-02 21:41:13 +02:00
32d3b632d2 Add support for Espressif ESP8266 ESP-12E board (NodeMCU) // Resolve #310 2015-11-02 21:18:09 +02:00
3945edb7fe Update default cpu frequency for NodeMCU board 2015-10-22 17:59:43 +03:00
928feee008 Remove udev rules for ESP-12E (HL-340 dupl.) 2015-10-21 13:19:44 +03:00
9ef4b00238 Fix udev rules for ESP-12E (NodeMCU) 2015-10-21 13:11:13 +03:00
616a769ff5 Add Espressif ESP-12E board (NodeMCU) 2015-10-21 12:48:13 +03:00
ef2c96ac84 Add more examples for @Travis-CI 2015-10-20 17:35:56 +01:00
1c63da7f33 Improve Travis CI doc 2015-10-19 18:25:06 +01:00
2e00e5f463 Add new article "First Arduino I2C Experience with PaltformIO" 2015-10-19 17:59:38 +01:00
8360bf9d84 Up to 2.4.0.ev0 2015-10-16 15:29:28 +01:00
1520c096a4 Add libOpenCM3 framework for nucleo_f103rb board // Resolve #309 2015-10-16 15:22:11 +01:00
a965bfd32e Fix boards ldscript test 2015-10-16 16:17:24 +03:00
7741790bd8 Add libopenCM3 support for nucleo_f103rb board. 2015-10-16 14:50:28 +03:00
f0e6f8cee2 Update requests to 2.8.1, lockfile to 0.11.0 2015-10-13 20:03:35 +01:00
c4a4dcd419 Merge branch 'release/v2.3.4' 2015-10-13 18:40:46 +01:00
b89a04acd8 Merge branch 'release/v2.3.4' into develop 2015-10-13 18:40:46 +01:00
b7d2619651 Version bump to 2.3.4 (issues #132, #279, #290, #302, #305, #306) 2015-10-13 18:40:23 +01:00
c07e957e28 Fix FAQ doc 2015-10-13 18:36:37 +01:00
b183431c27 Install SCons automatically and avoid error: option --single-version-externally-managed not recognized 2015-10-13 18:24:40 +01:00
177353bf7a PlatformIO command completion in Terminal for bash and zsh // Resolve #290 2015-10-13 17:44:28 +01:00
de2d6818c1 Full support of CLion IDE including code auto-completion // Resolve #132 2015-10-13 14:01:16 +01:00
f758d8607a Use teensy CLI loader for upload of .hex files on OSX // Resolve #306 2015-10-12 16:29:24 +01:00
1164ef31ca Fix missing of framework-mbed package for teensy platform // Resolve #305 2015-10-12 13:24:42 +01:00
2997273654 Merge branch 'develop' of https://github.com/ivankravets/platformio into feature/pyserial-3.0 2015-10-10 14:26:21 +01:00
20edf7de41 Add support for @ubIQio Ardhat board // Resolve #302 2015-10-10 11:35:01 +01:00
7467c281cc Add support for @ubIQio Ardhat board 2015-10-10 11:33:38 +01:00
3b8d7304ff Propose upgrading via pip 2015-10-09 14:12:30 +01:00
6e274cbf20 Correct social links 2015-10-08 16:59:12 +01:00
3a0614641b Add links for Hackaday 2015-10-08 16:50:47 +01:00
c395dd5ebd Update requests to 2.8.0 2015-10-07 11:57:46 +01:00
1c9dc2ba3d Handle WindowsError when can't remove .pioenvs directory 2015-10-06 17:06:47 +01:00
52b98dd159 Add "Commands completion in Terminal" 2015-10-04 15:20:49 +01:00
1426e78793 Show valid environment names when user typed unknown values 2015-10-03 15:38:33 +01:00
8eb2798e5c Direct import of comports 2015-10-03 12:28:21 +01:00
ec6af9a460 Merge branch 'release/v2.3.3' 2015-10-02 16:24:02 +01:00
ec844961c7 Merge branch 'release/v2.3.3' into develop 2015-10-02 16:24:02 +01:00
e1c9cb2c00 Version bump to 2.3.3 (issues #263, #288, #292, #295, #296, #297) 2015-10-02 16:23:46 +01:00
2c0d26e06d Skip empty serial ports // Issue #294 2015-10-02 16:20:07 +01:00
3c36eafdfa Avoid pip cache when problem occurs for upgrade process // Issue #295 2015-10-02 16:14:04 +01:00
e22ab787dd Fix ESP8266 compile errors about RAM size when adding 1 library // Resolve #297 2015-10-02 15:34:36 +01:00
948b75aeda Merge pull request #299 from valeros/develop
Update espressif platform // Resolve #296, #297
2015-10-02 15:22:09 +01:00
4dcef89301 Update espressif platform // Resolve #296, #297 2015-10-02 16:11:00 +03:00
12b29a760a More explanations about NotPlatformProject 2015-10-01 17:04:26 +01:00
43ca0e149f Remove debug info 2015-09-30 16:56:13 +01:00
ad1666dd0a Fix double quotes in defines for Project Generator // Issue #294 2015-09-30 16:54:12 +01:00
1b4d4f5695 Handle Atom & Vim as IDE 2015-09-30 14:54:07 +01:00
a714e6084a Add to FAQ "Unable to install PlatformIO: [Errno 1] Operation not permitted" // Resolve #295 2015-09-28 16:57:28 +01:00
a8dd5d85a5 Add support for ST Nucleo F446RE board // Pull #293 2015-09-28 13:19:07 +01:00
83363c7077 Merge pull request #293 from dkuku/patch-1
Add support for ST Nucleo F446RE board
2015-09-28 13:12:48 +01:00
d99a57365f Add support for LightBlue Bean board // Issue #292 2015-09-28 12:09:03 +01:00
3cb41cf6b0 Update ststm32.json
added nucleo_f446re
2015-09-27 03:02:34 +01:00
5201626d6a Merge pull request #292 from mplewis/add-lightblue-boards
config: add LightBlue Bean board definition and docs
2015-09-24 09:43:57 +02:00
f812e74324 config: fix Punch Through vendor name 2015-09-23 11:57:54 -05:00
0668d6d290 docs: remove LightBlue Bean docs 2015-09-23 11:54:00 -05:00
46d1c2c86c Fix broken lock file for "appstate" storage // Resolve #288 2015-09-23 16:35:31 +03:00
ee7fe1fc10 Add to FAQ info about Archlinux issue with libncurses.so.5 // Resolve #291 2015-09-23 15:55:19 +03:00
c997495b5d docs: fix underline length 2015-09-22 15:04:06 -05:00
605b5755bf config: add LightBlue Bean board definition and docs 2015-09-22 14:54:32 -05:00
b60c761cce Fix firmware uploading to Arduino Leonardo board using Mac OS // Resolve #287 2015-09-11 12:53:04 +03:00
12d6df6962 Merge branch 'release/v2.3.2' 2015-09-10 20:44:53 +03:00
34972c77f5 Merge branch 'release/v2.3.2' into develop 2015-09-10 20:44:53 +03:00
2c5db64677 Version bump to 2.3.2 (issues #279) 2015-09-10 20:44:39 +03:00
fa33d53180 Show float RAM values for boards // Issue #286 2015-09-10 20:41:23 +03:00
57b877f445 Fix Cygwin disabling 2015-09-10 20:31:26 +03:00
dcb6d8286b Disable Cygwin support 2015-09-10 20:23:37 +03:00
3a8c515e21 Minor fix 2015-09-10 20:22:54 +03:00
50984f1475 Correct OS arch within Cygwin emu 2015-09-10 19:47:14 +03:00
4338bade5b Allow PlatformIO to be run within Cygwin environment 2015-09-10 19:35:32 +03:00
ed10ecd142 Explain how to use "lib" directory from the PlatformIO based project // Issue #273 2015-09-10 18:19:23 +03:00
6815297b0c Merge branch 'feature/issue-287' into develop 2015-09-10 17:52:40 +03:00
c72bf9ea31 Found solution for "pip/scons error: option –single-version-externally-managed not recognized" // Resolve #279 2015-09-10 17:47:19 +03:00
d4f4d9c789 Fix using $UPLOAD_PROTOCOL env variable 2015-09-10 16:56:33 +03:00
61ef27c345 Allow to use ST-Link uploader for mbed-based projects 2015-09-10 16:43:09 +03:00
9c73e59772 Fix firmware uploading for Arduino Leonardo under Unix 2015-09-10 15:20:29 +03:00
0405ba3f31 Update virtualenv if exists 2015-09-09 01:28:43 +03:00
f5f97fe0fd More explanations about lib directory 2015-09-09 01:01:41 +03:00
82a8bd01fc Fix SConsNotInstalled error for Linux Debian-based distributives 2015-09-09 00:45:51 +03:00
b15408e693 Depend on lockfile >= 0.9.1 2015-09-08 15:08:44 +03:00
74ac9ffa1c Merge branch 'release/v2.3.1' 2015-09-06 18:17:53 +03:00
ed5f035d1c Merge branch 'release/v2.3.1' into develop 2015-09-06 18:17:53 +03:00
0f5417bab4 Version bump to 2.3.1 (issues #283) 2015-09-06 18:17:40 +03:00
0311418bfc Fix critical issue when platformio init --ide__ command hangs PlatformIO // Resolve #283 2015-09-06 18:16:09 +03:00
bc449fec48 Remove SCons from pip instruction 2015-09-05 23:17:01 +03:00
1e7240d6dc Merge branch 'release/v2.3.0' into develop 2015-09-05 23:05:34 +03:00
2732d63362 Merge branch 'release/v2.3.0' 2015-09-05 23:05:33 +03:00
78bf56e327 Version bump to 2.3.0 (issues #234, #252, #256, #263, #268, #270, #272, #274, #277, #279) 2015-09-05 23:04:53 +03:00
01eb25cb39 Handle Miniterm exceptions 2015-09-05 22:58:42 +03:00
1f612b466c Fix platformio path for Windows 2015-09-05 22:43:12 +03:00
0a85e01322 Cleanup 2015-09-05 20:53:50 +03:00
3cb4e6e854 Fix project generator for Windows; update docs for IDE 2015-09-05 20:50:30 +03:00
d566eb2a36 Include subdirectories with tpls for project generator 2015-09-05 10:45:09 +03:00
71890a34be Reorganise IDE examples 2015-09-04 23:48:57 +03:00
c254a3490c Fix path for Windows-based projects 2015-09-04 20:35:56 +03:00
a032026f46 Significantly improve "Project Generator" // Resolve #280 2015-09-04 19:31:59 +03:00
e1ee61d31b Add "-d" option for "--project-dir" to init & run commands 2015-09-04 18:28:13 +03:00
ca4694e1af Update mbed framework 2015-09-04 13:10:14 +03:00
9fea8f4488 Switch to requires.io 2015-09-04 12:57:11 +03:00
f9f54da914 Fix invalid command context 2015-09-03 20:07:35 +03:00
97c1a27031 Fix serial monitor args 2015-09-03 20:00:24 +03:00
0d8d5fdb32 Allow multiple instances of @PlatformIO 2015-09-03 19:04:09 +03:00
25c448627e Added short "-h" help option for PlatformIO and sub-commands 2015-09-02 23:07:45 +03:00
baa83c6ee6 Improve PlatformIO upgrading 2015-09-02 13:42:01 +03:00
2f7a6ef0a1 Check that SCons is installed properly 2015-09-01 16:42:41 +03:00
c50332daa2 Allow to run platformio directly from the bin folder 2015-09-01 16:15:04 +03:00
8dbb282416 Info about "Add" button when $PATH doesn't exist 2015-08-29 00:51:21 +03:00
ef8f7d4fc0 More explanation about Eclipse and $PATH 2015-08-29 00:47:56 +03:00
74ea4ae9c2 Update installation via pip 2015-08-29 00:25:29 +03:00
2cf1b1420c Fix used command and version 2015-08-28 23:53:45 +03:00
8bdcf54d9f Add new article about MBED FRDM-K64F Eclipse/PlatformIO 2015-08-28 23:50:46 +03:00
a815aa15ec Fix installation issue with pip // Resolve #279 2015-08-28 22:32:39 +03:00
b1dbba6224 Add demo to README 2015-08-28 20:15:40 +03:00
35901a125d Fix upload link for Wiring Blink demo 2015-08-28 19:55:16 +03:00
52b28867a0 Add "Demo" page 2015-08-28 19:52:37 +03:00
d7d71b60f8 Full text of docs 2015-08-28 17:19:33 +03:00
465e952ae4 Update TOP links 2015-08-28 17:16:30 +03:00
200658ae6d Use Circle built-in setuptools 2015-08-27 11:09:25 +03:00
e58f5e3617 Fix tox @develop 2015-08-25 18:08:57 +03:00
78ba3176f2 Remove SCons package from develop docs 2015-08-25 16:51:46 +03:00
abd02570f4 Use toolchain's includes pattern "include*" for Project Generator // Resolve #277 2015-08-25 16:45:12 +03:00
97b8d4eeea Add SCons to requirements list 2015-08-25 16:35:19 +03:00
92036356ca Pre-upgrade for pip and setuptools for CI 2015-08-25 16:30:16 +03:00
6842df5577 Install @PlatformIO without -U flag by default 2015-08-25 15:21:13 +03:00
793352dfbf Rephrase installation text 2015-08-25 15:16:25 +03:00
b96535abff Install @PlatformIO with update option 2015-08-25 15:12:31 +03:00
2b4b50ee08 Add info about pip 2015-08-25 15:11:23 +03:00
e2795716f9 Generate "readme.txt" for project "lib" directory // Resolve #273 2015-08-22 23:11:48 +03:00
47d5783700 Improve installation section 2015-08-22 22:27:35 +03:00
9f6c677276 Remove SCons temporary from requirements list (Circle CI fails) 2015-08-22 17:44:51 +03:00
70f117f63f Install the latest pip & setuptools packages 2015-08-22 17:42:01 +03:00
83c8e914ae Fix YAML format 2015-08-22 17:39:19 +03:00
38b6a86858 Install the latest pip & setuptools packages 2015-08-22 17:38:15 +03:00
76267b7db6 Group PlatformIO releases 2015-08-22 17:31:26 +03:00
4cd0febb18 Add information about symlinks // Issue #272 2015-08-22 17:30:58 +03:00
9d9488edd1 Add SCons to requirement list 2015-08-22 17:16:28 +03:00
a1483c263f Simplified installation process of PlatformIO // Resolve #274 2015-08-22 17:09:28 +03:00
8e42c4ae31 Explain that lib dir is suitable for private libraries // Issue #273 2015-08-21 23:56:22 +03:00
bf15ba3a78 Add answer to FAQ when Program “platformio” not found in PATH // Resolve #272 2015-08-21 23:41:50 +03:00
20a0592b37 Fix "AttributeError: 'module' object has no attribute 'packages'" // Resolve #252 2015-08-21 23:09:56 +03:00
5422054ae4 Use original 'returncode' from exec command 2015-08-21 19:50:21 +03:00
ac3844aa95 Add new articles 2015-08-21 17:17:47 +03:00
1b41ffba60 Fix home path environment variable in Eclipse project on Windows // Resolve #270 2015-08-20 14:52:03 +03:00
3393d81452 Hint "save as..." for download get-platformio.py script 2015-08-19 23:11:42 +03:00
25baee266c Add @PlatformIO Storage stats badge 2015-08-18 16:37:44 +03:00
731467d4e9 Add MinGW to PATH env for AppVeyor 2015-08-17 11:55:42 +03:00
bd03d75f14 Switch to click 5.0 2015-08-17 10:37:53 +03:00
260dd03179 Restore external build flags 2015-08-14 16:09:48 +03:00
35f7d8a4cc Enhance docs 2015-08-14 00:14:04 +03:00
84fb5e59a9 Update hello-world example 2015-08-10 22:17:37 +03:00
838ba3ad4f Add new article by Russell Davis 2015-08-10 21:51:09 +03:00
ad7be3b397 Add new development platforms: linux_arm, linux_i686 and linux_x86_64 2015-08-10 21:39:31 +03:00
27ca987284 iSort passed 2015-08-10 16:17:00 +03:00
2b8f7824c2 Add support for Linux 32/64 as host OS for cross compiling to Windows x86 2015-08-10 16:16:16 +03:00
5679271913 Add "Hello World" example for desktop platforms 2015-08-09 21:46:43 +03:00
c9491f47e1 Add support for mingw-linux toolchains 2015-08-09 21:46:07 +03:00
5e2415cb37 Add support for "windows_x86" development platform // Issue #263 2015-08-09 19:05:16 +03:00
2715efd910 Add support for Adafruit Gemma board 2015-08-09 18:08:34 +03:00
b65a356669 Merge pull request #265 from WillemMali/develop
improved error wording
2015-08-07 14:56:45 +03:00
9ec0d3bc8c improved error wording
Fixed a grammatical mistake and made the meaning clearer by replacing "it" with "this" and by adding an example.

It does increase the length of the output, but I think it's much easier to read and more informative.
2015-08-07 13:14:14 +02:00
acd0ecf38a Merge pull request #264 from jrobeson/patch-1
fix typo in udev rules file
2015-08-07 13:09:02 +03:00
b75db38e45 fix typo in udev rules file 2015-08-07 05:23:11 -04:00
c7a79cb8b4 Merge pull request #256 from bkudria/adafruit-gemma
Adafruit Gemma support
2015-08-05 10:59:59 +03:00
7e5c22706b Use own mirror when SF is offline 2015-08-04 00:27:13 +03:00
7d5a2c4dfc Set default PROGNAME to "program" 2015-08-03 23:10:47 +03:00
584d03c802 Propagating External Environment 2015-08-03 15:08:54 +03:00
0646ffc93f Restore process $PATH for SCons 2015-08-03 12:53:21 +03:00
0f8b506c76 Merge branch 'feature/issue-263-native-platform' into develop 2015-08-03 12:34:03 +03:00
f0d849a702 Added native development platform 2015-08-03 12:33:37 +03:00
0d196ef7b7 Rename env.BuildFirmware to env.BuildProgram 2015-08-02 19:52:37 +03:00
75edcef099 Adafruit Gemma support 2015-08-01 16:52:14 -07:00
ce82b14f6b Fix sys env for Windows 2015-08-01 18:33:41 +03:00
e102fb2880 Allow PROGNAME & PROGSUFFIX to be configurable within platform 2015-08-01 17:41:05 +03:00
203026a57b Use cyclic linker options just for gcc-based compilers 2015-08-01 17:39:15 +03:00
86e39f9b44 More explanations about run --targets 2015-08-01 17:30:20 +03:00
edcad9c251 Add link to Facebook page 2015-07-31 14:22:46 +03:00
cb6d433e15 Add Facebook page 2015-07-31 14:21:30 +03:00
49d5994628 Merge branch 'release/v2.2.2' 2015-07-30 18:56:13 +03:00
e488d53950 Version bump to 2.2.2 (issues #247, #253, #254, #255, #257, #260) 2015-07-30 18:54:06 +03:00
e6be7ab3b5 Minor improvements for exitStatus and returncode 2015-07-30 18:17:57 +03:00
59505cb8f3 Show internal errors from "Miniterm" using "platformio serialports monitor" command // Resolve #257 2015-07-30 18:07:26 +03:00
5761cea47e Fixed "platformio serialports monitor --help" information with HEX char for hotkeys // Resolve #253 2015-07-30 17:50:07 +03:00
d27f9a9d09 Improve CI handling 2015-07-30 17:33:45 +03:00
e43635bf9b Fix comments stripping 2015-07-30 14:37:46 +03:00
3813614d31 Support for off-line/unpublished/private libraries // Resolved #260 2015-07-29 21:14:41 +03:00
9a6189d7cd Disable Shippable Build Status 2015-07-29 20:24:18 +03:00
132f2d20fd Skip SHA1 verification for non SF packages 2015-07-29 19:59:39 +03:00
c96ae1f773 Fix linker cyclic for static libs 2015-07-29 17:48:10 +03:00
45905d0992 Merge branch 'develop' of https://github.com/ivankravets/platformio into develop 2015-07-29 17:33:20 +03:00
076696cde1 Use Linker cyclic option when deplibs exist 2015-07-29 17:33:06 +03:00
25781c7631 Add os import to Python template 2015-07-29 14:47:47 +03:00
99649614c5 Add link to article "Arduino Development in Atom Editor" 2015-07-23 19:53:13 +03:00
7a6e8279e4 Integration with Atom IDE 2015-07-23 19:25:10 +03:00
b79a79d423 Handle "OSError: [Errno 13] Permission denied" for PlatformIO installer script 2015-07-21 17:51:33 +03:00
5a91d0bf1b Disable project auto-clean while building/uploading firmware // Resolve #255 2015-07-21 14:53:38 +03:00
b9d14918f3 A few improvements for installation doc 2015-07-21 14:48:34 +03:00
5d6b2e0eb6 Add Teensy HID USB mouse example 2015-07-17 21:31:28 +03:00
3d7c3a0c7a Fix typo in history 2015-07-17 15:05:05 +03:00
2f7f7dcd6a Update release date 2015-07-17 14:58:34 +03:00
5b8c6c4d56 Merge branch 'release/v2.2.1' 2015-07-17 14:54:55 +03:00
6af7fd8007 Merge branch 'release/v2.2.1' into develop 2015-07-17 14:54:55 +03:00
bfb801acef Version bump to 2.2.1 (issues #132, #248, #249, #250, #251) 2015-07-17 14:54:39 +03:00
9379c3cb39 Updated "sdk-esp8266" package for espressif platform 2015-07-17 14:51:17 +03:00
d66e8fe7af Check if all default packages are installed 2015-07-17 14:50:06 +03:00
b85303c12a Improve espressif platform and native example for new SDK 2015-07-17 14:32:50 +03:00
60e3d7450f Fix platform auto-installation 2015-07-17 14:28:14 +03:00
4cd294ef57 Fix indention 2015-07-17 13:52:43 +03:00
890acbc80e Switch to PlatformIO's SCons version 2015-07-17 13:48:17 +03:00
de1cce41b0 Improve platform auto-installing (especially for @SmartAthill) 2015-07-16 22:19:09 +03:00
e20f6abef4 Fix mention about project conf 2015-07-16 13:29:22 +03:00
fa11f5d613 More details about limited features of CLion IDE 2015-07-16 13:27:58 +03:00
1e0adcfdc4 Bump to 2.2.1a0 2015-07-15 19:45:56 +03:00
d5c852d329 Project generator for CLion IDE // Resolve #132 2015-07-15 19:34:10 +03:00
c4e42c88fe Fix Espressif "uploadlazy" target for @SmartAnthill Project 2015-07-13 14:02:14 +03:00
4b93ec0b0b Improve "uploadlazy" target for @SmartAnthill Project 2015-07-13 12:43:45 +03:00
21b01c8949 Note about Windows drivers for embedded boards 2015-07-07 23:33:25 +03:00
76415b930f Fixed incorrect arguments handling for "platformio serialports monitor" command // Resolve #248 2015-07-07 23:08:54 +03:00
88ad2a1626 Minor fix 2015-07-06 22:36:05 +03:00
94c459258c Add explanation about dir change 2015-07-06 18:44:00 +03:00
e1b7810465 Merge branch 'release/v2.2.0' into develop 2015-07-01 18:03:44 +03:00
6c2883ba3b Merge branch 'release/v2.2.0' 2015-07-01 18:03:43 +03:00
249b00df1a Version bump to 2.2.0 (issues #233, #238, #239, #240, #242, #243, #244, #245, #246) 2015-07-01 18:03:33 +03:00
3fcf0a1bda New boards; update packages for pre-built frameworks 2015-06-30 23:34:01 +03:00
c31f591ca0 Add new boards to ST STM32 & Nordic NRF51 platforms 2015-06-30 22:25:27 +03:00
c80fb5f4b3 Update Espressif platform // Resolve #245 2015-06-30 22:21:22 +03:00
218a978f6d Update PlatformIO slogan 2015-06-29 22:26:37 +03:00
f6aed63055 Specify full target anchor for images 2015-06-29 22:25:56 +03:00
a119e39ede Typos fix 2015-06-29 19:40:15 +03:00
94da243dad Disable .user file for Qt Creator (additional steps are explained in docs) // Resolve #244 2015-06-29 18:02:19 +03:00
244412daf1 Update IDE integration instructions for Qt Creator and VisualStudio 2015-06-29 17:59:47 +03:00
29d7137a3d Fix include paths without HOMEDRIVE for VisualStudio 2015-06-29 17:40:10 +03:00
9017cb1600 Fix access to env variable from qtmake 2015-06-29 16:44:37 +03:00
80b012c157 Fix incorrect "includes" for project generator 2015-06-29 16:36:02 +03:00
b80c525952 Improve docs for env's "target" option 2015-06-28 20:38:37 +03:00
1af6eba151 Rename "srcbuild_flags" env option to "src_build_flags" 2015-06-28 20:18:16 +03:00
e288499db9 Rename "install_libs" env option to "lib_install" 2015-06-28 20:16:43 +03:00
ebdbf79868 Rename "use_libs" env option to "lib_use" 2015-06-28 19:44:35 +03:00
776a2027fb Rename "ignore_libs" env option to "lib_ignore" 2015-06-28 19:31:28 +03:00
a928f4aa8f Rename "ldf_cyclic" env option to "lib_dfcyclic" 2015-06-28 19:20:31 +03:00
9c5f9b6e30 Improve embedded texts 2015-06-27 22:47:44 +03:00
ae4918bdb7 Fix relative path for includes when generating project for IDE // Resolve #243 2015-06-27 21:20:44 +03:00
a581ba9814 Fix project generator for Microsoft Visual Studio 2015-06-27 21:18:33 +03:00
31840bbc11 Update PlatformIO logo 2015-06-27 17:57:21 +03:00
53b005bbed Simplify installation process for development version 2015-06-27 15:18:51 +03:00
82864d38e2 Fix IDE project generator when board is specified // Resolve #242 2015-06-27 15:13:27 +03:00
43205b8cd5 Correct fs directory separator // Issue #240 2015-06-23 14:24:46 +03:00
e240e0ee32 Add to FAQ ARM toolchain issue with "error while loading shared libraries" 2015-06-22 18:45:20 +03:00
6c7e26412a Change source dir to "src" 2015-06-22 17:27:32 +03:00
3232ba6a6c Allow to exclude/include source files from build process using src_filter // Resolve #240 2015-06-22 15:06:39 +03:00
46461b0721 Merge branch 'hotfix/v2.1.2' into develop 2015-06-21 21:56:16 +03:00
90508dfd96 Merge branch 'hotfix/v2.1.2' 2015-06-21 21:51:38 +03:00
d8dba90f77 Fix broken link to SCons installer 2015-06-21 21:48:45 +03:00
829d5781a5 Allow to launch own extra script before firmware building/uploading processes // Resolve #239 2015-06-19 15:29:22 +03:00
8e95bfb464 Allow to specify own path to the linker script (ld) using build_flags option // Resolve #233 2015-06-19 13:43:30 +03:00
91563b01d2 Improve path validator 2015-06-19 00:10:50 +03:00
89e2f46e68 Update dependent test-lib 2015-06-19 00:10:17 +03:00
5f1f4a1b19 Bump to 2.2.0.dev0 2015-06-17 14:08:22 +03:00
4669dc7f16 Fix "stk500v2_command(): command failed" // Resolve #238 2015-06-17 13:35:10 +03:00
ca721d7262 Update dependent test-lib 2015-06-17 13:29:28 +03:00
14f84a49a6 Allow to specify library compatibility with the all platforms/frameworks using * symbol in library.json 2015-06-17 13:28:56 +03:00
4744f5afdc Merge pull request #235 from ctag/patch-1
Updated recommened platforms install command
2015-06-13 22:07:29 +02:00
3a48f1c40b Updated recommened platforms install
$ platformio install [platform]
The above line is obsolete, I've changed the recommendation to reflect this latest version of the program.
2015-06-12 23:47:17 -05:00
aea7121076 Merge branch 'release/v2.1.1' 2015-06-09 22:21:21 +03:00
50875ff74b Merge branch 'release/v2.1.1' into develop 2015-06-09 22:21:21 +03:00
dc13048254 Version bump to 2.1.1 (issues #229, #231, #232) 2015-06-09 22:20:53 +03:00
18145d2c1c Add OpenHub badge 2015-06-09 22:08:13 +03:00
f868c64d81 Automatically detect upload port using VID:PID board settings // Resolve #231 2015-06-08 23:02:05 +03:00
3b7ad2d333 Avoid "LibInstallDependencyError" when more then 1 library is found // Resolve #229 2015-06-06 16:41:00 +03:00
6732c7cb7c Better handling of user exceptions 2015-06-06 15:02:12 +03:00
7ba67582de Fix indention 2015-06-05 19:30:49 +03:00
35ae470196 Fix Windows Error 32 while cleanup pioenvs dir 2015-06-05 19:12:57 +03:00
fa339a8b70 Fix firmware verification for examples 2015-06-04 23:17:18 +03:00
43b27c138a Fix bad indentation 2015-06-04 23:15:28 +03:00
36cdbb8f0c Improv detection of build changes 2015-06-04 22:50:13 +03:00
8c331df105 Use direct path to LDScript 2015-06-04 21:24:19 +03:00
02d4efcfb5 Merge branch 'release/v2.1.0' into develop 2015-06-03 19:54:52 +03:00
00cb6bd845 Merge branch 'release/v2.1.0' 2015-06-03 19:54:51 +03:00
f038c7a28e Version bump to 2.1.0 (issues #215, #219, #221, #225, #226) 2015-06-03 19:54:39 +03:00
18b4497be7 Add info about Silicon Labs EFM32 platform 2015-06-03 19:53:00 +03:00
8704ad4032 Add new article by @lekum "Discovering PlatformIO: The RaspberryPi / Arduino combo kit is...." 2015-06-03 19:42:48 +03:00
f899e255f3 Add Silicon Labs EFM32 "siliconlabsefm32" development platform // Issue #226 2015-06-03 19:31:09 +03:00
23cf725c20 Skip SF 5xx errors 2015-06-03 19:14:10 +03:00
ba20459178 Merge pull request #227 from valeros/develop
Add Silicon Labs EFM32 development platform // Resolve #226
2015-06-02 17:07:54 +03:00
442604003d Add Silicon Labs EFM32 development platform // Resolve #226 2015-06-02 14:38:41 +03:00
369d0e1a00 Fix response with 504 code when SF is off-line 2015-06-01 17:49:04 +03:00
04b2f94478 Enable auto erase for flash memory while uploading 2015-06-01 17:26:17 +03:00
61b2bd6cb8 Describe in documentation how to create/register own board for PlatformIO 2015-05-30 17:09:01 +03:00
eea4ba3581 Merge pull request #223 from valeros/develop
Update IDE pictures in docs with "forced" run command // Resolve #215
2015-05-29 22:26:04 +03:00
3cb3b4f2ba Update IDE pictures in docs with "forced" run command // Resolve #215 2015-05-29 22:24:04 +03:00
2f376c9d36 Bump to 2.0.3.dev1 2015-05-29 20:33:24 +03:00
c4877e4444 Fix firmware uploading using USB programmer (USBasp) for atmelavr platform // Resolve #221 2015-05-29 20:29:24 +03:00
a288736ced Fix broken tests when SF is offline 2015-05-29 18:34:21 +03:00
1debe847d4 Disabled "nano.specs" for ARM-based platforms // Resolve #219 2015-05-29 17:47:30 +03:00
0c2a15a866 Trim whitespaces 2015-05-29 17:44:57 +03:00
da7e60b49f Switch badges to shields.io 2015-05-29 14:42:41 +03:00
d7c6da71f1 Integrate PlatformIO with Shippable CI 2015-05-28 21:07:41 +03:00
c4ed09c68f Integrate PlatformIO with Circle CI 2015-05-28 16:10:11 +03:00
06baa98823 Fix "ConnectionError" when PlatformIO SF Storage is off-line 2015-05-28 13:44:10 +03:00
8d9071e7c2 Merge branch 'feature/circleci' into develop 2015-05-28 13:10:48 +03:00
8d0785cf1b Fix Circle CI Example 2015-05-28 13:10:36 +03:00
ef0ce3fc07 Update project submodules 2015-05-28 12:44:37 +03:00
af9cdd0694 Remove invalid PyPi SCons package 2015-05-28 12:38:21 +03:00
a120514e9e Fix bottle requirement 2015-05-28 12:35:25 +03:00
e627a6ebdd Fix environment 2015-05-28 12:30:55 +03:00
94c37f4584 Integrate Circle CI 2015-05-28 12:28:24 +03:00
a48b62b0f2 Disable Travis CI cache 2015-05-28 12:03:46 +03:00
a9a9545b37 Fix resolving of C/C++ std libs by Eclipse IDE // Resolve #220 2015-05-28 00:19:55 +03:00
ca1df9462d Bump version to 2.0.2 2015-05-27 19:32:47 +03:00
32b057d1f3 Merge branch 'release/v2.0.2' 2015-05-27 19:27:02 +03:00
5e340843b1 Fix order for "listdir" method 2015-05-27 19:21:29 +03:00
0311298af1 Update history with 2.0.1 release 2015-05-27 17:03:34 +03:00
b4c2e9301c Merge branch 'release/v.2.0.1' 2015-05-27 17:02:08 +03:00
089ef2fa08 Merge branch 'release/v.2.0.1' into develop 2015-05-27 17:02:08 +03:00
9232c7abb1 Version bump to 2.0.1 (issues #210, #211, #212, #214, #216, #217) 2015-05-27 17:01:59 +03:00
27b7c2e201 Enhance docs for Library Manager 2015-05-27 16:23:39 +03:00
392758a842 Allow to control cyclic behaviour of Library Dependency Finder 2015-05-26 23:45:29 +03:00
25fde8db86 Cleanup boards 2015-05-26 23:00:40 +03:00
65ad07af6b Fix failing with `platformio init --ide eclipse` without boards // Resolve #217 2015-05-26 22:55:59 +03:00
ac7479415b Add support for new WildFire boards from Wicked Device to atmelavr platform 2015-05-26 22:52:09 +03:00
1f64f0aacf Merge pull request #218 from valeros/develop
Add WildFire boards from Wicked Device.
2015-05-26 20:47:24 +03:00
8fb0e1b75f Add WildFire boards from Wicked Device. 2015-05-26 20:06:37 +03:00
78db2cda27 Use forced run command and "--project-dir" option 2015-05-26 16:41:45 +03:00
6534fdaf04 Pass all environment variables which shall be copied from the tox invocation environment 2015-05-26 16:16:14 +03:00
2e214f16e7 Return args + options for telemetry 2015-05-26 15:04:47 +03:00
1f373b1e47 Handle AVR Symbols when initialising project for IDE // Resolve #216 2015-05-26 13:59:33 +03:00
4d36db1319 Improve handling of sys.args 2015-05-26 13:07:36 +03:00
58f0f8fab4 Use "include" directories from toolchain when exporting project for IDE // Resolve #210 2015-05-25 23:33:38 +03:00
7d949ecb16 Fix old-style class defination 2015-05-25 23:29:10 +03:00
be70047233 Improve running project from other directory (not CWD) 2015-05-25 23:26:35 +03:00
7649769437 Disable packages/libs updating while "upgrade" operation // Resolve #214 2015-05-25 22:50:46 +03:00
bcf0cc26aa Add --force for run command 2015-05-25 21:45:50 +03:00
96ce0692f8 Merge branch 'feature/reversed-cppath' into develop 2015-05-25 19:35:48 +03:00
9ba3136a24 Fix library order 2015-05-25 19:35:40 +03:00
92313c0686 Reversed order for CPPATH via Append 2015-05-25 13:35:26 +03:00
a1bb98fd5c Reversed order for CPPATH 2015-05-25 13:18:52 +03:00
146d430695 Revert CI detecting 2015-05-25 13:17:50 +03:00
b6a0a0f7c7 Merge pull request #213 from valeros/develop
Add c++ support for ststm32 platform // Resolve #211
2015-05-25 12:54:06 +03:00
97de38d6a6 Add c++ support for ststm32 platform // Resolve #211 2015-05-25 12:45:36 +03:00
65ba676f01 Correct path to import project in VisualStudio 2015-05-25 12:00:53 +03:00
5d9f81533d Use os.environ to detect CI system 2015-05-25 10:11:28 +03:00
1948a730d9 Pass environment variables to subprocess 2015-05-25 09:50:37 +03:00
77f2b17afd Update package for Arduino framework to 1.6.4 // Resolve #212 2015-05-24 18:48:45 +03:00
8739efaee4 Simplify Travis example 2015-05-24 01:02:12 +03:00
8f65492d96 Extend ASM list of source files 2015-05-23 20:23:13 +03:00
4f10047ba3 Handle new environment variable PLATFORMIO_BUILD_FLAGS 2015-05-23 19:17:07 +03:00
9560a665e5 Better detecting of Continuous Integration system 2015-05-23 18:36:11 +03:00
1113e5d69c Improve Travis CI docs 2015-05-23 17:42:22 +03:00
363c65da5f Fix stripping comments when converting from *.ino to *.cpp 2015-05-23 15:00:21 +03:00
28dd32070f Pass to API requests information about Continuous Integration system 2015-05-23 14:23:55 +03:00
f732d4088b Fix bug with converting "*.ino" to "*.cpp" 2015-05-23 14:02:05 +03:00
e22e4d23e4 Fix broken link 2015-05-22 22:16:27 +03:00
ce7d6f0507 Add where PlatformIO 2.0 was made 2015-05-22 22:03:55 +03:00
f499494963 Merge branch 'release/v2.0.0' into develop 2015-05-22 21:49:14 +03:00
387 changed files with 10960 additions and 25065 deletions

21
.appveyor.yml Normal file
View File

@ -0,0 +1,21 @@
build: off
environment:
matrix:
- TOXENV: "py27"
install:
- cmd: git submodule update --init --recursive
- cmd: SET PATH=%PATH%;C:\Python27\Scripts;C:\MinGW\bin
- cmd: pip install tox
test_script:
- cmd: tox
notifications:
- provider: Slack
incoming_webhook:
secure: E9H0SU0Ju7WLDvgxsV8cs3J62T3nTTX7QkEjsczN0Sto/c9hWkVfhc5gGWUkxhlD975cokHByKGJIdwYwCewqOI+7BrcT8U+nlga4Uau7J8=
on_build_success: false
on_build_failure: true
on_build_status_changed: true

21
.coveragerc Normal file
View File

@ -0,0 +1,21 @@
# Copyright 2014-present PlatformIO <contact@platformio.org>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
[report]
# Regexes for lines to exclude from consideration
exclude_lines =
pragma: no cover
def __repr__
raise AssertionError
raise NotImplementedError

56
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,56 @@
What kind of issue is this?
- [ ] Question. This issue tracker is not the place for questions. If you want to ask how to do
something, or to understand why something isn't working the way you expect it to, use
our Community Forums https://community.platformio.org
- [ ] PlatformIO IDE. All issues related to PlatformIO IDE should be reported to appropriate repository
https://github.com/platformio/platformio-atom-ide/issues
- [ ] Development Platform. All issues related to Development Platform should be reported to appropriate repository. Search it using link below
https://github.com/platformio?query=platform-
- [ ] Feature Request. Start by telling us what problem youre trying to solve. Often a solution
already exists! Dont send pull requests to implement new features without first getting our
support. Sometimes we leave features out on purpose to keep the project small.
- [ ] PlatformIO Core. If youve found a bug, please provide an information below.
*You can erase any parts of this template not applicable to your Issue.*
------------------------------------------------------------------
### Configuration
**Operating system**:
**PlatformIO Version** (`platformio --version`):
### Description of problem
#### Steps to Reproduce
1.
2.
3.
### Actual Results
### Expected Results
### If problems with PlatformIO Build System:
**The content of `platformio.ini`:**
```ini
Insert here...
```
**Source file to reproduce issue:**
```cpp
Insert here...
```
### Additional info

8
.gitignore vendored
View File

@ -2,8 +2,10 @@
*.pyc
.pioenvs
.tox
.sconsign.dblite
examples/ide-eclipse/.metadata
examples/ide-eclipse/RemoteSystemsTempFiles
docs/_build
dist
build
.cache
coverage.xml
.coverage
htmlcov

13
.gitmodules vendored
View File

@ -1,6 +1,7 @@
[submodule "examples/atmelavr-and-arduino/arduino-external-libs/lib/Adafruit-PCD8544-Nokia-5110-LCD-library"]
path = examples/atmelavr-and-arduino/arduino-external-libs/lib/Adafruit-PCD8544-Nokia-5110-LCD-library
url = https://github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-library.git
[submodule "examples/atmelavr-and-arduino/arduino-external-libs/lib/Adafruit-GFX-Library"]
path = examples/atmelavr-and-arduino/arduino-external-libs/lib/Adafruit-GFX-Library
url = https://github.com/adafruit/Adafruit-GFX-Library.git
[submodule "examples"]
path = examples
url = https://github.com/platformio/platformio-examples.git
[submodule "docs"]
path = docs
url = https://github.com/platformio/platformio-docs.git
branch = develop

View File

@ -1,3 +1,3 @@
[settings]
line_length=79
known_third_party=click,requests,serial,SCons,pytest,bottle
known_third_party=bottle,click,lockfile,pytest,requests,semantic_version,serial,SCons

270
.pylintrc
View File

@ -1,29 +1,9 @@
[MASTER]
# Specify a configuration file.
#rcfile=
# Python code to execute, usually for sys.path manipulation such as
# pygtk.require().
#init-hook=
# Profiled execution.
profile=no
# Add files or directories to the blacklist. They should be base names, not
# paths.
ignore=CVS
# Pickle collected data for later comparisons.
persistent=yes
# List of plugins (as comma separated values of python modules names) to load,
# usually to register additional checkers.
load-plugins=
[MESSAGES CONTROL]
# Only show warnings with the listed confidence levels. Leave empty to show
# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED
confidence=
# Enable the message, report, category or checker with the given id(s). You can
# either give multiple identifier separated by comma (,) or put this option
# multiple time. See also the "--disable" option for examples.
@ -38,244 +18,6 @@ load-plugins=
# --enable=similarities". If you want to run only the classes checker, but have
# no Warning level messages displayed, use"--disable=all --enable=classes
# --disable=W"
disable=C0103,C0111,E0611,F0401,I0011,R0801,R0903,R0922
# disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating
[REPORTS]
# Set the output format. Available formats are text, parseable, colorized, msvs
# (visual studio) and html. You can also give a reporter class, eg
# mypackage.mymodule.MyReporterClass.
output-format=text
# Put messages in a separate file for each module / package specified on the
# command line instead of printing them on stdout. Reports (if any) will be
# written in a file name "pylint_global.[txt|html]".
files-output=no
# Tells whether to display a full report or only the messages
reports=yes
# Python expression which should return a note less than 10 (10 is the highest
# note). You have access to the variables errors warning, statement which
# respectively contain the number of errors / warnings messages and the total
# number of statements analyzed. This is used by the global evaluation report
# (RP0004).
evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
# Add a comment according to your evaluation note. This is used by the global
# evaluation report (RP0004).
comment=no
# Template used to display messages. This is a python new-style format string
# used to format the message information. See doc for all details
#msg-template=
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
[BASIC]
# Required attributes for module, separated by a comma
required-attributes=
# List of builtins function names that should not be used, separated by a comma
bad-functions=map,filter,apply,input
# Regular expression which should only match correct module names
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
# Regular expression which should only match correct module level names
const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
# Regular expression which should only match correct class names
class-rgx=[A-Z_][a-zA-Z0-9]+$
# Regular expression which should only match correct function names
function-rgx=[a-z_][a-z0-9_]{2,30}$
# Regular expression which should only match correct method names
method-rgx=[a-z_][a-z0-9_]{2,30}$
# Regular expression which should only match correct instance attribute names
attr-rgx=[a-z_][a-z0-9_]{2,30}$
# Regular expression which should only match correct argument names
argument-rgx=[a-z_][a-z0-9_]{2,30}$
# Regular expression which should only match correct variable names
variable-rgx=[a-z_][a-z0-9_]{2,30}$
# Regular expression which should only match correct attribute names in class
# bodies
class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$
# Regular expression which should only match correct list comprehension /
# generator expression variable names
inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
# Good variable names which should always be accepted, separated by a comma
good-names=i,j,k,ex,Run,_
# Bad variable names which should always be refused, separated by a comma
bad-names=foo,bar,baz,toto,tutu,tata
# Regular expression which should only match function or class names that do
# not require a docstring.
no-docstring-rgx=__.*__
# Minimum line length for functions/classes that require docstrings, shorter
# ones are exempt.
docstring-min-length=-1
[FORMAT]
# Maximum number of characters on a single line.
max-line-length=80
# Regexp for a line that is allowed to be longer than the limit.
ignore-long-lines=^\s*(# )?<?https?://\S+>?$
# Allow the body of an if to be on the same line as the test if there is no
# else.
single-line-if-stmt=no
# List of optional constructs for which whitespace checking is disabled
no-space-check=trailing-comma,dict-separator
# Maximum number of lines in a module
max-module-lines=1000
# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
# tab).
indent-string=' '
[MISCELLANEOUS]
# List of note tags to take in consideration, separated by a comma.
notes=FIXME,XXX,TODO
[SIMILARITIES]
# Minimum lines number of a similarity.
min-similarity-lines=4
# Ignore comments when computing similarities.
ignore-comments=yes
# Ignore docstrings when computing similarities.
ignore-docstrings=yes
# Ignore imports when computing similarities.
ignore-imports=no
[TYPECHECK]
# Tells whether missing members accessed in mixin class should be ignored. A
# mixin class is detected if its name ends with "mixin" (case insensitive).
ignore-mixin-members=yes
# List of classes names for which member attributes should not be checked
# (useful for classes with attributes dynamically set).
ignored-classes=SQLObject
# When zope mode is activated, add a predefined set of Zope acquired attributes
# to generated-members.
zope=no
# List of members which are set dynamically and missed by pylint inference
# system, and so shouldn't trigger E0201 when accessed. Python regular
# expressions are accepted.
generated-members=REQUEST,acl_users,aq_parent
[VARIABLES]
# Tells whether we should check for unused import in __init__ files.
init-import=no
# A regular expression matching the beginning of the name of dummy variables
# (i.e. not used).
dummy-variables-rgx=_$|dummy
# List of additional names supposed to be defined in builtins. Remember that
# you should avoid to define new builtins when possible.
additional-builtins=
[CLASSES]
# List of interface methods to ignore, separated by a comma. This is used for
# instance to not check methods defines in Zope's Interface base class.
ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
# List of method names used to declare (i.e. assign) instance attributes.
defining-attr-methods=__init__,__new__,setUp
# List of valid names for the first argument in a class method.
valid-classmethod-first-arg=cls
# List of valid names for the first argument in a metaclass class method.
valid-metaclass-classmethod-first-arg=mcs
[DESIGN]
# Maximum number of arguments for function / method
max-args=5
# Argument names that match this expression will be ignored. Default to name
# with leading underscore
ignored-argument-names=_.*
# Maximum number of locals for function / method body
max-locals=15
# Maximum number of return / yield for function / method body
max-returns=6
# Maximum number of branch for function / method body
max-branches=12
# Maximum number of statements in function / method body
max-statements=50
# Maximum number of parents for a class (see R0901).
max-parents=7
# Maximum number of attributes for a class (see R0902).
max-attributes=7
# Minimum number of public methods for a class (see R0903).
min-public-methods=2
# Maximum number of public methods for a class (see R0904).
max-public-methods=20
[IMPORTS]
# Deprecated modules which should not be used, separated by a comma
deprecated-modules=regsub,TERMIOS,Bastion,rexec
# Create a graph of every (i.e. internal and external) dependencies in the
# given file (report RP0402 must not be disabled)
import-graph=
# Create a graph of external dependencies in the given file (report RP0402 must
# not be disabled)
ext-import-graph=
# Create a graph of internal dependencies in the given file (report RP0402 must
# not be disabled)
int-import-graph=
[EXCEPTIONS]
# Exceptions that will emit a warning when being caught. Defaults to
# "Exception"
overgeneral-exceptions=Exception
disable=locally-disabled,missing-docstring,invalid-name,too-few-public-methods,redefined-variable-type,import-error,similarities,unsupported-membership-test,unsubscriptable-object,ungrouped-imports,cyclic-import

3
.style.yapf Normal file
View File

@ -0,0 +1,3 @@
[style]
blank_line_before_nested_class_or_def = true
allow_multiline_lambdas = true

View File

@ -1,19 +1,42 @@
cache:
directories:
- $HOME/.platformio
language: python
python:
- "2.7"
env:
- TOX_ENV=docs
- TOX_ENV=lint
- TOX_ENV=py26
- TOX_ENV=py27
matrix:
include:
- os: linux
sudo: false
python: 2.7
env: TOX_ENV=docs
- os: linux
sudo: false
python: 2.7
env: TOX_ENV=lint
- os: linux
sudo: required
python: 2.7
env: TOX_ENV=py27
- os: osx
language: generic
env: TOX_ENV=py27
install:
- pip install tox
- git submodule update --init --recursive
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then sudo pip install -U tox; else pip install -U tox; fi
# ChipKIT issue: install 32-bit support for GCC PIC32
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get install libc6-i386; fi
script:
- tox -e $TOX_ENV
- tox -e $TOX_ENV
after_success:
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then tox -e coverage; fi
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then bash <(curl -s https://codecov.io/bash); fi
notifications:
email: false
slack:
rooms:
secure: JD6VGfN4+SLU2CwDdiIOr1VgwD+zbYUCE/srwyGuHavnjIkPItkl6T6Bn8Y4VrU6ysbuKotfdV2TAJJ82ivFbY8BvZBc7FBcYp/AGQ4FaCCV5ySv8RDAcQgdE12oaGzMdODiLqsB85f65zOlAFa+htaXyEiRTcotn6Y2hupatrI=
on_failure: always
on_success: change

21
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,21 @@
Contributing
------------
To get started, <a href="https://www.clahub.com/agreements/platformio/platformio">sign the Contributor License Agreement</a>.
1. Fork the repository on GitHub.
2. Make a branch off of ``develop``
3. Run ``pip install tox``
4. Go to the root of project where is located ``tox.ini`` and run ``tox -e develop``
5. Activate current development environment:
* Windows: ``.tox\develop\Scripts\activate``
* Bash/ZSH: ``source .tox/develop/bin/activate``
* Fish: ``source .tox/bin/activate.fish``
6. Make changes to code, documentation, etc.
7. Lint source code ``tox -e lint``
8. Run the tests ``tox -e py27``
9. Build documentation ``tox -e docs`` (creates a directory _build under docs where you can find the html)
10. Commit changes to your forked repository
11. Submit a Pull Request on GitHub.

File diff suppressed because it is too large Load Diff

187
LICENSE
View File

@ -1,21 +1,174 @@
The MIT License (MIT)
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
Copyright (c) 2014-2015 Ivan Kravets
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
1. Definitions.
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

23
Makefile Normal file
View File

@ -0,0 +1,23 @@
lint:
pylint --rcfile=./.pylintrc ./platformio
isort:
isort -rc ./platformio
isort -rc ./tests
yapf:
yapf --recursive --in-place platformio/
before-commit: isort yapf lint
clean-docs:
rm -rf docs/_build
clean: clean-docs
find . -name \*.pyc -delete
find . -name __pycache__ -delete
rm -rf .cache
rm -rf build
rm -rf htmlcov
rm -f .coverage

View File

@ -1,66 +1,91 @@
PlatformIO
==========
.. image:: https://travis-ci.org/platformio/platformio.svg?branch=develop
:target: https://travis-ci.org/platformio/platformio
.. image:: https://travis-ci.org/platformio/platformio-core.svg?branch=develop
:target: https://travis-ci.org/platformio/platformio-core
:alt: Travis.CI Build Status
.. image:: https://ci.appveyor.com/api/projects/status/dku0h2rutfj0ctls/branch/develop?svg=true
:target: https://ci.appveyor.com/project/ivankravets/platformio
.. image:: https://ci.appveyor.com/api/projects/status/unnpw0n3c5k14btn/branch/develop?svg=true
:target: https://ci.appveyor.com/project/ivankravets/platformio-core
:alt: AppVeyor.CI Build Status
.. image:: https://gemnasium.com/platformio/platformio.png
:target: https://gemnasium.com/platformio/platformio
:alt: Dependency Status
.. image:: https://pypip.in/version/platformio/badge.png?style=flat
.. image:: https://requires.io/github/platformio/platformio/requirements.svg?branch=develop
:target: https://requires.io/github/platformio/platformio/requirements/?branch=develop
:alt: Requirements Status
.. image:: https://img.shields.io/pypi/v/platformio.svg
:target: https://pypi.python.org/pypi/platformio/
:alt: Latest Version
.. image:: https://pypip.in/download/platformio/badge.png?style=flat
:target: https://pypi.python.org/pypi/platformio/
:alt: Downloads
.. image:: https://pypip.in/license/platformio/badge.png?style=flat
.. image:: https://img.shields.io/pypi/l/platformio.svg
:target: https://pypi.python.org/pypi/platformio/
:alt: License
.. image:: https://badges.gitter.im/Join%20Chat.svg
:alt: Join the chat at https://gitter.im/platformio/platformio
:target: https://gitter.im/platformio/platformio
.. image:: https://img.shields.io/PlatformIO/Community.png
:alt: Community Forums
:target: https://community.platformio.org
.. image:: https://img.shields.io/PlatformIO/Plus.png?color=orange
:alt: PlatformIO Plus: Professional solutions for an awesome open source PlatformIO ecosystem
:target: https://pioplus.com
`Website + Library Search <http://platformio.org>`_ |
`Documentation <http://docs.platformio.org>`_ |
`Project Examples <https://github.com/platformio/platformio/tree/develop/examples>`_ |
`Blog <http://www.ikravets.com/category/computer-life/platformio>`_ |
`Reddit <http://www.reddit.com/r/platformio/>`_ |
`Twitter <https://twitter.com/PlatformIO_Org>`_
**Quick Links:** `Home Page <http://platformio.org>`_ |
`PlatformIO Plus <https://pioplus.com>`_ |
`PlatformIO IDE <http://platformio.org/platformio-ide>`_ |
`Project Examples <https://github.com/platformio/platformio-examples/tree/develop>`_ |
`Docs <http://docs.platformio.org>`_ |
`Donate <http://platformio.org/donate>`_ |
`Contact Us <https://pioplus.com/contact.html>`_
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.*
**Social:** `Twitter <https://twitter.com/PlatformIO_Org>`_ |
`Facebook <https://www.facebook.com/platformio>`_ |
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
`Bintray <https://bintray.com/platformio>`_ |
`Community <https://community.platformio.org>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-logo.png
.. image:: http://docs.platformio.org/en/stable/_static/platformio-logo.png
:target: http://platformio.org
`PlatformIO <http://platformio.org>`_ is a cross-platform code builder
and the missing library manager.
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
development. Cross-platform build system and library manager. Continuous and
IDE integration. Arduino, ESP8266 and ARM mbed compatible
* `Get Started <http://platformio.org/#!/get-started>`_
* `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
* `Development Platforms <http://platformio.org/#!/platforms>`_
* `Frameworks <http://platformio.org/#!/frameworks>`_
* `Embedded Boards Explorer <http://platformio.org/#!/boards>`_
* `Library Manager <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
* `User Guide <http://docs.platformio.org/en/latest/userguide/index.html>`_
* `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html>`_
* `IDE Integration <http://docs.platformio.org/en/latest/ide.html>`_
* `Articles about us <http://docs.platformio.org/en/latest/articles.html>`_
* `FAQ <http://docs.platformio.org/en/latest/faq.html>`_
* `Release History <http://docs.platformio.org/en/latest/history.html>`_
* **PlatformIO IDE** - The next-generation integrated development environment for IoT.
C/C++ Intelligent Code Completion and Smart Code Linter for the super-fast coding.
Multi-projects workflow with Multiple Panes. Themes Support with dark and light colors.
Built-in Terminal with PlatformIO Core tool and support for the powerful Serial Port Monitor.
All advanced instruments without leaving your favourite development environment.
* **Development Platforms** - Embedded and Desktop development platforms with
pre-built toolchains, debuggers, uploaders and frameworks which work under
popular host OS: Mac, Windows, Linux (+ARM)
* **Embedded Boards** - Rapid Embedded Programming, IDE and Continuous
Integration in a few steps with PlatformIO thanks to built-in project
generator for the most popular embedded boards and IDE
* **Library Manager** - Hundreds Popular Libraries are organized into single
Web 2.0 platform: list by categories, keywords, authors, compatible
platforms and frameworks; learn via examples; be up-to-date with the latest
version.
You have **no need** to install any *IDE* or compile any tool chains. *PlatformIO*
has pre-built different development platforms and pre-configured settings for
the most popular embedded boards. For further details, please
refer to `What is PlatformIO? <http://docs.platformio.org/en/latest/faq.html#what-is-platformio>`_
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Intel ARC32, Lattice iCE40,
Microchip PIC32, Nordic nRF51, NXP LPC, Silicon Labs EFM32, ST STM32,
TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.*
.. image:: http://docs.platformio.org/en/stable/_static/platformio-demo-wiring.gif
:target: http://platformio.org
* `PlatformIO Plus and professional solutions <https://pioplus.com>`_
* `PlatformIO IDE <http://platformio.org/platformio-ide>`_
* `Get Started <http://platformio.org/get-started>`_
* `Library Search and Registry <http://platformio.org/lib>`_
* `Development Platforms <http://platformio.org/platforms>`_
* `Frameworks <http://platformio.org/frameworks>`_
* `Embedded Boards Explorer <http://platformio.org/boards>`_
* `Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
* `User Guide <http://docs.platformio.org/en/stable/userguide/index.html>`_
* `Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>`_
* `IDE Integration <http://docs.platformio.org/en/stable/ide.html>`_
* `Articles about us <http://docs.platformio.org/en/stable/articles.html>`_
* `FAQ <http://docs.platformio.org/en/stable/faq.html>`_
* `Release Notes <http://docs.platformio.org/en/stable/history.html>`_
Use whenever. *Run everywhere.*
-------------------------------
*PlatformIO* is written in pure *Python* and **doesn't depend** on any
additional libraries/tools from an operation system. It allows you to use
additional libraries/tools from an operating system. It allows you to use
*PlatformIO* beginning from *PC (Mac, Linux, Win)* and ending with credit-card
sized computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
`BeagleBone <http://beagleboard.org>`_,
@ -69,15 +94,17 @@ sized computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
Embedded Development. *Easier Than Ever.*
-----------------------------------------
*PlatformIO* is well suited for embedded development and has pre-configured
settings for most popular `Embedded Boards <http://platformio.org/#!/boards>`_.
settings for most popular `Embedded Boards <http://platformio.org/boards>`_.
* Colourful `command-line output <https://raw.githubusercontent.com/platformio/platformio/develop/examples/platformio-examples.png>`_
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/latest/userguide/cmd_serialports.html#platformio-serialports-monitor>`_
* Configurable `build -flags/-options <http://docs.platformio.org/en/latest/projectconf.html#build-flags>`_
* `IDE Integration <http://docs.platformio.org/en/stable/ide.html>`_ with
*Arduino, Atom, Eclipse, Emacs, Energia, Qt Creator, Sublime Text, Vim, Visual Studio*
* Cloud compiling and `Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>`_
with *AppVeyor, Circle CI, Drone, Shippable, Travis CI*
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/stable/userguide/cmd_serialports.html#platformio-serialports-monitor>`_ and configurable
`build -flags/-options <http://docs.platformio.org/en/stable/projectconf.html#build-flags>`_
* Automatic **firmware uploading**
* Integration with `development environments (IDE) <http://docs.platformio.org/en/latest/ide.html>`_
* Ready for **Cloud Compiling** and `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html>`_
* Pre-built tool chains, frameworks for the popular `Hardware Platforms <http://platformio.org/#!/platforms>`_
* Pre-built tool chains, frameworks for the popular `Hardware Platforms <http://platformio.org/platforms>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-embedded-development.png
:target: http://platformio.org
@ -88,10 +115,10 @@ The Missing Library Manager. *It's here!*
*PlatformIO Library Manager* is the missing library manager for development
platforms which allows you to organize and have up-to-date external libraries.
* Friendly `Command-Line Interface <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
* Friendly `Command-Line Interface <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
* Modern `Web 2.0 Library Search <http://platformio.org/lib>`_
* Open Source `Library Registry API <https://github.com/platformio/platformio-api>`_
* Library Crawler based on `library.json <http://docs.platformio.org/en/latest/librarymanager/config.html>`_
* Library Crawler based on `library.json <http://docs.platformio.org/en/stable/librarymanager/config.html>`_
specification
* Library **dependency management**
* Automatic library updating
@ -100,7 +127,7 @@ platforms which allows you to organize and have up-to-date external libraries.
:target: http://platformio.org
:alt: PlatformIO Library Manager Architecture
Smart Code Builder. *Fast and Reliable.*
Smart Build System. *Fast and Reliable.*
----------------------------------------
*PlatformIO Code Builder* is built-on a next-generation software construction
tool named `SCons <http://www.scons.org/>`_. Think of *SCons* as an improved,
@ -110,49 +137,62 @@ cross-platform substitute for the classic *Make* utility.
* Reliable detection of *build changes*
* Improved support for *parallel builds*
* Ability to share *built files in a cache*
* Lookup for external libraries which are installed via `Library Manager <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
* Lookup for external libraries which are installed via `Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png
:target: http://platformio.org
:alt: PlatformIO Code Builder Architecture
:alt: PlatformIO Build System Architecture
Single source code. *Multiple platforms.*
-----------------------------------------
*PlatformIO* allows developer to compile the same code with different
development platforms using the *Only One Command*
`platformio run <http://docs.platformio.org/en/latest/userguide/cmd_run.html>`_.
*PlatformIO* allows the developer to compile the same code with different
development platforms using only *One Command*
`platformio run <http://docs.platformio.org/en/stable/userguide/cmd_run.html>`_.
This happens due to
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/latest/projectconf.html>`_
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/stable/projectconf.html>`_
where you can setup different environments with specific options (platform
type, firmware uploading settings, pre-built framework, build flags and many
more).
It has support for the most popular embedded platforms:
* `Atmel AVR <http://platformio.org/#!/platforms/atmelavr>`_
* `Atmel SAM <http://platformio.org/#!/platforms/atmelsam>`_
* `Espressif <http://platformio.org/#!/platforms/espressif>`_
* `Freescale Kinetis <http://platformio.org/#!/platforms/freescalekinetis>`_
* `Nordic nRF51 <http://platformio.org/#!/platforms/nordicnrf51>`_
* `NXP LPC <http://platformio.org/#!/platforms/nxplpc>`_
* `ST STM32 <http://platformio.org/#!/platforms/ststm32>`_
* `Teensy <http://platformio.org/#!/platforms/teensy>`_
* `TI MSP430 <http://platformio.org/#!/platforms/timsp430>`_
* `TI TIVA C <http://platformio.org/#!/platforms/titiva>`_
* `Atmel AVR <http://platformio.org/platforms/atmelavr>`_
* `Atmel SAM <http://platformio.org/platforms/atmelsam>`_
* `Espressif <http://platformio.org/platforms/espressif>`_
* `Freescale Kinetis <http://platformio.org/platforms/freescalekinetis>`_
* `Intel ARC32 <http://platformio.org/platforms/intel_arc32>`_
* `Lattice iCE40 <http://platformio.org/platforms/lattice_ice40>`_
* `Microchip PIC32 <http://platformio.org/platforms/microchippic32>`_
* `Nordic nRF51 <http://platformio.org/platforms/nordicnrf51>`_
* `NXP LPC <http://platformio.org/platforms/nxplpc>`_
* `ST STM32 <http://platformio.org/platforms/ststm32>`_
* `Silicon Labs EFM32 <http://platformio.org/platforms/siliconlabsefm32>`_
* `Teensy <http://platformio.org/platforms/teensy>`_
* `TI MSP430 <http://platformio.org/platforms/timsp430>`_
* `TI TIVA C <http://platformio.org/platforms/titiva>`_
Frameworks:
* `Arduino <http://platformio.org/#!/frameworks/arduino>`_
* `CMSIS <http://platformio.org/#!/frameworks/cmsis>`_
* `libOpenCM3 <http://platformio.org/#!/frameworks/libopencm3>`_
* `Energia <http://platformio.org/#!/frameworks/energia>`_
* `SPL <http://platformio.org/#!/frameworks/spl>`_
* `mbed <http://platformio.org/#!/frameworks/mbed>`_
* `Arduino <http://platformio.org/frameworks/arduino>`_
* `CMSIS <http://platformio.org/frameworks/cmsis>`_
* `Energia <http://platformio.org/frameworks/energia>`_
* `libOpenCM3 <http://platformio.org/frameworks/libopencm3>`_
* `mbed <http://platformio.org/frameworks/mbed>`_
* `Simba <http://platformio.org/frameworks/simba>`_
* `SPL <http://platformio.org/frameworks/spl>`_
* `WiringPi <http://platformio.org/frameworks/wiringpi>`_
For further details, please refer to `What is PlatformIO? <http://docs.platformio.org/en/stable/faq.html#what-is-platformio>`_
Licence
Contributing
------------
See `contributing guidelines <https://github.com/platformio/platformio/blob/develop/CONTRIBUTING.md>`_.
License
-------
Copyright (C) 2014-2015 Ivan Kravets
Copyright 2014-present PlatformIO <contact@platformio.org>
Licenced under the MIT Licence.
The PlatformIO is licensed under the permissive Apache 2.0 license,
so you can use it in both commercial and personal projects with confidence.

View File

@ -1,21 +0,0 @@
build: off
environment:
global:
WITH_COMPILER: "cmd /E:ON /V:ON /C .\\scripts\\appveyor\\run_with_compiler.cmd"
matrix:
- TOXENV: "py27"
TOXPYTHON: "C:\\Python27-x64\\python.exe"
WINDOWS_SDK_VERSION: "v7.0"
PYTHON_HOME: "C:\\Python27-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
init:
- "ECHO %TOXENV%"
- ps: "ls C:\\Python*"
install:
- "git submodule update --init --recursive"
- "powershell scripts\\appveyor\\install.ps1"
test_script:
- "%PYTHON_HOME%\\Scripts\\tox --version"
- "%PYTHON_HOME%\\Scripts\\pip --version"
- "%WITH_COMPILER% %PYTHON_HOME%\\Scripts\\tox"

1
docs Submodule

Submodule docs added at 3c9020db70

View File

@ -1,177 +0,0 @@
# Makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = _build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " texinfo to make Texinfo files"
@echo " info to make Texinfo files and run them through makeinfo"
@echo " gettext to make PO message catalogs"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " xml to make Docutils-native XML files"
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
@echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
clean:
rm -rf $(BUILDDIR)/*
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PlatformIO.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PlatformIO.qhc"
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/PlatformIO"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PlatformIO"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
xml:
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 265 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

View File

@ -1,19 +0,0 @@
.. _articles:
Articles about us
=================
.. note::
If you've written article about PlatformIO and would like it listed on
this page, `please edit this page <https://github.com/platformio/platformio/blob/develop/docs/articles.rst>`_.
Here are recent articles about PlatformIO:
* May 11, 2015 - **IT Hare** - `From Web Developer to Embedded One: Interview with Ivan Kravets, The Guy Behind PlatformIO. Part II <http://ithare.com/from-web-developer-to-embedded-one-interview-with-ivan-kravets-the-guy-behind-platformio-part-ii/>`_
* May 4, 2015 - **IT Hare** - `From Web Developer to Embedded One: Interview with Ivan Kravets, The Guy Behind PlatformIO. Part I <http://ithare.com/from-web-development-to-embedded-one-interview-with-ivan-kravets-the-guy-behind-platformio-part-i/>`_
* April 17, 2015 - **Michael Ball** - `PlatformIO - A Cross-Platform Code Builder and Missing Library Manager <http://arduino-pi.blogspot.com.es/2015/04/platformio-cross-platform-code-builder.html>`_
* March 23, 2015 - **Atmel** - `Cross-board and cross-vendor embedded development with PlatformIO <http://blog.atmel.com/2015/03/23/cross-board-and-cross-vendor-embedded-development-with-platformio/>`_
* March 22, 2015 - **Mark VandeWettering** - `Discovered a new tool for embedded development: PlatformIO <http://brainwagon.org/2015/03/22/discovered-a-new-tool-for-embedded-development-platformio/>`_
* October 7, 2014 - **Ivan Kravets** - `Integration of PlatformIO library manager to Arduino and Energia IDEs <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_
* June 20, 2014 - **Ivan Kravets** - `Building and debugging Atmel AVR (Arduino-based) project using Eclipse IDE+PlatformIO <http://www.ikravets.com/computer-life/programming/2014/06/20/building-and-debugging-atmel-avr-arduino-based-project-using-eclipse-ideplatformio>`_
* June 17, 2014 - **Ivan Kravets** - `How was PlatformIO born or why I love Python World <http://www.ikravets.com/computer-life/programming/2014/06/17/how-was-platformio-born-or-why-i-love-python-world>`_

View File

@ -1,213 +0,0 @@
.. _ci_appveyor:
AppVeyor
========
`AppVeyor <http://www.appveyor.com/about>`_ is an open-source hosted,
distributed continuous integration service used to build and test projects
hosted at `GitHub <http://en.wikipedia.org/wiki/GitHub>`_ on Windows family
systems.
AppVeyor is configured by adding a file named ``appveyor.yml``, which is a
`YAML <http://en.wikipedia.org/wiki/YAML>`_ format text file, to the root
directory of the GitHub repository.
AppVeyor automatically detects when a commit has been made and pushed to a
GitHub repository that is using AppVeyor, and each time this happens, it will
try to build the project using :ref:`cmd_ci` command. This includes commits to
all branches, not just to the master branch. AppVeyor will also build and run
pull requests. When that process has completed, it will notify a developer in
the way it has been configured to do so — for example, by sending an email
containing the build results (showing success or failure), or by posting a
message on an IRC channel. It can be configured to build project on a range of
different :ref:`platforms`.
Integration
-----------
Put ``appveyor.yml`` to the root directory of the GitHub repository.
.. code-block:: yaml
build: off
environment:
global:
WITH_COMPILER: "cmd /E:ON /V:ON /C .\\scripts\\appveyor\\run_with_compiler.cmd"
matrix:
- PLATFORMIO_CI_SRC: "path\\to\\source\\file.c"
PLATFORMIO_CI_SRC: "path\\to\\source\\file.ino"
PLATFORMIO_CI_SRC: "path\\to\\source\\directory"
WINDOWS_SDK_VERSION: "v7.0"
PYTHON_HOME: "C:\\Python27-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
install:
- "git submodule update --init --recursive"
- "powershell scripts\\appveyor\\install.ps1"
before_test:
- cmd: SET PATH=%PATH%;%PYTHON_HOME%;%PYTHON_HOME%\Scripts
test_script:
- '%WITH_COMPILER% %PYTHON_HOME%\\Scripts\\platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N'
Then create ``scripts/appveyor`` folder and put these 2 scripts (they are the
same for the all projects, don't need to modify them):
1. ``scripts/appveyor/install.ps1``:
.. code-block:: PowerShell
$BASE_URL = "https://www.python.org/ftp/python/"
$GET_PIP_URL = "https://bootstrap.pypa.io/get-pip.py"
$GET_PIP_PATH = "C:\get-pip.py"
function DownloadPython ($python_version, $platform_suffix) {
$webclient = New-Object System.Net.WebClient
$filename = "python-" + $python_version + $platform_suffix + ".msi"
$url = $BASE_URL + $python_version + "/" + $filename
$basedir = $pwd.Path + "\"
$filepath = $basedir + $filename
if (Test-Path $filename) {
Write-Host "Reusing" $filepath
return $filepath
}
# Download and retry up to 5 times in case of network transient errors.
Write-Host "Downloading" $filename "from" $url
$retry_attempts = 3
for($i=0; $i -lt $retry_attempts; $i++){
try {
$webclient.DownloadFile($url, $filepath)
break
}
Catch [Exception]{
Start-Sleep 1
}
}
Write-Host "File saved at" $filepath
return $filepath
}
function InstallPython ($python_version, $architecture, $python_home) {
Write-Host "Installing Python" $python_version "for" $architecture "bit architecture to" $python_home
if (Test-Path $python_home) {
Write-Host $python_home "already exists, skipping."
return $false
}
if ($architecture -eq "32") {
$platform_suffix = ""
} else {
$platform_suffix = ".amd64"
}
$filepath = DownloadPython $python_version $platform_suffix
Write-Host "Installing" $filepath "to" $python_home
$args = "/qn /i $filepath TARGETDIR=$python_home"
Write-Host "msiexec.exe" $args
Start-Process -FilePath "msiexec.exe" -ArgumentList $args -Wait -Passthru
Write-Host "Python $python_version ($architecture) installation complete"
return $true
}
function InstallPip ($python_home) {
$pip_path = $python_home + "/Scripts/pip.exe"
$python_path = $python_home + "/python.exe"
if (-not(Test-Path $pip_path)) {
Write-Host "Installing pip..."
$webclient = New-Object System.Net.WebClient
$webclient.DownloadFile($GET_PIP_URL, $GET_PIP_PATH)
Write-Host "Executing:" $python_path $GET_PIP_PATH
Start-Process -FilePath "$python_path" -ArgumentList "$GET_PIP_PATH" -Wait -Passthru
} else {
Write-Host "pip already installed."
}
}
function InstallPackage ($python_home, $pkg) {
$pip_path = $python_home + "/Scripts/pip.exe"
& $pip_path install -U $pkg
}
function InstallScons ($python_home) {
Write-Host "Start installing Scons"
$pip_path = $python_home + "/Scripts/pip.exe"
& $pip_path install --egg "http://sourceforge.net/projects/scons/files/latest/download"
Write-Host "Scons installed"
}
function main () {
InstallPython $env:PYTHON_VERSION $env:PYTHON_ARCH $env:PYTHON_HOME
InstallPip $env:PYTHON_HOME
InstallPackage $env:PYTHON_HOME setuptools
InstallPackage $env:PYTHON_HOME platformio
InstallScons $env:PYTHON_HOME
}
main
2. ``scripts/appveyor/run_with_compiler.cmd``:
.. code-block:: guess
@ECHO OFF
SET COMMAND_TO_RUN=%*
SET WIN_SDK_ROOT=C:\Program Files\Microsoft SDKs\Windows
SET MAJOR_PYTHON_VERSION="%PYTHON_VERSION:~0,1%"
IF %MAJOR_PYTHON_VERSION% == "2" (
SET WINDOWS_SDK_VERSION="v7.0"
) ELSE IF %MAJOR_PYTHON_VERSION% == "3" (
SET WINDOWS_SDK_VERSION="v7.1"
) ELSE (
ECHO Unsupported Python version: "%MAJOR_PYTHON_VERSION%"
EXIT 1
)
IF "%PYTHON_ARCH%"=="64" (
ECHO Configuring Windows SDK %WINDOWS_SDK_VERSION% for Python %MAJOR_PYTHON_VERSION% on a 64 bit architecture
SET DISTUTILS_USE_SDK=1
SET MSSdk=1
"%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Setup\WindowsSdkVer.exe" -q -version:%WINDOWS_SDK_VERSION%
"%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Bin\SetEnv.cmd" /x64 /release
ECHO Executing: %COMMAND_TO_RUN%
call %COMMAND_TO_RUN% || EXIT 1
) ELSE (
ECHO Using default MSVC build environment for 32 bit architecture
ECHO Executing: %COMMAND_TO_RUN%
call %COMMAND_TO_RUN% || EXIT 1
)
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
command.
Examples
--------
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
project. The ``appveyor.yml`` configuration file:
.. code-block:: yaml
build: off
environment:
global:
WITH_COMPILER: "cmd /E:ON /V:ON /C .\\scripts\\appveyor\\run_with_compiler.cmd"
matrix:
- PLATFORMIO_CI_SRC: "examples\\Bluetooth\\PS3SPP\\PS3SPP.ino"
PLATFORMIO_CI_SRC: "examples\\pl2303\\pl2303_gps\\pl2303_gps.ino"
WINDOWS_SDK_VERSION: "v7.0"
PYTHON_HOME: "C:\\Python27-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
install:
- "git submodule update --init --recursive"
- "powershell scripts\\appveyor\\install.ps1"
before_test:
- cmd: SET PATH=%PATH%;%PYTHON_HOME%;%PYTHON_HOME%\Scripts
- cmd: git clone https://github.com/xxxajk/spi4teensy3.git c:\spi4teensy
test_script:
- '%WITH_COMPILER% %PYTHON_HOME%\\Scripts\\platformio ci --lib="." --lib="c:\spi4teensy" --board=uno --board=teensy31 --board=due'

View File

@ -1,72 +0,0 @@
.. _ci_circleci:
Circle CI
=========
`Circle CI <https://circleci.com/about>`_ is a hosted cloud
platform that provides hosted continuous integration, deployment, and testing
to `GitHub <http://en.wikipedia.org/wiki/GitHub>`_ repositories.
Circle CI is configured by adding a file named ``circle.yml``, which is a
`YAML <http://en.wikipedia.org/wiki/YAML>`_ format text file, to the root
directory of the GitHub repository.
Circle CI automatically detects when a commit has been made and pushed to a
GitHub repository that is using Circle CI, and each time this happens, it will
try to build the project using :ref:`cmd_ci` command. This includes commits to
all branches, not just to the master branch. Circle CI will also build and run
pull requests. When that process has completed, it will notify a developer in
the way it has been configured to do so — for example, by sending an email
containing the build results (showing success or failure), or by posting a
message on an IRC channel. It can be configured to build project on a range of
different :ref:`platforms`.
Integration
-----------
Put ``circle.yml`` to the root directory of the GitHub repository.
.. code-block:: yaml
machine:
environment:
- PLATFORMIO_CI_SRC=path/to/source/file.c
- PLATFORMIO_CI_SRC=path/to/source/file.ino
- PLATFORMIO_CI_SRC=path/to/source/directory
dependencies:
pre:
- sudo apt-get install python2.7-dev
- sudo python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
test:
override:
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
command.
Examples
--------
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
project. The ``circle.yml`` configuration file:
.. code-block:: yaml
machine:
environment:
PLATFORMIO_CI_SRC: examples/Bluetooth/PS3SPP/PS3SPP.ino
PLATFORMIO_CI_SRC: examples/pl2303/pl2303_gps/pl2303_gps.ino
dependencies:
pre:
- sudo apt-get install python2.7-dev
- sudo python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
- wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
- unzip /tmp/spi4teensy3.zip -d /tmp
test:
override:
- platformio ci --lib="." --lib="/tmp/spi4teensy3-master" --board=uno --board=teensy31 --board=due

View File

@ -1,70 +0,0 @@
.. _ci_drone:
Drone
=====
`Drone <https://drone.io>`_ is a hosted continuous integration service.
It enables you to conveniently set up projects to automatically build, test,
and deploy as you make changes to your code to
`GitHub <http://en.wikipedia.org/wiki/GitHub>`_ and
`BitBucket <http://en.wikipedia.org/wiki/Bitbucket>`_ repositories.
Drone is configured by modifying settings in your project control panel.
Drone automatically detects when a commit has been made and pushed to a
GitHub repository that is using Drone, and each time this happens, it will
try to build the project using :ref:`cmd_ci` command. This includes commits to
all branches, not just to the master branch. Drone will also build and run
pull requests. When that process has completed, it will notify a developer in
the way it has been configured to do so — for example, by sending an email
containing the build results (showing success or failure). It can be
configured to build project on a range of different :ref:`platforms`.
Integration
-----------
Please fill all fields for your project in the Drone control panel:
`Environment Variables`:
.. code-block:: bash
PLATFORMIO_CI_SRC=path/to/source/file.c
PLATFORMIO_CI_SRC=path/to/source/file.ino
PLATFORMIO_CI_SRC=path/to/source/directory
`Commands`:
.. code-block:: bash
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
.. image:: ../_static/droneci-platformio-integration-1.png
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
command.
Examples
--------
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
project. The ``circle.yml`` configuration file:
`Environment Variables`:
.. code-block:: bash
PLATFORMIO_CI_SRC=examples/Bluetooth/PS3SPP/PS3SPP.ino
PLATFORMIO_CI_SRC=examples/pl2303/pl2303_gps/pl2303_gps.ino
`Commands`:
.. code-block:: bash
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
unzip /tmp/spi4teensy3.zip -d /tmp
platformio ci --lib="." --lib="/tmp/spi4teensy3-master" --board=uno --board=teensy31 --board=due
.. image:: ../_static/droneci-platformio-integration-2.png

View File

@ -1,24 +0,0 @@
.. _ci:
Continuous Integration
======================
`Continuous Integration (CI, wiki) <http://en.wikipedia.org/wiki/Continuous_integration>`_
is the practice, in software engineering, of merging all developer working
copies with a shared mainline several times a day.
:ref:`cmd_ci` command is intended to be used in combination with the build
servers and the popular
`Continuous Integration Software <http://en.wikipedia.org/wiki/Comparison_of_continuous_integration_software>`_.
By integrating regularly, you can detect errors quickly, and locate them more
easily.
.. toctree::
:maxdepth: 2
appveyor
circleci
drone
shippable
travis

View File

@ -1,76 +0,0 @@
.. _ci_shippable:
Shippable
=========
`Shippable <http://en.wikipedia.org/wiki/Shippable>`_ is a hosted cloud
platform that provides hosted continuous integration, deployment, and testing
to `GitHub <http://en.wikipedia.org/wiki/GitHub>`_ and
`BitBucket <http://en.wikipedia.org/wiki/Bitbucket>`_ repositories.
Shippable's continuous integration service is built using Docker.
Shippable is configured by adding a file named ``shippable.yml``, which is a
`YAML <http://en.wikipedia.org/wiki/YAML>`_ format text file, to the root
directory of the GitHub repository or you can use your Travis CI configuration
file ``.travis.yml``.
Shippable automatically detects when a commit has been made and pushed to a
GitHub repository that is using Shippable, and each time this happens, it will
try to build the project using :ref:`cmd_ci` command. This includes commits to
all branches, not just to the master branch. Shippable will also build and run
pull requests. When that process has completed, it will notify a developer in
the way it has been configured to do so — for example, by sending an email
containing the build results (showing success or failure), or by posting a
message on an IRC channel. It can be configured to build project on a range of
different :ref:`platforms`.
Integration
-----------
Please put ``shippable.yml`` or ``.travis.yml`` to the root directory of the
GitHub repository.
.. code-block:: yaml
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=path/to/source/file.c
- PLATFORMIO_CI_SRC=path/to/source/file.ino
- PLATFORMIO_CI_SRC=path/to/source/directory
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
script:
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
command.
Examples
--------
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
project. The ``shippable.yml`` or ``.travis.yml`` configuration file:
.. code-block:: yaml
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=examples/Bluetooth/PS3SPP/PS3SPP.ino
- PLATFORMIO_CI_SRC=examples/pl2303/pl2303_gps/pl2303_gps.ino
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
- wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
- unzip /tmp/spi4teensy3.zip -d /tmp
script:
- platformio ci --lib="." --lib="/tmp/spi4teensy3-master" --board=uno --board=teensy31 --board=due

View File

@ -1,72 +0,0 @@
.. _ci_travis:
Travis CI
=========
`Travis CI <http://en.wikipedia.org/wiki/Travis_CI>`_ is an open-source hosted,
distributed continuous integration service used to build and test projects
hosted at `GitHub <http://en.wikipedia.org/wiki/GitHub>`_.
Travis CI is configured by adding a file named ``.travis.yml``, which is a
`YAML <http://en.wikipedia.org/wiki/YAML>`_ format text file, to the root
directory of the GitHub repository.
Travis CI automatically detects when a commit has been made and pushed to a
GitHub repository that is using Travis CI, and each time this happens, it will
try to build the project using :ref:`cmd_ci` command. This includes commits to
all branches, not just to the master branch. Travis CI will also build and run
pull requests. When that process has completed, it will notify a developer in
the way it has been configured to do so — for example, by sending an email
containing the build results (showing success or failure), or by posting a
message on an IRC channel. It can be configured to build project on a range of
different :ref:`platforms`.
Integration
-----------
Please put ``.travis.yml`` to the root directory of the GitHub repository.
.. code-block:: yaml
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=path/to/source/file.c
- PLATFORMIO_CI_SRC=path/to/source/file.ino
- PLATFORMIO_CI_SRC=path/to/source/directory
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
script:
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
command.
Examples
--------
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
project. The ``.travis.yml`` configuration file:
.. code-block:: yaml
language: python
python:
- "2.7"
env:
- PLATFORMIO_CI_SRC=examples/Bluetooth/PS3SPP/PS3SPP.ino
- PLATFORMIO_CI_SRC=examples/pl2303/pl2303_gps/pl2303_gps.ino
install:
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
- wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
- unzip /tmp/spi4teensy3.zip -d /tmp
script:
- platformio ci --lib="." --lib="/tmp/spi4teensy3-master" --board=uno --board=teensy31 --board=due

View File

@ -1,278 +0,0 @@
# -*- coding: utf-8 -*-
#
# PlatformIO documentation build configuration file, created by
# sphinx-quickstart on Sun Aug 3 19:13:49 2014.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import os
import sys
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
sys.path.insert(0, os.path.abspath(os.pardir))
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
#needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = []
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# The suffix of source filenames.
source_suffix = '.rst'
# The encoding of source files.
#source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
# General information about the project.
project = u'PlatformIO'
copyright = u'2014-2015, Ivan Kravets'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
import platformio
# The short X.Y version.
version = '.'.join(map(str, platformio.VERSION[0:2]))
# The full version, including alpha/beta/rc tags.
release = platformio.__version__
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build']
# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = 'default'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
#html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
#html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# Output file base name for HTML help builder.
htmlhelp_basename = 'PlatformIOdoc'
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
('index', 'PlatformIO.tex', u'PlatformIO Documentation',
u'Ivan Kravets', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'platformio', u'PlatformIO Documentation',
[u'Ivan Kravets'], 1)
]
# If true, show URL addresses after external links.
#man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'PlatformIO', u'PlatformIO Documentation',
u'Ivan Kravets', 'PlatformIO', 'One line description of project.',
'Miscellaneous'),
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
# Example configuration for intersphinx: refer to the Python standard library.
#intersphinx_mapping = {'http://docs.python.org/': None}
# Read the Docs Sphinx Theme patch
# on_rtd is whether we are on readthedocs.org,
# this line of code grabbed from docs.readthedocs.org
on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
if not on_rtd: # only import and set the theme if we're building docs locally
import sphinx_rtd_theme
html_theme = 'sphinx_rtd_theme'
html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
# A timeout value, in seconds, for the linkcheck builder
# http://sphinx-doc.org/config.html#confval-linkcheck_timeout
linkcheck_timeout = 10
linkcheck_anchors = False

View File

@ -1,120 +0,0 @@
.. _envvars:
Environment variables
=====================
`Environment variables <http://en.wikipedia.org/wiki/Environment_variable>`_
are a set of dynamic named values that can affect the way running processes
will behave on a computer.
*PlatformIO* handles variables which start with ``PLATFORMIO_`` prefix. They
have the **HIGHEST PRIORITY**.
.. contents::
General
-------
PlatformIO uses *General* environment variables for the common
operations/commands.
.. _envvar_CI:
CI
~~
PlatformIO handles ``CI`` variable which is setup by
`Continuous Integration <http://en.wikipedia.org/wiki/Continuous_integration>`_
(Travis, Circle and etc.) systems.
Currently, PlatformIO uses it to disable prompts.
In other words, ``CI=true`` automatically setup
:ref:`PLATFORMIO_SETTING_ENABLE_PROMPTS=false <envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS>`.
.. _envvar_PLATFORMIO_HOME_DIR:
PLATFORMIO_HOME_DIR
~~~~~~~~~~~~~~~~~~~
Allows to override :ref:`projectconf` option
:ref:`projectconf_pio_home_dir`.
.. _envvar_PLATFORMIO_LIB_DIR:
PLATFORMIO_LIB_DIR
~~~~~~~~~~~~~~~~~~
Allows to override :ref:`projectconf` option
:ref:`projectconf_pio_lib_dir`.
.. _envvar_PLATFORMIO_SRC_DIR:
PLATFORMIO_SRC_DIR
~~~~~~~~~~~~~~~~~~
Allows to override :ref:`projectconf` option
:ref:`projectconf_pio_src_dir`.
.. _envvar_PLATFORMIO_ENVS_DIR:
PLATFORMIO_ENVS_DIR
~~~~~~~~~~~~~~~~~~~
Allows to override :ref:`projectconf` option
:ref:`projectconf_pio_envs_dir`.
Builder
-------
.. _envvar_PLATFORMIO_SRCBUILD_FLAGS:
PLATFORMIO_SRCBUILD_FLAGS
~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override :ref:`projectconf` option
:ref:`projectconf_srcbuild_flags`.
Settings
--------
Allows to override PlatformIO settings. You can manage them via
:ref:`cmd_settings` command.
PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_auto_update_libraries`.
PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_auto_update_platforms`.
PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_check_libraries_interval`.
PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_check_platformio_interval`.
PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_check_platforms_interval`.
.. _envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS:
PLATFORMIO_SETTING_ENABLE_PROMPTS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_enable_prompts`.
PLATFORMIO_SETTING_ENABLE_TELEMETRY
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allows to override setting :ref:`setting_enable_telemetry`.

View File

@ -1,102 +0,0 @@
.. _faq:
Frequently Asked Questions
==========================
.. contents::
General
-------
.. _faq_what_is_platformio:
What is PlatformIO?
~~~~~~~~~~~~~~~~~~~
`PlatformIO <http://platformio.org>`_ is a cross-platform code builder
and the missing library manager.
PlatformIO is independent from the platform, in which it is running. In fact,
the only requirement is Python, which exists pretty much everywhere. What this
means is that PlatformIO projects can be easily moved from one computer to
another, as well as that PlatformIO allows for the easy sharing of projects
between team members, regardless of operating system they prefer to work with.
Beyond that, PlatformIO can be run not only on commonly used desktops/laptops
but also on the servers without X Window System. While PlatformIO itself is a
console application, it can be used in combination with one's favorite
:ref:`ide` or text editor such as :ref:`ide_arduino`, :ref:`ide_eclipse`,
:ref:`ide_visualstudio`, :ref:`ide_vim`, :ref:`ide_sublimetext`, etc.
Alright, so PlatformIO can run on different operating systems. But more
importantly, from development perspective at least, is a list of supported
boards and MCUs. To keep things short: PlatformIO supports over 100
:ref:`Embedded Boards <platforms>` and all major
:ref:`Development Platforms <platforms>`.
PlatformIO allows users to:
* Decide which operation system they want to run development process on.
You can even use one OS at home and another at work.
* Choose which editor to use for writing the code. It can be pretty simple
editor or powerful favorite :ref:`ide`.
* Focus on the code development, significantly simplifying support for the
:ref:`platforms` and MCUs.
How does it work?
~~~~~~~~~~~~~~~~~
Without going too deep into PlatformIO implementation details, work cycle of
the project developed using PlatformIO is as follows:
* Users choose board(s) interested in :ref:`projectconf`
* Based on this list of boards, PlatformIO downloads required toolchains and
installs them automatically.
* Users develop code and PlatformIO makes sure that it is compiled, prepared
and uploaded to all the boards of interest.
.. _faq_troubleshooting:
Troubleshooting
---------------
.. _faq_troubleshooting_pioblocksprompt:
PlatformIO blocks command execution using user prompt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If you are going to run *PlatformIO* from **subprocess**, you **MUST
DISABLE** all prompts. It will allow you to avoid blocking.
There are a few options:
- using :option:`platformio --force` option before each command
- using environment variable :ref:`PLATFORMIO_SETTING_ENABLE_PROMPTS=No <envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS>`
- disable global setting ``enable_prompts`` via :ref:`cmd_settings` command
- masking under Continuous Integration system via environment variable
:ref:`CI=true <envvar_CI>`.
Windows: ``UnicodeDecodeError: 'ascii' codec can't decode byte``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Answered in `issue #143 <https://github.com/platformio/platformio/issues/143#issuecomment-88060906>`_.
Serial does not work with panStampAVR board
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Answered in `issue #144 <https://github.com/platformio/platformio/issues/144#issuecomment-87388038>`_.
PlatformIO: command not found || An error ``pkg_resources.DistributionNotFound``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Please upgrade *SetupTools* package:
.. code-block:: bash
$ [sudo] pip uninstall setuptools
$ [sudo] pip install setuptools
# Then re-install PlatformIO
$ [sudo] pip uninstall platformio
$ [sudo] pip install platformio

View File

@ -1,951 +0,0 @@
.. _framework_arduino:
Framework ``arduino``
=====================
Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
For more detailed information please visit `vendor site <http://arduino.cc/en/Reference/HomePage>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_atmelavr`
- Atmel AVR 8- and 32-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industrys most code-efficient architecture for C and assembly programming.
* - :ref:`platform_atmelsam`
- Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.
* - :ref:`platform_espressif`
- Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.
* - :ref:`platform_teensy`
- Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard "Mini-B" USB cable and a PC or Macintosh with a USB port.
* - :ref:`platform_timsp430`
- MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16-bit, RISC-based, mixed-signal processors designed for ultra-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
Adafruit
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``flora8``
- `Adafruit Flora <http://www.adafruit.com/product/659>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``protrinket3``
- `Adafruit Pro Trinket 3V/12MHz (USB) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 12 MHz
- 32 Kb
- 2 Kb
* - ``protrinket3ftdi``
- `Adafruit Pro Trinket 3V/12MHz (FTDI) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5ftdi``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``trinket3``
- `Adafruit Trinket 3V/8MHz <http://www.adafruit.com/products/1500>`_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.5 Kb
* - ``trinket5``
- `Adafruit Trinket 5V/16MHz <http://www.adafruit.com/products/1501>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
Arduino
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``LilyPadUSB``
- `Arduino LilyPad USB <http://arduino.cc/en/Main/ArduinoBoardLilyPadUSB>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``atmegangatmega168``
- `Arduino NG or older ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``atmegangatmega8``
- `Arduino NG or older ATmega8 <http://arduino.cc/en/main/boards>`_
- ATMEGA8
- 16 MHz
- 8 Kb
- 1 Kb
* - ``btatmega168``
- `Arduino BT ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``btatmega328``
- `Arduino BT ATmega328 <http://arduino.cc/en/main/boards>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``diecimilaatmega168``
- `Arduino Duemilanove or Diecimila ATmega168 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``diecimilaatmega328``
- `Arduino Duemilanove or Diecimila ATmega328 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``due``
- `Arduino Due (Programming Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - ``dueUSB``
- `Arduino Due (USB Native Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - ``esplora``
- `Arduino Esplora <http://arduino.cc/en/Main/ArduinoBoardEsplora>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``ethernet``
- `Arduino Ethernet <http://arduino.cc/en/Main/ArduinoBoardEthernet>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``fio``
- `Arduino Fio <http://arduino.cc/en/Main/ArduinoBoardFio>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``leonardo``
- `Arduino Leonardo <http://arduino.cc/en/Main/arduinoBoardLeonardo>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``lilypadatmega168``
- `Arduino LilyPad ATmega168 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``lilypadatmega328``
- `Arduino LilyPad ATmega328 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``megaADK``
- `Arduino Mega ADK <http://arduino.cc/en/Main/ArduinoBoardMegaADK>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``megaatmega1280``
- `Arduino Mega or Mega 2560 ATmega1280 <http://arduino.cc/en/Main/arduinoBoardMega>`_
- ATMEGA1280
- 16 MHz
- 128 Kb
- 8 Kb
* - ``megaatmega2560``
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://arduino.cc/en/Main/arduinoBoardMega2560>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``micro``
- `Arduino Micro <http://arduino.cc/en/Main/ArduinoBoardMicro>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``miniatmega168``
- `Arduino Mini ATmega168 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``miniatmega328``
- `Arduino Mini ATmega328 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``nanoatmega168``
- `Arduino Nano ATmega168 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``nanoatmega328``
- `Arduino Nano ATmega328 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro16MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``pro16MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro8MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``pro8MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``robotControl``
- `Arduino Robot Control <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``robotMotor``
- `Arduino Robot Motor <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``uno``
- `Arduino Uno <http://arduino.cc/en/Main/ArduinoBoardUno>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``yun``
- `Arduino Yun <http://arduino.cc/en/Main/ArduinoBoardYun>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
BQ
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``zumbt328``
- `BQ ZUM BT-328 board <http://www.bq.com/gb/products/zum.html>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
BitWizard
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``raspduino``
- `BitWizard Raspduino <http://www.bitwizard.nl/wiki/index.php/Raspduino>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
Digistump
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``digispark-pro``
- `Digistump Digispark Pro (Default 16 MHz) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro32``
- `Digistump Digispark Pro (16 MHz) (32 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro64``
- `Digistump Digispark Pro (16 MHz) (64 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-tiny``
- `Digistump Digispark (Default - 16 MHz) <http://digistump.com/products/1>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
* - ``digix``
- `Digistump DigiX <http://digistump.com/products/50>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 28 Kb
Engduino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``engduinov1``
- `Engduino 1 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov2``
- `Engduino 2 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov3``
- `Engduino 3 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
Espressif
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``esp01``
- `Espressif ESP8266 board <https://nurdspace.nl/ESP8266>`_
- ESP8266
- 80 MHz
- 512 Kb
- 32 Kb
LightUp
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lightup``
- `LightUp <https://www.lightup.io/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
LowPowerLab
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``moteino``
- `LowPowerLab Moteino <https://lowpowerlab.com/shop/moteino-r4>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``moteinomega``
- `LowPowerLab MoteinoMEGA <http://lowpowerlab.com/blog/2014/08/09/moteinomega-available-now/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
Microduino
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``1284p16m``
- `Microduino Core+ (ATmega1284P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``1284p8m``
- `Microduino Core+ (ATmega1284P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``168pa16m``
- `Microduino Core (Atmega168PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 16 MHz
- 16 Kb
- 1 Kb
* - ``168pa8m``
- `Microduino Core (Atmega168PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 8 MHz
- 16 Kb
- 1 Kb
* - ``328p16m``
- `Microduino Core (Atmega328P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``328p8m``
- `Microduino Core (Atmega328P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``32u416m``
- `Microduino Core USB (ATmega32U4@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-CoreUSB>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``644pa16m``
- `Microduino Core+ (Atmega644PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
* - ``644pa8m``
- `Microduino Core+ (Atmega644PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 8 MHz
- 64 Kb
- 4 Kb
PanStamp
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``panStampAVR``
- `PanStamp AVR <http://www.panstamp.com/product/panstamp-avr/>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``panStampNRG``
- `PanStamp NRG 1.1 <http://www.panstamp.com/product/197/>`_
- CC430F5137
- 12 MHz
- 32 Kb
- 4 Kb
Quirkbot
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``quirkbot``
- `Quirkbot <http://quirkbot.com>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RedBearLab
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``blend``
- `RedBearLab Blend <http://redbearlab.com/blend/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro16``
- `RedBearLab Blend Micro 3.3V/16MHz (overclock) <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro8``
- `RedBearLab Blend Micro 3.3V/8MHz <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RepRap
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``reprap_rambo``
- `RepRap RAMBo <http://reprap.org/wiki/Rambo>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
SainSmart
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sainSmartDue``
- `SainSmart Due (Programming Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - ``sainSmartDueUSB``
- `SainSmart Due (USB Native Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
Sanguino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sanguino_atmega12848m``
- `Sanguino ATmega1284p (8MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284m``
- `Sanguino ATmega1284p (20MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 20 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284p``
- `Sanguino ATmega1284p (16MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega644p``
- `Sanguino ATmega644P <https://code.google.com/p/sanguino/>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
SparkFun
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sparkfun_digitalsandbox``
- `SparkFun Digital Sandbox <https://www.sparkfun.com/products/12651>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``sparkfun_fiov3``
- `SparkFun Fio V3 3.3V/8MHz <https://www.sparkfun.com/products/11520>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_makeymakey``
- `SparkFun Makey Makey <https://www.sparkfun.com/products/11511>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_megamini``
- `SparkFun Mega Pro Mini 3.3V <https://www.sparkfun.com/products/10743>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro16MHz``
- `SparkFun Mega Pro 5V/16MHz <https://www.sparkfun.com/products/11007>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro8MHz``
- `SparkFun Mega Pro 3.3V/8MHz <https://www.sparkfun.com/products/10744>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_promicro16``
- `SparkFun Pro Micro 5V/16MHz <https://www.sparkfun.com/products/12640>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_promicro8``
- `SparkFun Pro Micro 3.3V/8MHz <https://www.sparkfun.com/products/12587>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_redboard``
- `SparkFun RedBoard <https://www.sparkfun.com/products/12757>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``uview``
- `SparkFun MicroView <https://www.sparkfun.com/products/12923>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
Teensy
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``teensy20``
- `Teensy 2.0 <https://www.pjrc.com/store/teensy.html>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``teensy20pp``
- `Teensy++ 2.0 <https://www.pjrc.com/store/teensypp.html>`_
- AT90USB1286
- 16 MHz
- 128 Kb
- 8 Kb
* - ``teensy30``
- `Teensy 3.0 <https://www.pjrc.com/store/teensy3.html>`_
- MK20DX128
- 48 MHz
- 128 Kb
- 16 Kb
* - ``teensy31``
- `Teensy 3.1 <https://www.pjrc.com/store/teensy31.html>`_
- MK20DX256
- 72 MHz
- 256 Kb
- 64 Kb
* - ``teensylc``
- `Teensy LC <http://www.pjrc.com/teensy/teensyLC.html>`_
- MKL26Z64
- 48 MHz
- 64 Kb
- 8 Kb
TinyCircuits
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``tinyduino``
- `TinyCircuits TinyDuino Processor Board <https://tiny-circuits.com/tinyduino-processor-board.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``tinylily``
- `TinyCircuits TinyLily Mini Processor <https://tiny-circuits.com/tiny-lily-mini-processor.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
WickedDevice
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wildfirev2``
- `WickedDevice WildFire v2 [stk500] <http://shop.wickeddevice.com/resources/wildfire/#arduinoidesetup>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``wildfirev3``
- `WickedDevice WildFire v3 [optiboot] <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb

View File

@ -1,96 +0,0 @@
.. _framework_cmsis:
Framework ``cmsis``
===================
The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor-independent hardware abstraction layer for the Cortex-M processor series and specifies debugger interfaces. The CMSIS enables consistent and simple software interfaces to the processor for interface peripherals, real-time operating systems, and middleware. It simplifies software re-use, reducing the learning curve for new microcontroller developers and cutting the time-to-market for devices.
For more detailed information please visit `vendor site <http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_ststm32`
- The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
Armstrap
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``armstrap_eagle1024``
- `Armstrap Eagle 1024 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F417VGT6
- 168 MHz
- 1024 Kb
- 192 Kb
* - ``armstrap_eagle2048``
- `Armstrap Eagle 2048 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F427VIT6
- 168 MHz
- 2048 Kb
- 256 Kb
* - ``armstrap_eagle512``
- `Armstrap Eagle 512 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F407VET6
- 168 MHz
- 512 Kb
- 192 Kb
ST
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``disco_f303vc``
- `ST STM32F3DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF254044>`_
- STM32F303VCT6
- 72 MHz
- 256 Kb
- 48 Kb
* - ``disco_f407vg``
- `ST STM32F4DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF252419>`_
- STM32F407VGT6
- 168 MHz
- 1024 Kb
- 128 Kb
* - ``disco_l152rb``
- `ST STM32LDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF258515>`_
- STM32L152RBT6
- 32 MHz
- 128 Kb
- 16 Kb

View File

@ -1,114 +0,0 @@
.. _framework_energia:
Framework ``energia``
=====================
Energia framework enables pretty much anyone to start easily creating microcontroller-based projects and applications. Its easy-to-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before.
For more detailed information please visit `vendor site <http://energia.nu/reference/>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_timsp430`
- MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16-bit, RISC-based, mixed-signal processors designed for ultra-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications.
* - :ref:`platform_titiva`
- Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry-leading analog integration, and extensive software solutions.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
TI
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lplm4f120h5qr``
- `TI LaunchPad (Stellaris) w/ lm4f120 (80MHz) <http://www.ti.com/tool/ek-lm4f120xl>`_
- LPLM4F120H5QR
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lpmsp430f5529``
- `TI LaunchPad w/ msp430f5529 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430f5529lp.html>`_
- MSP430F5529
- 16 MHz
- 128 Kb
- 1 Kb
* - ``lpmsp430f5529_25``
- `TI LaunchPad w/ msp430f5529 (25MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430f5529lp.html>`_
- MSP430F5529
- 25 MHz
- 128 Kb
- 1 Kb
* - ``lpmsp430fr5739``
- `TI FraunchPad w/ msp430fr5739 <http://www.ti.com/tool/msp-exp430fr5739>`_
- MSP430FR5739
- 16 MHz
- 16 Kb
- 1 Kb
* - ``lpmsp430fr5969``
- `TI LaunchPad w/ msp430fr5969 <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430fr5969.html>`_
- MSP430FR5969
- 8 MHz
- 64 Kb
- 1 Kb
* - ``lpmsp430g2231``
- `TI LaunchPad w/ msp430g2231 (1 MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2231
- 1 MHz
- 2 Kb
- 0.125 Kb
* - ``lpmsp430g2452``
- `TI LaunchPad w/ msp430g2452 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2452
- 16 MHz
- 8 Kb
- 0.25 Kb
* - ``lpmsp430g2553``
- `TI LaunchPad w/ msp430g2553 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2553
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``lptm4c1230c3pm``
- `TI LaunchPad (Tiva C) w/ tm4c123 (80MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c123gxl.html>`_
- LPTM4C1230C3PM
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lptm4c1294ncpdt``
- `TI LaunchPad (Tiva C) w/ tm4c129 (120MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c1294xl.html>`_
- LPTM4C1294NCPDT
- 120 MHz
- 1024 Kb
- 256 Kb

View File

@ -1,14 +0,0 @@
.. _frameworks:
Frameworks
==========
.. toctree::
:maxdepth: 2
arduino
cmsis
energia
libopencm3
mbed
spl

View File

@ -1,99 +0,0 @@
.. _framework_libopencm3:
Framework ``libopencm3``
========================
The libOpenCM3 framework aims to create a free/libre/open-source firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others.
For more detailed information please visit `vendor site <http://www.libopencm3.org/wiki/Main_Page>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_ststm32`
- The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
* - :ref:`platform_titiva`
- Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry-leading analog integration, and extensive software solutions.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
ST
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``disco_f303vc``
- `ST STM32F3DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF254044>`_
- STM32F303VCT6
- 72 MHz
- 256 Kb
- 48 Kb
* - ``disco_f407vg``
- `ST STM32F4DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF252419>`_
- STM32F407VGT6
- 168 MHz
- 1024 Kb
- 128 Kb
* - ``disco_l152rb``
- `ST STM32LDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF258515>`_
- STM32L152RBT6
- 32 MHz
- 128 Kb
- 16 Kb
TI
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lplm4f120h5qr``
- `TI LaunchPad (Stellaris) w/ lm4f120 (80MHz) <http://www.ti.com/tool/ek-lm4f120xl>`_
- LPLM4F120H5QR
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lptm4c1230c3pm``
- `TI LaunchPad (Tiva C) w/ tm4c123 (80MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c123gxl.html>`_
- LPTM4C1230C3PM
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lptm4c1294ncpdt``
- `TI LaunchPad (Tiva C) w/ tm4c129 (120MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c1294xl.html>`_
- LPTM4C1294NCPDT
- 120 MHz
- 1024 Kb
- 256 Kb

View File

@ -1,568 +0,0 @@
.. _framework_mbed:
Framework ``mbed``
==================
The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
For more detailed information please visit `vendor site <http://mbed.org/>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_freescalekinetis`
- Freescale Kinetis Microcontrollers is family of multiple hardware- and software-compatible ARM Cortex-M0+, Cortex-M4 and Cortex-M7-based MCU series. Kinetis MCUs offer exceptional low-power performance, scalability and feature integration.
* - :ref:`platform_nordicnrf51`
- The Nordic nRF51 Series is a family of highly flexible, multi-protocol, system-on-chip (SoC) devices for ultra-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell.
* - :ref:`platform_nxplpc`
- The NXP LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals.
* - :ref:`platform_ststm32`
- The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
CQ Publishing
~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u35_501``
- `CQ Publishing TG-LPC11U35-501 <https://developer.mbed.org/platforms/TG-LPC11U35-501/>`_
- LPC11U35
- 48 MHz
- 64 Kb
- 10 Kb
Embedded Artists
~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u35``
- `Embedded Artists LPC11U35 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC11U35/>`_
- LPC11U35
- 48 MHz
- 64 Kb
- 10 Kb
* - ``lpc4088``
- `Embedded Artists LPC4088 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC4088/>`_
- LPC4088
- 120 MHz
- 512 Kb
- 96 Kb
* - ``lpc4088_dm``
- `Embedded Artists LPC4088 Display Module <https://developer.mbed.org/platforms/EA-LPC4088-Display-Module/>`_
- LPC4088
- 120 MHz
- 512 Kb
- 96 Kb
Freescale
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``IBMEthernetKit``
- `Ethernet IoT Starter Kit <http://developer.mbed.org/platforms/IBMEthernetKit/>`_
- MK64FN1M0VLL12
- 120 MHz
- 1024 Kb
- 256 Kb
* - ``frdm_k20d50m``
- `Freescale Kinetis FRDM-K20D50M <https://developer.mbed.org/platforms/FRDM-K20D50M/>`_
- MK20DX128VLH5
- 48 MHz
- 128 Kb
- 16 Kb
* - ``frdm_k22f``
- `Freescale Kinetis FRDM-K22F <https://developer.mbed.org/platforms/FRDM-K22F/>`_
- MK22FN512VLH12
- 120 MHz
- 512 Kb
- 128 Kb
* - ``frdm_k64f``
- `Freescale Kinetis FRDM-K64F <https://developer.mbed.org/platforms/FRDM-K64F/>`_
- MK64FN1M0VLL12
- 120 MHz
- 1024 Kb
- 256 Kb
* - ``frdm_kl05z``
- `Freescale Kinetis FRDM-KL05Z <https://developer.mbed.org/platforms/FRDM-KL05Z/>`_
- MKL05Z32VFM4
- 48 MHz
- 32 Kb
- 4 Kb
* - ``frdm_kl25z``
- `Freescale Kinetis FRDM-KL25Z <https://developer.mbed.org/platforms/KL25Z/>`_
- MKL25Z128VLK4
- 48 MHz
- 128 Kb
- 16 Kb
* - ``frdm_kl46z``
- `Freescale Kinetis FRDM-KL46Z <https://developer.mbed.org/platforms/FRDM-KL46Z/>`_
- MKL46Z256VLL4
- 48 MHz
- 256 Kb
- 32 Kb
JKSoft
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wallBotBLE``
- `JKSoft Wallbot BLE <https://developer.mbed.org/platforms/JKSoft-Wallbot-BLE/>`_
- NRF51822
- 16 MHz
- 128 Kb
- 16 Kb
NGX Technologies
~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``blueboard_lpc11u24``
- `NGX Technologies BlueBoard-LPC11U24 <https://developer.mbed.org/platforms/BlueBoard-LPC11U24/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
NXP
~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u24``
- `NXP mbed LPC11U24 <https://developer.mbed.org/platforms/mbed-LPC11U24/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
* - ``lpc1549``
- `NXP LPCXpresso1549 <https://developer.mbed.org/platforms/LPCXpresso1549/>`_
- LPC1549
- 72 MHz
- 256 Kb
- 36 Kb
* - ``lpc1768``
- `NXP mbed LPC1768 <http://developer.mbed.org/platforms/mbed-LPC1768/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb
Nordic
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``nrf51_dk``
- `Nordic nRF51-DK <https://developer.mbed.org/platforms/Nordic-nRF51-DK/>`_
- NRF51822
- 32 MHz
- 256 Kb
- 32 Kb
* - ``nrf51_dongle``
- `Nordic nRF51-Dongle <https://developer.mbed.org/platforms/Nordic-nRF51-Dongle/>`_
- NRF51822
- 32 MHz
- 256 Kb
- 32 Kb
* - ``nrf51_mkit``
- `Nordic nRF51822-mKIT <http://developer.mbed.org/platforms/Nordic-nRF51822/>`_
- NRF51822
- 16 MHz
- 128 Kb
- 16 Kb
Outrageous Circuits
~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``mbuino``
- `Outrageous Circuits mBuino <https://developer.mbed.org/platforms/Outrageous-Circuits-mBuino/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
RedBearLab
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``redBearLab``
- `RedBearLab nRF51822 <https://developer.mbed.org/platforms/RedBearLab-nRF51822/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
* - ``redBearLabBLENano``
- `RedBearLab BLE Nano <https://developer.mbed.org/platforms/RedBearLab-BLE-Nano/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
ST
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``disco_f051r8``
- `ST STM32F0DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF253215>`_
- STM32F051R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``disco_f100rb``
- `ST STM32VLDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF250863>`_
- STM32F100RBT6
- 24 MHz
- 128 Kb
- 8 Kb
* - ``disco_f303vc``
- `ST STM32F3DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF254044>`_
- STM32F303VCT6
- 72 MHz
- 256 Kb
- 48 Kb
* - ``disco_f334c8``
- `ST 32F3348DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF260318>`_
- STM32F334C8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``disco_f401vc``
- `ST 32F401CDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF259098>`_
- STM32F401VCT6
- 84 MHz
- 256 Kb
- 64 Kb
* - ``disco_f407vg``
- `ST STM32F4DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF252419>`_
- STM32F407VGT6
- 168 MHz
- 1024 Kb
- 128 Kb
* - ``disco_f429zi``
- `ST 32F429IDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF259090>`_
- STM32F429ZIT6
- 180 MHz
- 2048 Kb
- 256 Kb
* - ``nucleo_f030r8``
- `ST Nucleo F030R8 <https://developer.mbed.org/platforms/ST-Nucleo-F030R8/>`_
- STM32F030R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``nucleo_f070rb``
- `ST Nucleo F070RB <https://developer.mbed.org/platforms/ST-Nucleo-F070RB/>`_
- STM32F070RBT6
- 48 MHz
- 128 Kb
- 16 Kb
* - ``nucleo_f072rb``
- `ST Nucleo F072RB <https://developer.mbed.org/platforms/ST-Nucleo-F072RB/>`_
- STM32F072RBT6
- 48 MHz
- 128 Kb
- 16 Kb
* - ``nucleo_f091rc``
- `ST Nucleo F091RC <https://developer.mbed.org/platforms/ST-Nucleo-F091RC/>`_
- STM32F091RCT6
- 48 MHz
- 256 Kb
- 32 Kb
* - ``nucleo_f103rb``
- `ST Nucleo F103RB <https://developer.mbed.org/platforms/ST-Nucleo-F103RB/>`_
- STM32F103RBT6
- 72 MHz
- 128 Kb
- 20 Kb
* - ``nucleo_f302r8``
- `ST Nucleo F302R8 <https://developer.mbed.org/platforms/ST-Nucleo-F302R8/>`_
- STM32F302R8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``nucleo_f303re``
- `ST Nucleo F303RE <http://developer.mbed.org/platforms/ST-Nucleo-F303RE/>`_
- STM32F303RET6
- 72 MHz
- 512 Kb
- 64 Kb
* - ``nucleo_f334r8``
- `ST Nucleo F334R8 <https://developer.mbed.org/platforms/ST-Nucleo-F334R8/>`_
- STM32F334R8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``nucleo_f401re``
- `ST Nucleo F401RE <https://developer.mbed.org/platforms/ST-Nucleo-F401RE/>`_
- STM32F401RET6
- 84 MHz
- 512 Kb
- 96 Kb
* - ``nucleo_f411re``
- `ST Nucleo F411RE <https://developer.mbed.org/platforms/ST-Nucleo-F411RE/>`_
- STM32F411RET6
- 100 MHz
- 512 Kb
- 128 Kb
* - ``nucleo_l053r8``
- `ST Nucleo L053R8 <https://developer.mbed.org/platforms/ST-Nucleo-L053R8/>`_
- STM32L053R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``nucleo_l152re``
- `ST Nucleo L152RE <https://developer.mbed.org/platforms/ST-Nucleo-L152RE/>`_
- STM32L152RET6
- 32 MHz
- 512 Kb
- 80 Kb
SeeedStudio
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``seeedTinyBLE``
- `SeeedStudio Seeed Tiny BLE <http://developer.mbed.org/platforms/Seeed-Tiny-BLE/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
* - ``seeeduinoArchPro``
- `SeeedStudio Seeeduino-Arch-Pro <https://developer.mbed.org/platforms/Seeeduino-Arch-Pro/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb
Solder Splash Labs
~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``dipcortexm0``
- `Solder Splash Labs DipCortex M0 <https://developer.mbed.org/platforms/DipCortex-M0/>`_
- LPC11U24
- 50 MHz
- 32 Kb
- 8 Kb
Switch Science
~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``hrm1017``
- `Switch Science mbed HRM1017 <https://developer.mbed.org/platforms/mbed-HRM1017/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
* - ``lpc1114fn28``
- `Switch Science mbed LPC1114FN28 <https://developer.mbed.org/platforms/LPC1114FN28/>`_
- LPC1114FN28
- 48 MHz
- 32 Kb
- 4 Kb
Teensy
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``teensy31``
- `Teensy 3.1 <https://www.pjrc.com/store/teensy31.html>`_
- MK20DX256
- 72 MHz
- 256 Kb
- 64 Kb
u-blox
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``ubloxc027``
- `u-blox C027 <https://developer.mbed.org/platforms/u-blox-C027/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb

View File

@ -1,96 +0,0 @@
.. _framework_spl:
Framework ``spl``
=================
The ST Standard Peripheral Library provides a set of functions for handling the peripherals on the STM32 Cortex-M3 family. The idea is to save the user (the new user, in particular) having to deal directly with the registers.
For more detailed information please visit `vendor site <http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743?sc=stm32embeddedsoftware>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_ststm32`
- The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by horizontal.
Armstrap
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``armstrap_eagle1024``
- `Armstrap Eagle 1024 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F417VGT6
- 168 MHz
- 1024 Kb
- 192 Kb
* - ``armstrap_eagle2048``
- `Armstrap Eagle 2048 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F427VIT6
- 168 MHz
- 2048 Kb
- 256 Kb
* - ``armstrap_eagle512``
- `Armstrap Eagle 512 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F407VET6
- 168 MHz
- 512 Kb
- 192 Kb
ST
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``disco_f303vc``
- `ST STM32F3DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF254044>`_
- STM32F303VCT6
- 72 MHz
- 256 Kb
- 48 Kb
* - ``disco_f407vg``
- `ST STM32F4DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF252419>`_
- STM32F407VGT6
- 168 MHz
- 1024 Kb
- 128 Kb
* - ``disco_l152rb``
- `ST STM32LDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF258515>`_
- STM32L152RBT6
- 32 MHz
- 128 Kb
- 16 Kb

View File

@ -1 +0,0 @@
.. include:: ../HISTORY.rst

View File

@ -1,15 +0,0 @@
.. _ide:
IDE Integration
===============
.. toctree::
:maxdepth: 2
ide/arduino
ide/eclipse
ide/energia
ide/qtcreator
ide/sublimetext
ide/vim
ide/visualstudio

View File

@ -1,31 +0,0 @@
.. _ide_arduino:
Arduino
=======
The open-source `Arduino Software (IDE) <http://arduino.cc/en/main/software>`_
makes it easy to write code and upload it to the board. It runs on *Windows,
Mac OS X, and Linux*. The environment is written in *Java* and based on
*Processing* and other open-source software.
This software can be used with:
* :ref:`platform_atmelavr`
* :ref:`platform_atmelsam`
* :ref:`framework_arduino`
Refer to the `Arduino Getting Started <http://arduino.cc/en/Guide/HomePage>`_
page for Installation instructions.
Integration
-----------
More detailed information is located in PlatformIO blog:
`Integration of PlatformIO library manager to Arduino IDE <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_.
Screenshot
----------
.. image:: ../_static/ide-platformio-arduino.png
:target: http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides

View File

@ -1,54 +0,0 @@
.. _ide_eclipse:
Eclipse
=======
The `Eclipse CDT (C/C++ Development Tooling) <https://eclipse.org/cdt/>`_
Project provides a fully functional C and C++ Integrated Development
Environment based on the Eclipse platform. Features include: support for
project creation and managed build for various toolchains, standard make
build, source navigation, various source knowledge tools, such as type
hierarchy, call graph, include browser, macro definition browser, code editor
with syntax highlighting, folding and hyperlink navigation, source code
refactoring and code generation, visual debugging tools, including memory,
registers, and disassembly viewers.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `CDT Documentation <https://eclipse.org/cdt/documentation.php>`_
page for more detailed information.
.. contents::
Integration
-----------
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Eclipse compatible project using
:option:`platformio init --ide` command:
.. code-block:: shell
platformio init --ide eclipse
Then import this project via ``File > Import... > General > Existing Projects
into Workspace > Next`` and specify root directory where is located
:ref:`projectconf`.
Manual Integration
^^^^^^^^^^^^^^^^^^
More detailed information is located in PlatformIO blog: `Building and debugging Atmel AVR (Arduino-based) project using Eclipse IDE+PlatformIO <http://www.ikravets.com/computer-life/programming/2014/06/20/building-and-debugging-atmel-avr-arduino-based-project-using-eclipse-ideplatformio>`_.
`More examples (TI MSP430, TI TIVA, etc.) <https://github.com/platformio/platformio/tree/develop/examples/ide-eclipse>`_
Screenshot
----------
.. image:: ../_static/ide-platformio-eclipse.png
:target: http://www.ikravets.com/computer-life/programming/2014/06/20/building-and-debugging-atmel-avr-arduino-based-project-using- eclipse-ideplatformio

View File

@ -1,30 +0,0 @@
.. _ide_energia:
Energia
=======
The open-source `Energia Software (IDE) <http://energia.nu>`_
makes it easy to write code and upload it to the board. It runs on *Windows,
Mac OS X, and Linux*. The environment is written in *Java* and based on
*Processing* and other open-source software.
This software can be used with:
* :ref:`platform_timsp430`
* :ref:`platform_titiva`
* :ref:`framework_energia`
Refer to the `Energia Getting Started <http://energia.nu/guide/>`_
page for Installation instructions.
Integration
-----------
More detailed information is located in PlatformIO blog:
`Integration of PlatformIO library manager to Energia IDE <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_.
Screenshot
-----------
.. image:: ../_static/ide-platformio-energia.png
:target: http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides

View File

@ -1,129 +0,0 @@
.. _ide_qtcreator:
Qt Creator
==========
The `Qt Creator <https://github.com/qtproject/qt-creator>`_ is an open source cross-platform integrated development environment. The editor includes such features as syntax highlighting for various languages, project manager, integrated version control systems, rapid code navigation tools and code autocompletion.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `Qt-creator Manual <http://doc.qt.io/qtcreator/>`_
page for more detailed information.
.. contents::
Integration
-----------
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Eclipse compatible project using
:option:`platformio init --ide` command:
.. code-block:: shell
platformio init --ide qtcreator
Then import this project via ``File > New File or Project > Import Project``
and specify root directory where is located :ref:`projectconf`.
Manual Integration
^^^^^^^^^^^^^^^^^^
Setup New Project
~~~~~~~~~~~~~~~~~
First of all, let's create new project from Qt Creator Start Page: ``New Project`` or using ``Menu: File > New File or Project``, then select project with ``Empty Qt Project`` type (``Other Project > Empty Qt Project``), fill ``Name``, ``Create in``.
.. image:: ../_static/ide-platformio-qtcreator-1.png
On the next steps select any available kit and click Finish button.
.. image:: ../_static/ide-platformio-qtcreator-2.png
Secondly, we need to configure project with PlatformIO source code builder (click on Projects label on left menu or ``Ctrl+5`` shortcut):
.. image:: ../_static/ide-platformio-qtcreator-3.png
Thirdly, change project file by adding path to directories with header files. Please edit project file to match the following contents:
.. code-block:: none
win32 {
HOMEDIR += $$(USERPROFILE)
}
else {
HOMEDIR += $$(PWD)
}
INCLUDEPATH += "$$HOMEDIR/.platformio/packages/framework-arduinoavr/cores/arduino"
INCLUDEPATH += "$$HOMEDIR/.platformio/packages/toolchain-atmelavr/avr/include"
win32:INCLUDEPATH ~= s,/,\\,g
.. image:: ../_static/ide-platformio-qtcreator-4.png
First program in Qt Creator
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Simple "Blink" project will consist from two files:
1. In the console, navigate to the root of your project folder and initialize platformio project with ``platformio init``
2. The main "C" source file named ``main.c`` must be located in the ``src`` directory.
Let's create new text file named ``main.c`` using ``Menu: New File or Project > General > Text File``:
.. image:: ../_static/ide-platformio-qtcreator-5.png
Copy the source code which is described below to file ``main.c``.
.. code-block:: c
#include "Arduino.h"
#define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself
void setup()
{
pinMode(WLED, OUTPUT); // set pin as output
}
void loop()
{
digitalWrite(WLED, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(WLED, LOW); // set the LED off
delay(1000); // wait for a second
}
3. Locate the project configuration file named ``platformio.ini`` at the root of the project directory and open it.
.. image:: ../_static/ide-platformio-qtcreator-6.png
Edit the content to match the code described below.
.. code-block:: none
#
# Project Configuration File
#
# A detailed documentation with the EXAMPLES is located here:
# http://docs.platformio.org/en/latest/projectconf.html
#
# A sign `#` at the beginning of the line indicates a comment
# Comment lines are ignored.
[env:arduino_uno]
platform = atmelavr
framework = arduino
board = uno
Conclusion
----------
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build All``:
.. image:: ../_static/ide-platformio-qtcreator-7.png

View File

@ -1,145 +0,0 @@
.. _ide_sublimetext:
Sublime Text
============
The `Sublime Text <http://www.sublimetext.com/>`_ is a cross-platform text and source code editor, with a Python application programming interface (API). Sublime Text is proprietary software. Its functionality is extendable with plugins. Most of the extending packages have free-software licenses and are community-built and maintained. Sublime Text lacks graphical setting dialogues and is entirely configured by editing text files.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `Sublime Text Documentation <http://docs.sublimetext.info/en/latest>`_
page for more detailed information.
.. contents::
Integration
-----------
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Eclipse compatible project using
:option:`platformio init --ide` command:
.. code-block:: shell
platformio init --ide sublimetext
Then import this project via ``Project > Open Project...`` and specify root
directory where is located :ref:`projectconf`.
Manual Integration
^^^^^^^^^^^^^^^^^^
Initial configuration
~~~~~~~~~~~~~~~~~~~~~
First of all, we need to create "New Build System" with name "PlatformIO"
from ``Menu: Tools > Build System > New Build System`` and fill it like
described below:
.. code-block:: bash
{
"cmd": ["platformio", "run"],
"working_dir": "${project_path:${folder}}",
"variants":
[
{
"name": "Clean",
"cmd": ["platformio", "run", "-t", "clean"]
},
{
"name": "Upload",
"cmd": ["platformio", "run", "-t", "upload"]
}
]
}
Secondly, we need to select "PlatformIO" Build System from a list:
.. image:: ../_static/ide-sublime-text-platformio-newproject-2.png
After that, we can use the necessary commands from
``Menu: Tools > Command Palette`` or with ``Ctrl+Shift+P`` (Windows/Linux)
``Cmd+Shift+P`` (Mac) shortcut.
.. image:: ../_static/ide-sublime-text-platformio-newproject-3.png
Command Hotkeys
'''''''''''''''
Sublime Text allows to bind own hotkey per command. Let's setup them
for PlatformIO commands using shortcut ``Menu: Preferences > Key-Bindings - User``:
.. image:: ../_static/ide-sublime-text-platformio-newproject-4.png
We are going to use these shortcuts:
* ``F11`` for clean project
* ``F12`` for upload firmware to target device
In this case, the final code will look like:
.. code-block:: none
[
{ "keys": ["f11"], "command": "build", "args": {"variant": "Clean"} },
{ "keys": ["f12"], "command": "build", "args": {"variant": "Upload"} }
]
First program in Sublime Text
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Simple "Blink" project will consist from two files:
1. Main "C" source file named ``main.c`` must be located in the ``src`` directory.
Let's create new file named ``main.c`` using ``Menu: File > New File`` or shortcut ``Ctrl+N`` (Windows/Linux) ``Cmd+N`` (Mac) with the next contents:
.. code-block:: c
#include "Arduino.h"
#define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself
void setup()
{
pinMode(WLED, OUTPUT); // set pin as output
}
void loop()
{
digitalWrite(WLED, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(WLED, LOW); // set the LED off
delay(1000); // wait for a second
}
2. Project Configuration File named ``platformio.ini`` must be located in the project root directory.
Copy the source code which is described below to it.
.. code-block:: none
#
# Project Configuration File
#
# A detailed documentation with the EXAMPLES is located here:
# http://docs.platformio.org/en/latest/projectconf.html
#
# A sign `#` at the beginning of the line indicates a comment
# Comment lines are ignored.
[env:arduino_uno]
platform = atmelavr
framework = arduino
board = uno
Conclusion
----------
Taking everything into account, we can open project directory in Sublime Text using ``Menu: File > Open Folder`` and build it with shortcut ``Ctrl+B`` (Windows/Linux) or ``Cmd+B`` (Mac), clean project with shortcut ``F11`` and upload firmware to target with shortcut ``F12``.
.. image:: ../_static/ide-sublime-text-platformio-newproject-5.png

View File

@ -1,46 +0,0 @@
.. _ide_vim:
VIM
===
`VIM <http://www.vim.org/>`_ is an open-source, powerful and configurable text
editor. Vim is designed for use both from a command-line interface and as a
standalone application in a graphical user interface.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Integration
-----------
Recommended bundles:
* Syntax highlight - `Arduino-syntax-file <https://github.com/vim-scripts/Arduino-syntax-file>`_
* Code Completion - `YouCompleteMe <https://github.com/Valloric/YouCompleteMe>`_ (see configuration example by **Anthony Ford** `PlatformIO/YouCompleteMe Integration <https://gist.github.com/ajford/f551b2b6fd4d6b6e1ef2>`_)
* Syntax checking - `Syntastic <https://github.com/scrooloose/syntastic>`_
Put to the project directory ``Makefile`` wrapper with contents:
.. code-block:: make
# Uncomment lines below if you have problems with $PATH
#SHELL := /bin/bash
#PATH := /usr/local/bin:$(PATH)
all:
platformio run -t upload
clean:
platformio run -t clean
Now, in VIM ``cd /path/to/this/project`` and press ``Ctrl+B`` or ``Cmd+B``
(Mac). *PlatformIO* should compile your source code from the ``src`` directory,
make firmware and upload it.
Screenshot
----------
.. image:: ../_static/ide-platformio-vim.png

View File

@ -1,124 +0,0 @@
.. _ide_visualstudio:
Visual Studio
=============
The `Microsoft Visual Studio (Free) <http://visualstudio.com/free>`_ is an integrated development environment (IDE) from Microsoft. Visual Studio includes a code editor supporting IntelliSense (the code completion component) as well as code refactoring.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `Visual Studio Documentation <https://msdn.microsoft.com/library/vstudio>`_
page for more detailed information.
.. contents::
Integration
-----------
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Eclipse compatible project using
:option:`platformio init --ide` command:
.. code-block:: shell
platformio init --ide visualstudio
Then import this project via ``File > Import ...`` and specify root directory
where is located :ref:`projectconf`.
Manual Integration
^^^^^^^^^^^^^^^^^^
Setup New Project
~~~~~~~~~~~~~~~~~
First of all, let's create new project from Visual Studio Start Page: ``Start > New Project`` or using ``Menu: File > New > Project``, then select project with ``Makefile`` type (``Visual C++ > General > Makefile Project``), fill ``Project name``, ``Solution name``, ``Location`` fields and press OK button.
.. image:: ../_static/ide-vs-platformio-newproject.png
Secondly, we need to configure project with PlatformIO source code builder:
.. image:: ../_static/ide-vs-platformio-newproject-2.png
If we want to use native AVR programming, we have to specify additional preprocessor symbol ("Preprocessor definitions" field) about your MCU. For example, an Arduino Uno is based on the ATmega328 MCU. In this case We will add new definition ``__AVR_ATmega328__``.
.. image:: ../_static/ide-vs-platformio-newproject-2-1.png
Release Configuration is the same as Debug, so on the next step we check "Same as Debug Configuration" and click "Finish" button.
.. image:: ../_static/ide-vs-platformio-newproject-3.png
Thirdly, we need to add directories with header files using project properties (right click on the project name or ``Alt-Enter`` shortcut) and add two directories to ``Configuration Properties > NMake > Include Search Path``:
.. code-block:: none
$(HOMEDRIVE)$(HOMEPATH)\.platformio\packages\toolchain-atmelavr\avr\include
$(HOMEDRIVE)$(HOMEPATH)\.platformio\packages\framework-arduinoavr\cores\arduino
.. image:: ../_static/ide-vs-platformio-newproject-5.png
First program in Visual Studio
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Simple "Blink" project will consist from two files:
1. Main "C" source file named ``main.c`` must be located in the ``src`` directory.
Let's create new file named ``main.c`` using ``Menu: File > New File`` or shortcut ``Ctrl+N``:
.. image:: ../_static/ide-vs-platformio-newproject-6.png
Copy the source code which is described below to file ``main.c``.
.. code-block:: c
#include "Arduino.h"
#define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself
void setup()
{
pinMode(WLED, OUTPUT); // set pin as output
}
void loop()
{
digitalWrite(WLED, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(WLED, LOW); // set the LED off
delay(1000); // wait for a second
}
2. Project Configuration File named ``platformio.ini`` must be located in the project root directory.
.. image:: ../_static/ide-vs-platformio-newproject-7.png
Copy the source code which is described below to it.
.. code-block:: none
#
# Project Configuration File
#
# A detailed documentation with the EXAMPLES is located here:
# http://docs.platformio.org/en/latest/projectconf.html
#
# A sign `#` at the beginning of the line indicates a comment
# Comment lines are ignored.
[env:arduino_uno]
platform = atmelavr
framework = arduino
board = uno
Conclusion
----------
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build Solution``:
.. image:: ../_static/ide-vs-platformio-newproject-8.png

View File

@ -1,71 +0,0 @@
PlatformIO: A cross-platform code builder and the missing library manager
=========================================================================
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC, ST STM32,
TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.*
.. image:: _static/platformio-logo.png
:target: http://platformio.org
* `Website <http://platformio.org>`_
* `Web 2.0 Library Search <http://platformio.org/#!/lib>`_ |
`Embedded Boards Explorer <http://platformio.org/#!/boards>`_
* `Project Examples <https://github.com/platformio/platformio/tree/develop/examples>`_
* `Source Code <https://github.com/platformio/platformio>`_ |
`Issues <https://github.com/platformio/platformio/issues>`_
* `Blog <http://www.ikravets.com/category/computer-life/platformio>`_ |
`Reddit <http://www.reddit.com/r/platformio/>`_ |
`Twitter <https://twitter.com/PlatformIO_Org>`_
You have **no need** to install any *IDE* or compile any tool chains. *PlatformIO*
has pre-built different development platforms and pre-configured settings for
the most popular embedded boards. For further details, please
refer to :ref:`faq_what_is_platformio`
Embedded Development. *Easier Than Ever.*
-----------------------------------------
* Colourful command-line output
* Built-in :ref:`Serial Port Monitor <cmd_serialports_monitor>`
* Configurable build :ref:`-flags/-options <projectconf_build_flags>`
* Integration with :ref:`development environments (IDE) <ide>`
* Ready for Cloud Compiling and :ref:`ci`
* Pre-built tool chains, :ref:`frameworks` for the popular Hardware Platforms
Smart Code Builder. *Fast and Reliable.*
----------------------------------------
* Reliable, automatic dependency analysis and detection of build changes
* Improved support for parallel builds
* Ability to share built files in a cache
* Lookup for external libraries which are installed via :ref:`librarymanager`
The Missing Library Manager. *It's here!*
-----------------------------------------
* Friendly Command-Line Interface
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
* Library dependency management
* Automatic library updating
* It runs on Windows, Mac OS X, and Linux (+ARM).
Contents
--------
.. toctree::
:maxdepth: 2
quickstart
installation
projectconf
envvars
Platforms & Boards <platforms/index>
frameworks/index
librarymanager/index
userguide/index
ci/index
ide
articles
FAQ <faq>
history

View File

@ -1,139 +0,0 @@
.. _installation:
Installation
============
**PlatformIO** is written in `Python <https://www.python.org/downloads/>`_ and
works on Mac OS X, Linux, Windows OS and *ARM*-based credit-card sized
computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
`BeagleBone <http://beagleboard.org>`_,
`CubieBoard <http://cubieboard.org>`_).
.. contents::
System requirements
-------------------
* **Operating systems:**
* Mac OS X
* Linux, +ARM
* Windows
* `Python 2.6 or Python 2.7 <https://www.python.org/downloads/>`_
All commands below should be executed in
`Command-line <http://en.wikipedia.org/wiki/Command-line_interface>`_
application:
* *Mac OS X / Linux* this is *Terminal* application.
* *Windows* this is
`Command Prompt <http://en.wikipedia.org/wiki/Command_Prompt>`_ (``cmd.exe``)
application.
.. warning::
If you are going to run *PlatformIO* from **subprocess**, you
:ref:`MUST DISABLE <faq_troubleshooting_pioblocksprompt>` all prompts.
It will allow you to avoid blocking.
Troubleshooting
---------------
For further details, frequently questions, please refer to :ref:`faq`.
Installation Methods
--------------------
Please *choose one of* the following installation methods:
Super-Quick (Mac / Linux)
~~~~~~~~~~~~~~~~~~~~~~~~~
To install or upgrade *PlatformIO* paste that at a *Terminal* prompt
(**you might need** to run ``sudo`` first):
.. code-block:: bash
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
Installer Script (Mac / Linux / Windows)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To install or upgrade *PlatformIO*, download
`get-platformio.py <https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py>`_
script. Then run the following (you might need to run ``sudo`` first):
.. code-block:: bash
python get-platformio.py
On *Windows OS* it may look like:
.. code-block:: bash
C:\Python27\python.exe get-platformio.py
Full Guide
~~~~~~~~~~
1. Check a ``python`` version (only 2.6-2.7 is supported):
.. code-block:: bash
$ python --version
*Windows OS* Users only:
* `Download Python 2.7 <https://www.python.org/downloads/>`_ and install it.
* Add to PATH system variable ``;C:\Python27;C:\Python27\Scripts;`` and
reopen *Command Prompt* (``cmd.exe``) application. Please read this
article `How to set the path and environment variables in Windows
<http://www.computerhope.com/issues/ch000549.htm>`_.
2. Check a ``pip`` tool for installing and managing *Python* packages:
.. code-block:: bash
$ pip search platformio
You should see short information about ``platformio`` package.
If your computer does not recognize ``pip`` command, try to install it first
using `these instructions <https://pip.pypa.io/en/latest/installing.html>`_.
3. Install a ``platformio`` and related packages:
.. code-block:: bash
$ pip install platformio && pip install --egg scons
For upgrading the ``platformio`` to new version please use this command:
.. code-block:: bash
$ pip install -U platformio
Development Version
~~~~~~~~~~~~~~~~~~~
.. warning::
We don't recommend to use ``develop`` version in production.
1. If you had have already installed PlatformIO, please uninstall it:
.. code-block:: bash
$ pip uninstall platformio
2. Install the latest PlatformIO from the ``develop`` branch:
.. code-block:: bash
$ pip install https://github.com/platformio/platformio/archive/develop.zip
If you want to be up-to-date with the latest ``develop`` version of PlatformIO,
then you need to perform step #2 each time if you see the new commits in
`PlatformIO GitHub repository <https://github.com/platformio/platformio/commits/develop>`_.

View File

@ -1,317 +0,0 @@
.. |PIOAPICR| replace:: *PlatformIO Library Registry Crawler*
.. _library_config:
library.json
============
``library.json`` is a manifest file of development library.
Initially it was
developed for :ref:`librarymanager`, but later was accepted by worldwide embedded
community like a **standard library specification**.
A data in ``library.json`` should be represented
in `JSON-style <http://en.wikipedia.org/wiki/JSON>`_ via
`associative array <http://en.wikipedia.org/wiki/Associative_array>`_
(name/value pairs). An order doesn't matter. The allowable fields
(names from pairs) are described below.
.. contents::
.. _libjson_name:
``name``
--------
**Required** | Type: ``String`` | Max. Length: 50
A name of the library.
* Must be unique.
* Should be slug style for simplicity, consistency and compatibility.
Example: *Arduino-SPI*
* Title Case, Aa-z, can contain digits and dashes (but not start/end
with them).
* Consecutive dashes are not allowed.
.. _libjson_description:
``description``
---------------
**Required** | Type: ``String`` | Max. Length: 255
The field helps users to identify and search for your library with a brief
description. Describe the hardware devices (sensors, boards and etc.) which
are suitable with it.
.. _libjson_keywords:
``keywords``
------------
**Required** | Type: ``String`` | Max. Length: 255
Used for search by keyword. Helps to make your library easier to discover
without people needing to know its name.
The keyword should be lowercased, can contain a-z, digits and dash (but not
start/end with them). A list from the keywords can be specified with
separator ``,``
.. _libjson_authors:
``authors``
-----------
*Required* if :ref:`libjson_repository` field is not defined | Type: ``Object``
or ``Array``
An author contact information
* ``name`` Full name (**Required**)
* ``email``
* ``url`` An author's contact page
* ``maintainer`` Specify "maintainer" status
Examples:
.. code-block:: javascript
"authors":
{
"name": "John Smith",
"email": "me@john-smith.com",
"url": "http://www.john-smith/contact"
}
...
"authors":
[
{
"name": "John Smith",
"email": "me@john-smith.com",
"url": "http://www.john-smith/contact"
},
{
"name": "Andrew Smith",
"email": "me@andrew-smith.com",
"url": "http://www.andrew-smith/contact",
"maintainer": true
}
]
.. note::
You can omit :ref:`libjson_authors` field and define
:ref:`libjson_repository` field. Only *GitHub-based* repository is
supported now. In this case
|PIOAPICR| will use information from
`GitHub API Users <https://developer.github.com/v3/users/>`_.
.. _libjson_repository:
``repository``
--------------
*Required* if :ref:`libjson_downloadurl` field is not defined | Type: ``Object``
The repository in which the source code can be found.
Example:
.. code-block:: javascript
"repository":
{
"type": "git",
"url": "https://github.com/foo/bar.git"
}
.. _libjson_downloadurl:
``downloadUrl``
---------------
*Required* if :ref:`libjson_repository` field is not defined | Type: ``String``
It is the *HTTP URL* to the archived source code of library. It should end
with the type of archive (``.zip`` or ``.tar.gz``).
.. _libjson_version:
``version``
-----------
*Required* if :ref:`libjson_repository` field is not defined | Type: ``String``
| Max. Length: 20
A version of the current library source code.
* Can contain a-z, digits, dots or dash.
* `Semantic Versioning <http://semver.org>`_ is recommended.
* A `CVS <http://en.wikipedia.org/wiki/Concurrent_Versions_System>`_
revision from the latest commit. Example: ``13`` (*SVN*) or first 10
chars of *SHA* digest ``e4564b7da4`` (*Git*).
.. note::
You can omit :ref:`libjson_version` field and define
:ref:`libjson_repository` field. In this case
|PIOAPICR| will use the *CVS*-revision from the latest commit.
.. _libjson_url:
``url``
-------
*Optional* | Type: ``String`` | Max. Length: 255
Home page of library (if is different from :ref:`libjson_repository` url).
.. _libjson_include:
``include``
-----------
*Optional* | Type: ``String`` or ``Array`` |
`Glob Pattern <http://en.wikipedia.org/wiki/Glob_(programming)>`_
If :ref:`libjson_include` field is a type of ``String``, then
|PIOAPICR| will recognize it like a "relative path inside
repository/archive to library source code". See example below where the only
source code from the relative directory ``LibrarySourceCodeHere`` will be
included.
.. code-block:: javascript
"include": "some/child/dir/LibrarySourceCodeHere"
If :ref:`libjson_include` field is a type of ``Array``, then
|PIOAPICR| firstly will apply :ref:`libjson_exclude` filter and
then include only directories/files which match with :ref:`libjson_include`
patterns.
Example:
.. code-block:: javascript
"include":
[
"dir/*.[ch]pp",
"dir/examples/*",
"*/*/*.h"
]
Pattern Meaning
.. list-table::
:header-rows: 1
* - Pattern
- Meaning
* - ``*``
- matches everything
* - ``?``
- matches any single character
* - ``[seq]``
- matches any character in seq
* - ``[!seq]``
- matches any character not in seq
.. _libjson_exclude:
``exclude``
-----------
*Optional* | Type: ``String`` or ``Array`` |
`Glob Pattern <http://en.wikipedia.org/wiki/Glob_(programming)>`_
Exclude the directories and files which match with :ref:`libjson_exclude`
patterns.
.. _libjson_frameworks:
``frameworks``
--------------
*Optional* | Type: ``String`` or ``Array``
A list with compatible frameworks. The available framework types are defined in
the :ref:`platforms` section.
.. _libjson_platforms:
``platforms``
-------------
*Optional* | Type: ``String`` or ``Array``
A list with compatible platforms. The available platform types are
defined in :ref:`platforms` section.
.. _libjson_dependencies:
``dependencies``
----------------
*Optional* | Type: ``Array`` or ``Object``
A list of dependent libraries. They will be installed automatically with
:ref:`cmd_lib_install` command.
Allowed requirements for dependent library:
* ``name`` | Type: ``String``
* ``authors`` | Type: ``String`` or ``Array``
* ``frameworks`` | Type: ``String`` or ``Array``
* ``platforms`` | Type: ``String`` or ``Array``
Example:
.. code-block:: javascript
"dependencies":
[
{
"name": "Library-Foo",
"authors":
[
"Jhon Smith",
"Andrew Smith"
]
},
{
"name": "Library-Bar",
"frameworks": "FrameworkFoo, FrameworkBar"
}
]
.. _libjson_examples:
``examples``
----------------
*Optional* | Type: ``String`` or ``Array`` |
`Glob Pattern <http://en.wikipedia.org/wiki/Glob_(programming)>`_
A list of example patterns. This field is predefined with default value:
.. code-block:: javascript
"examples": [
"[Ee]xamples/*/*.ini",
"[Ee]xamples/*/*.pde"
]

View File

@ -1,137 +0,0 @@
.. _library_creating:
.. |PIOAPICR| replace:: *PlatformIO Library Registry Crawler*
Creating Library
================
*PlatformIO* :ref:`librarymanager` doesn't have any requirements to a library
source code structure. The only one requirement is library's manifest file -
:ref:`library_config`. It can be located inside your library or in the another
location where |PIOAPICR| will have *HTTP* access.
.. contents::
Source Code Location
--------------------
There are a several ways how to share your library with the whole world
(see `examples <https://github.com/platformio/platformio-libmirror/tree/master/configs>`_).
You can hold a lot of libraries (split into separated folders) inside one of
the repository/archive. In this case please use :ref:`libjson_include`
field to specify the relative path to your library's source code.
At GitHub
^^^^^^^^^
**Recommended**
If a library source code is located at `GitHub <https://github.com>`_, then
you **need to specify** only these fields in the :ref:`library_config`:
* :ref:`libjson_name`
* :ref:`libjson_keywords`
* :ref:`libjson_description`
* :ref:`libjson_repository`
|PIOAPICR| will populate the rest fields, like :ref:`libjson_version` or
:ref:`libjson_authors` with an actual information from *GitHub*.
Example:
.. code-block:: javascript
{
"name": "IRremote",
"keywords": "infrared, ir, remote",
"description": "Send and receive infrared signals with multiple protocols",
"repository":
{
"type": "git",
"url": "https://github.com/shirriff/Arduino-IRremote.git"
},
"frameworks": "arduino",
"platforms": "atmelavr"
}
Under CVS (SVN/GIT)
^^^^^^^^^^^^^^^^^^^
|PIOAPICR| can operate with a library source code that is under *CVS* control.
The list of **required** fields in the :ref:`library_config` will look like:
* :ref:`libjson_name`
* :ref:`libjson_keywords`
* :ref:`libjson_description`
* :ref:`libjson_authors`
* :ref:`libjson_repository`
Example:
.. code-block:: javascript
{
"name": "XBee",
"keywords": "xbee, protocol, radio",
"description": "Arduino library for communicating with XBees in API mode",
"authors":
{
"name": "Andrew Rapp",
"email": "andrew.rapp@gmail.com",
"url": "https://code.google.com/u/andrew.rapp@gmail.com/"
},
"repository":
{
"type": "git",
"url": "https://code.google.com/p/xbee-arduino/"
},
"frameworks": "arduino",
"platforms": "atmelavr"
}
Self-hosted
^^^^^^^^^^^
You can manually archive (*Zip, Tar.Gz*) your library source code and host it
in the *Internet*. Then you should specify the additional fields,
like :ref:`libjson_version` and :ref:`libjson_downloadurl`. The final list
of **required** fields in the :ref:`library_config` will look like:
* :ref:`libjson_name`
* :ref:`libjson_keywords`
* :ref:`libjson_description`
* :ref:`libjson_authors`
* :ref:`libjson_version`
* :ref:`libjson_downloadurl`
.. code-block:: javascript
{
"name": "OneWire",
"keywords": "onewire, 1-wire, bus, sensor, temperature, ibutton",
"description": "Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc)",
"authors":
{
"name": "Paul Stoffregen",
"url": "http://www.pjrc.com/teensy/td_libs_OneWire.html"
},
"version": "2.2",
"downloadUrl": "http://www.pjrc.com/teensy/arduino_libraries/OneWire.zip",
"include": "OneWire",
"frameworks": "arduino",
"platforms": "atmelavr"
}
Register
--------
The registration requirements:
* A library must adhere to the :ref:`library_config` specification.
* There must be public *HTTP* access to the library :ref:`library_config` file.
Now, you can :ref:`register <cmd_lib_register>` your library and allow others
to :ref:`install <cmd_lib_install>` it.

View File

@ -1,25 +0,0 @@
.. _librarymanager:
Library Manager
===============
..
*"The missing library manager for development platforms"* [#]_
*PlatformIO Library Manager* allows you to organize external embedded libraries.
You can search for new libraries via :ref:`Command Line interface <cmd_lib_search>`
or `Web 2.0 Library Search <http://platformio.org/#!/lib>`_.
You don't need to bother for finding the latest version of library. Due to
:ref:`cmd_lib_update` command you will have up-to-date external libraries.
.. toctree::
:maxdepth: 2
config
creating
User Guide <../userguide/lib/index.rst>
.. [#] Inspired by `npm <https://www.npmjs.com/>`_ and `bower
<http://bower.io>`_ package managers for web.

View File

@ -1,242 +0,0 @@
@ECHO OFF
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set BUILDDIR=_build
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
set I18NSPHINXOPTS=%SPHINXOPTS% .
if NOT "%PAPER%" == "" (
set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
)
if "%1" == "" goto help
if "%1" == "help" (
:help
echo.Please use `make ^<target^>` where ^<target^> is one of
echo. html to make standalone HTML files
echo. dirhtml to make HTML files named index.html in directories
echo. singlehtml to make a single large HTML file
echo. pickle to make pickle files
echo. json to make JSON files
echo. htmlhelp to make HTML files and a HTML help project
echo. qthelp to make HTML files and a qthelp project
echo. devhelp to make HTML files and a Devhelp project
echo. epub to make an epub
echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
echo. text to make text files
echo. man to make manual pages
echo. texinfo to make Texinfo files
echo. gettext to make PO message catalogs
echo. changes to make an overview over all changed/added/deprecated items
echo. xml to make Docutils-native XML files
echo. pseudoxml to make pseudoxml-XML files for display purposes
echo. linkcheck to check all external links for integrity
echo. doctest to run all doctests embedded in the documentation if enabled
goto end
)
if "%1" == "clean" (
for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
del /q /s %BUILDDIR%\*
goto end
)
%SPHINXBUILD% 2> nul
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)
if "%1" == "html" (
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/html.
goto end
)
if "%1" == "dirhtml" (
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
goto end
)
if "%1" == "singlehtml" (
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
goto end
)
if "%1" == "pickle" (
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the pickle files.
goto end
)
if "%1" == "json" (
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the JSON files.
goto end
)
if "%1" == "htmlhelp" (
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run HTML Help Workshop with the ^
.hhp project file in %BUILDDIR%/htmlhelp.
goto end
)
if "%1" == "qthelp" (
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run "qcollectiongenerator" with the ^
.qhcp project file in %BUILDDIR%/qthelp, like this:
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\PlatformIO.qhcp
echo.To view the help file:
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\PlatformIO.ghc
goto end
)
if "%1" == "devhelp" (
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished.
goto end
)
if "%1" == "epub" (
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The epub file is in %BUILDDIR%/epub.
goto end
)
if "%1" == "latex" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
if errorlevel 1 exit /b 1
echo.
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdf" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf
cd %BUILDDIR%/..
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdfja" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf-ja
cd %BUILDDIR%/..
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "text" (
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The text files are in %BUILDDIR%/text.
goto end
)
if "%1" == "man" (
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The manual pages are in %BUILDDIR%/man.
goto end
)
if "%1" == "texinfo" (
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
goto end
)
if "%1" == "gettext" (
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
goto end
)
if "%1" == "changes" (
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
if errorlevel 1 exit /b 1
echo.
echo.The overview file is in %BUILDDIR%/changes.
goto end
)
if "%1" == "linkcheck" (
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
if errorlevel 1 exit /b 1
echo.
echo.Link check complete; look for any errors in the above output ^
or in %BUILDDIR%/linkcheck/output.txt.
goto end
)
if "%1" == "doctest" (
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
if errorlevel 1 exit /b 1
echo.
echo.Testing of doctests in the sources finished, look at the ^
results in %BUILDDIR%/doctest/output.txt.
goto end
)
if "%1" == "xml" (
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The XML files are in %BUILDDIR%/xml.
goto end
)
if "%1" == "pseudoxml" (
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
goto end
)
:end

View File

@ -1,844 +0,0 @@
.. _platform_atmelavr:
Platform ``atmelavr``
=====================
Atmel AVR 8- and 32-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industrys most code-efficient architecture for C and assembly programming.
For more detailed information please visit `vendor site <http://www.atmel.com/products/microcontrollers/avr/default.aspx>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``toolchain-atmelavr``
- `avr-gcc <https://gcc.gnu.org/wiki/avr-gcc>`_, `GDB <http://www.gnu.org/software/gdb/>`_, `AVaRICE <http://avarice.sourceforge.net/>`_, `SimulAVR <http://www.nongnu.org/simulavr/>`_
* - ``tool-avrdude``
- `AVRDUDE <http://www.nongnu.org/avrdude/>`_
* - ``framework-arduinoavr``
- `Arduino Wiring-based Framework (AVR Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
* - ``tool-micronucleus``
- `Micronucleus <https://github.com/micronucleus/micronucleus>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Adafruit
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``flora8``
- `Adafruit Flora <http://www.adafruit.com/product/659>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``protrinket3``
- `Adafruit Pro Trinket 3V/12MHz (USB) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 12 MHz
- 32 Kb
- 2 Kb
* - ``protrinket3ftdi``
- `Adafruit Pro Trinket 3V/12MHz (FTDI) <http://www.adafruit.com/products/2010>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``protrinket5ftdi``
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``trinket3``
- `Adafruit Trinket 3V/8MHz <http://www.adafruit.com/products/1500>`_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.5 Kb
* - ``trinket5``
- `Adafruit Trinket 5V/16MHz <http://www.adafruit.com/products/1501>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
Arduino
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``LilyPadUSB``
- `Arduino LilyPad USB <http://arduino.cc/en/Main/ArduinoBoardLilyPadUSB>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``atmegangatmega168``
- `Arduino NG or older ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``atmegangatmega8``
- `Arduino NG or older ATmega8 <http://arduino.cc/en/main/boards>`_
- ATMEGA8
- 16 MHz
- 8 Kb
- 1 Kb
* - ``btatmega168``
- `Arduino BT ATmega168 <http://arduino.cc/en/main/boards>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``btatmega328``
- `Arduino BT ATmega328 <http://arduino.cc/en/main/boards>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``diecimilaatmega168``
- `Arduino Duemilanove or Diecimila ATmega168 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``diecimilaatmega328``
- `Arduino Duemilanove or Diecimila ATmega328 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``esplora``
- `Arduino Esplora <http://arduino.cc/en/Main/ArduinoBoardEsplora>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``ethernet``
- `Arduino Ethernet <http://arduino.cc/en/Main/ArduinoBoardEthernet>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``fio``
- `Arduino Fio <http://arduino.cc/en/Main/ArduinoBoardFio>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``leonardo``
- `Arduino Leonardo <http://arduino.cc/en/Main/arduinoBoardLeonardo>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``lilypadatmega168``
- `Arduino LilyPad ATmega168 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``lilypadatmega328``
- `Arduino LilyPad ATmega328 <http://arduino.cc/en/Main/ArduinoBoardLilyPad>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``megaADK``
- `Arduino Mega ADK <http://arduino.cc/en/Main/ArduinoBoardMegaADK>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``megaatmega1280``
- `Arduino Mega or Mega 2560 ATmega1280 <http://arduino.cc/en/Main/arduinoBoardMega>`_
- ATMEGA1280
- 16 MHz
- 128 Kb
- 8 Kb
* - ``megaatmega2560``
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://arduino.cc/en/Main/arduinoBoardMega2560>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``micro``
- `Arduino Micro <http://arduino.cc/en/Main/ArduinoBoardMicro>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``miniatmega168``
- `Arduino Mini ATmega168 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``miniatmega328``
- `Arduino Mini ATmega328 <http://arduino.cc/en/Main/ArduinoBoardMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``nanoatmega168``
- `Arduino Nano ATmega168 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``nanoatmega328``
- `Arduino Nano ATmega328 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro16MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - ``pro16MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``pro8MHzatmega168``
- `Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - ``pro8MHzatmega328``
- `Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``robotControl``
- `Arduino Robot Control <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``robotMotor``
- `Arduino Robot Motor <http://arduino.cc/en/Main/Robot>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``uno``
- `Arduino Uno <http://arduino.cc/en/Main/ArduinoBoardUno>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``yun``
- `Arduino Yun <http://arduino.cc/en/Main/ArduinoBoardYun>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
BQ
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``zumbt328``
- `BQ ZUM BT-328 board <http://www.bq.com/gb/products/zum.html>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
BitWizard
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``raspduino``
- `BitWizard Raspduino <http://www.bitwizard.nl/wiki/index.php/Raspduino>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
Digistump
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``digispark-pro``
- `Digistump Digispark Pro (Default 16 MHz) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro32``
- `Digistump Digispark Pro (16 MHz) (32 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-pro64``
- `Digistump Digispark Pro (16 MHz) (64 byte buffer) <http://digistump.com/products/109>`_
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - ``digispark-tiny``
- `Digistump Digispark (Default - 16 MHz) <http://digistump.com/products/1>`_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
Engduino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``engduinov1``
- `Engduino 1 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov2``
- `Engduino 2 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``engduinov3``
- `Engduino 3 <http://www.engduino.org>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
LightUp
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lightup``
- `LightUp <https://www.lightup.io/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
LowPowerLab
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``moteino``
- `LowPowerLab Moteino <https://lowpowerlab.com/shop/moteino-r4>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``moteinomega``
- `LowPowerLab MoteinoMEGA <http://lowpowerlab.com/blog/2014/08/09/moteinomega-available-now/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
Microduino
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``1284p16m``
- `Microduino Core+ (ATmega1284P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``1284p8m``
- `Microduino Core+ (ATmega1284P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``168pa16m``
- `Microduino Core (Atmega168PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 16 MHz
- 16 Kb
- 1 Kb
* - ``168pa8m``
- `Microduino Core (Atmega168PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA168P
- 8 MHz
- 16 Kb
- 1 Kb
* - ``328p16m``
- `Microduino Core (Atmega328P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``328p8m``
- `Microduino Core (Atmega328P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``32u416m``
- `Microduino Core USB (ATmega32U4@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-CoreUSB>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``644pa16m``
- `Microduino Core+ (Atmega644PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
* - ``644pa8m``
- `Microduino Core+ (Atmega644PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B>`_
- ATMEGA644P
- 8 MHz
- 64 Kb
- 4 Kb
PanStamp
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``panStampAVR``
- `PanStamp AVR <http://www.panstamp.com/product/panstamp-avr/>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
Quirkbot
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``quirkbot``
- `Quirkbot <http://quirkbot.com>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RedBearLab
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``blend``
- `RedBearLab Blend <http://redbearlab.com/blend/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro16``
- `RedBearLab Blend Micro 3.3V/16MHz (overclock) <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``blendmicro8``
- `RedBearLab Blend Micro 3.3V/8MHz <http://redbearlab.com/blendmicro/>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
RepRap
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``reprap_rambo``
- `RepRap RAMBo <http://reprap.org/wiki/Rambo>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
Sanguino
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sanguino_atmega12848m``
- `Sanguino ATmega1284p (8MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284m``
- `Sanguino ATmega1284p (20MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 20 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega1284p``
- `Sanguino ATmega1284p (16MHz) <https://code.google.com/p/sanguino/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``sanguino_atmega644p``
- `Sanguino ATmega644P <https://code.google.com/p/sanguino/>`_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
SparkFun
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sparkfun_digitalsandbox``
- `SparkFun Digital Sandbox <https://www.sparkfun.com/products/12651>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``sparkfun_fiov3``
- `SparkFun Fio V3 3.3V/8MHz <https://www.sparkfun.com/products/11520>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_makeymakey``
- `SparkFun Makey Makey <https://www.sparkfun.com/products/11511>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_megamini``
- `SparkFun Mega Pro Mini 3.3V <https://www.sparkfun.com/products/10743>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro16MHz``
- `SparkFun Mega Pro 5V/16MHz <https://www.sparkfun.com/products/11007>`_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_megapro8MHz``
- `SparkFun Mega Pro 3.3V/8MHz <https://www.sparkfun.com/products/10744>`_
- ATMEGA2560
- 8 MHz
- 256 Kb
- 8 Kb
* - ``sparkfun_promicro16``
- `SparkFun Pro Micro 5V/16MHz <https://www.sparkfun.com/products/12640>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_promicro8``
- `SparkFun Pro Micro 3.3V/8MHz <https://www.sparkfun.com/products/12587>`_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - ``sparkfun_redboard``
- `SparkFun RedBoard <https://www.sparkfun.com/products/12757>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - ``uview``
- `SparkFun MicroView <https://www.sparkfun.com/products/12923>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
TinyCircuits
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``tinyduino``
- `TinyCircuits TinyDuino Processor Board <https://tiny-circuits.com/tinyduino-processor-board.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - ``tinylily``
- `TinyCircuits TinyLily Mini Processor <https://tiny-circuits.com/tiny-lily-mini-processor.html>`_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
WickedDevice
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wildfirev2``
- `WickedDevice WildFire v2 [stk500] <http://shop.wickeddevice.com/resources/wildfire/#arduinoidesetup>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``wildfirev3``
- `WickedDevice WildFire v3 [optiboot] <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb

View File

@ -1,130 +0,0 @@
.. _platform_atmelsam:
Platform ``atmelsam``
=====================
Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.
For more detailed information please visit `vendor site <http://www.atmel.com/products/microcontrollers/arm/default.aspx>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-arduinosam``
- `Arduino Wiring-based Framework (SAM Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``tool-bossac``
- `BOSSA CLI <https://sourceforge.net/projects/b-o-s-s-a/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Arduino
~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``due``
- `Arduino Due (Programming Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - ``dueUSB``
- `Arduino Due (USB Native Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
Digistump
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``digix``
- `Digistump DigiX <http://digistump.com/products/50>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 28 Kb
SainSmart
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``sainSmartDue``
- `SainSmart Due (Programming Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - ``sainSmartDueUSB``
- `SainSmart Due (USB Native Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html>`_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb

View File

@ -1,417 +0,0 @@
.. _platform_creating:
Creating Platform
=================
*PlatformIO* was developed like a tool which would build the same source code
for the different development platforms via single command :ref:`cmd_run`
without any dependent software or requirements.
For this purpose *PlatformIO* uses own pre-configured platforms data:
build scripts, tool chains, the settings for the most popular embedded
boards and etc. These data are pre-built and packaged to the different
``packages``. It allows *PlatformIO* to have multiple development platforms
which can use the same packages(tool chains, frameworks), but have
different/own build scripts, uploader and etc.
.. note::
If you want to change some build flags for the existing
:ref:`Platforms <platforms>`, you don't need to create (or duplicate) own
development platforms! Please use :ref:`projectconf_build_flags` option.
**Step-by-Step Manual**
1. Chose :ref:`platform_creating_packages` for platform
2. Create :ref:`platform_creating_manifest_file`
3. Create :ref:`platform_creating_build_script`
4. Finish with the :ref:`platform_creating_installation`.
.. contents::
.. _platform_creating_packages:
Packages
--------
*PlatformIO* has pre-built packages for the most popular operation systems:
*Mac OS*, *Linux (+ARM)* and *Windows*.
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-arduinoavr``
- `Arduino Wiring-based Framework (AVR Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
* - ``framework-arduinoespressif``
- `Arduino Wiring-based Framework (ESP8266 Core) <https://github.com/esp8266/Arduino>`_
* - ``framework-arduinomsp430``
- `Arduino Wiring-based Framework (MSP430 Core) <http://arduino.cc/en/Reference/HomePage>`_
* - ``framework-arduinosam``
- `Arduino Wiring-based Framework (SAM Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
* - ``framework-arduinoteensy``
- `Arduino Wiring-based Framework <http://arduino.cc/en/Reference/HomePage>`_
* - ``framework-cmsis``
- `Vendor-independent hardware abstraction layer for the Cortex-M processor series <http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php>`_
* - ``framework-energiamsp430``
- `Energia Wiring-based Framework (MSP430 Core) <http://energia.nu/reference/>`_
* - ``framework-energiativa``
- `Energia Wiring-based Framework (LM4F Core) <http://energia.nu/reference/>`_
* - ``framework-libopencm3``
- `libOpenCM3 Framework <http://www.libopencm3.org/>`_
* - ``framework-mbed``
- `mbed Framework <http://mbed.org>`_
* - ``framework-spl``
- `Standard Peripheral Library for STM32 MCUs <http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF257890>`_
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
* - ``sdk-esp8266``
- `ESP8266 SDK <http://bbs.espressif.com>`_
* - ``tool-avrdude``
- `AVRDUDE <http://www.nongnu.org/avrdude/>`_
* - ``tool-bossac``
- `BOSSA CLI <https://sourceforge.net/projects/b-o-s-s-a/>`_
* - ``tool-esptool``
- `esptool-ck <https://github.com/igrr/esptool-ck>`_
* - ``tool-lm4flash``
- `Flash Programmer <http://www.ti.com/tool/lmflashprogrammer>`_
* - ``tool-micronucleus``
- `Micronucleus <https://github.com/micronucleus/micronucleus>`_
* - ``tool-mspdebug``
- `MSPDebug <http://mspdebug.sourceforge.net/>`_
* - ``tool-stlink``
- `ST-Link <https://github.com/texane/stlink>`_
* - ``tool-teensy``
- `Teensy Loader <https://www.pjrc.com/teensy/loader.html>`_
* - ``toolchain-atmelavr``
- `avr-gcc <https://gcc.gnu.org/wiki/avr-gcc>`_, `GDB <http://www.gnu.org/software/gdb/>`_, `AVaRICE <http://avarice.sourceforge.net/>`_, `SimulAVR <http://www.nongnu.org/simulavr/>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``toolchain-timsp430``
- `msp-gcc <http://sourceforge.net/projects/mspgcc/>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``toolchain-xtensa``
- `xtensa-gcc <https://github.com/jcmvbkbc/gcc-xtensa>`_, `GDB <http://www.gnu.org/software/gdb/>`_
.. _platform_creating_manifest_file:
Manifest File
-------------
A platform manifest file is a `Python <https://www.python.org>`_ script with the
next requirements:
1. The file should have ``.py`` extension
2. The **name of the file** is the **platform name** (lowercase)
3. The source code of this file should contain a ``class`` which describes your
own platform. The name of the ``class`` should start with your
**platform name** (the first letter should be capitalized) + ``Platform``
ending. This ``class`` should be derived from *PlatformIO* ``BasePlatform``
class.
.. warning::
If you are new to *Python* language, please read:
* `Style Guide for Python Code <https://www.python.org/dev/peps/pep-0008>`_.
* A hash sign (#) that is not inside a string literal begins a comment.
All characters after the # and up to the physical line end are part
of the comment and the *Python* interpreter ignores them.
Example of the **test** platform (``test.py``):
.. code-block:: python
from platformio.platforms.base import BasePlatform
class TestPlatform(BasePlatform):
# This is a description of your platform.
# Platformio uses it for the `platformio search / list` commands
"""
My Test platform - test.py
"""
PACKAGES = {
"toolchain-foo": {
# alias is used for quick access to package.
# For example,
# `> platformio install test --without-package=toolchain`
"alias": "toolchain",
# Flag which allows PlatformIO to install this package by
# default via `> platformio install test` command
"default": True
},
"tool-bar": {
"alias": "uploader",
"default": True
},
"framework-baz": {
"default": True
}
}
def get_build_script(self):
""" Returns a path to build script """
# You can return static path
#return "/path/to/test-builder.py"
# or detect dynamically if `test-builder.py` is located in the same
# folder with `test.py`
return os.path.join(
os.path.dirname(os.path.realpath(__file__)),
"test-builder.py"
)
.. _platform_creating_build_script:
Build Script
------------
Platform's build script is based on a next-generation build tool named
`SCons <http://www.scons.org>`_. PlatformIO has own built-in firmware builder
``env.BuildFirmware`` with the nested libraries search. Please look into a
base template of ``test-builder.py``.
.. code-block:: python
"""
Build script for test.py
test-builder.py
"""
from os.path import join
from SCons.Script import AlwaysBuild, Builder, Default, DefaultEnvironment
env = DefaultEnvironment()
# A full list with the available variables
# http://www.scons.org/doc/production/HTML/scons-user.html#app-variables
env.Replace(
AR="ar",
AS="gcc",
CC="gcc",
CXX="g++",
OBJCOPY="objcopy",
RANLIB="ranlib",
ARFLAGS=["..."],
ASFLAGS=["flag1", "flag2", "flagN"],
CCFLAGS=["flag1", "flag2", "flagN"],
CXXFLAGS=["flag1", "flag2", "flagN"],
LINKFLAGS=["flag1", "flag2", "flagN"],
CPPDEFINES=["DEFINE_1", "DEFINE=2", "DEFINE_N"],
LIBS=["additional", "libs", "here"],
UPLOADER=join("$PIOPACKAGES_DIR", "tool-bar", "uploader"),
UPLOADCMD="$UPLOADER $SOURCES"
)
env.Append(
BUILDERS=dict(
ElfToBin=Builder(
action=" ".join([
"$OBJCOPY",
"-O",
"binary",
"$SOURCES",
"$TARGET"]),
suffix=".bin"
)
)
)
# The source code of "platformio-build-tool" is here
# https://github.com/platformio/platformio/blob/develop/platformio/builder/tools/platformio.py
#
# Target: Build executable and linkable firmware
#
target_elf = env.BuildFirmware()
#
# Target: Build the .bin file
#
target_bin = env.ElfToBin(join("$BUILD_DIR", "firmware"), target_elf)
#
# Target: Upload firmware
#
upload = env.Alias(["upload"], target_bin, "$UPLOADCMD")
AlwaysBuild(upload)
#
# Target: Define targets
#
Default(target_bin)
Please look into the examples with built-in scripts for the popular
platforms:
* `baseavr.py <https://github.com/platformio/platformio/blob/develop/platformio/builder/scripts/baseavr.py>`_
* `basearm.py <https://github.com/platformio/platformio/blob/develop/platformio/builder/scripts/basearm.py>`_
* `atmelavr.py <https://github.com/platformio/platformio/blob/develop/platformio/builder/scripts/atmelavr.py>`_
* `timsp430.py <https://github.com/platformio/platformio/blob/develop/platformio/builder/scripts/timsp430.py>`_
* `ststm32.py <https://github.com/platformio/platformio/blob/develop/platformio/builder/scripts/ststm32.py>`_
.. _platform_creating_installation:
Installation
------------
1. Create ``platforms`` directory in :ref:`projectconf_pio_home_dir` if it
doesn't exists.
2. Copy ``test.py`` and ``test-builder.py`` files to ``platforms`` directory.
3. Search available platforms via :ref:`cmd_platforms_search` command. You should see
``test`` platform.
4. Install ``test`` platform via :ref:`cmd_platforms_install` command.
Now, you can use ``test`` for the :ref:`projectconf_env_platform` option in
:ref:`projectconf`.
Example
-------
Let's use the real example which was requested by our user in `issue 175 <https://github.com/platformio/platformio/issues/175>`_. Need to add support for uploading firmware using GDB to
:ref:`platform_ststm32`.
First of all, need to create new folder ``platforms`` in :ref:`projectconf_pio_home_dir`
and copy there two files:
1. Platform manifest file ``ststm32gdb.py`` with the next content:
.. code-block:: python
import os
from platformio.platforms.ststm32 import Ststm32Platform
class Ststm32gdbPlatform(Ststm32Platform):
"""
ST STM32 using GDB as uploader
http://www.st.com/web/en/catalog/mmc/FM141/SC1169?sc=stm32
"""
def get_build_script(self):
return os.path.join(
os.path.dirname(os.path.realpath(__file__)),
"ststm32gdb-builder.py"
)
2. Build script file ``ststm32gdb-builder.py`` with the next content:
.. code-block:: python
"""
Builder for ST STM32 Series ARM microcontrollers with GDB upload.
"""
from os.path import join
from SCons.Script import (COMMAND_LINE_TARGETS, AlwaysBuild, Default,
DefaultEnvironment, SConscript)
env = DefaultEnvironment()
SConscript(env.subst(join("$PIOBUILDER_DIR", "scripts", "basearm.py")))
env.Replace(
UPLOADER=join(
"$PIOPACKAGES_DIR", "toolchain-gccarmnoneeabi",
"bin", "arm-none-eabi-gdb"
),
UPLOADERFLAGS=[
join("$BUILD_DIR", "firmware.elf"),
"-batch",
"-x", join("$PROJECT_DIR", "upload.gdb")
],
UPLOADCMD="$UPLOADER $UPLOADERFLAGS"
)
env.Append(
CPPDEFINES=[
"${BOARD_OPTIONS['build']['variant'].upper()}"
],
LINKFLAGS=[
"-nostartfiles",
"-nostdlib"
]
)
#
# Target: Build executable and linkable firmware
#
target_elf = env.BuildFirmware()
#
# Target: Build the .bin file
#
if "uploadlazy" in COMMAND_LINE_TARGETS:
target_firm = join("$BUILD_DIR", "firmware.bin")
else:
target_firm = env.ElfToBin(join("$BUILD_DIR", "firmware"), target_elf)
#
# Target: Print binary size
#
target_size = env.Alias("size", target_elf, "$SIZEPRINTCMD")
AlwaysBuild(target_size)
#
# Target: Upload by default .bin file
#
upload = env.Alias(
["upload", "uploadlazy"], target_firm, "$UPLOADCMD")
AlwaysBuild(upload)
#
# Target: Define targets
#
Default([target_firm, target_size])
Now, we should see ``ststm32gdb`` platform using :ref:`cmd_platforms_search` command output
and can install it via :ref:`platformio platforms install ststm32gdb <cmd_platforms_install>` command.

View File

@ -1,79 +0,0 @@
.. _platform_espressif:
Platform ``espressif``
======================
Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.
For more detailed information please visit `vendor site <https://espressif.com/>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
* - ``sdk-esp8266``
- `ESP8266 SDK <http://bbs.espressif.com>`_
* - ``tool-esptool``
- `esptool-ck <https://github.com/igrr/esptool-ck>`_
* - ``framework-arduinoespressif``
- `Arduino Wiring-based Framework (ESP8266 Core) <https://github.com/esp8266/Arduino>`_
* - ``toolchain-xtensa``
- `xtensa-gcc <https://github.com/jcmvbkbc/gcc-xtensa>`_, `GDB <http://www.gnu.org/software/gdb/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Espressif
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``esp01``
- `Espressif ESP8266 board <https://nurdspace.nl/ESP8266>`_
- ESP8266
- 80 MHz
- 512 Kb
- 32 Kb

View File

@ -1,112 +0,0 @@
.. _platform_freescalekinetis:
Platform ``freescalekinetis``
=============================
Freescale Kinetis Microcontrollers is family of multiple hardware- and software-compatible ARM Cortex-M0+, Cortex-M4 and Cortex-M7-based MCU series. Kinetis MCUs offer exceptional low-power performance, scalability and feature integration.
For more detailed information please visit `vendor site <http://www.freescale.com/webapp/sps/site/homepage.jsp?code=KINETIS>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-mbed``
- `mbed Framework <http://mbed.org>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_mbed`
- The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Freescale
~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``IBMEthernetKit``
- `Ethernet IoT Starter Kit <http://developer.mbed.org/platforms/IBMEthernetKit/>`_
- MK64FN1M0VLL12
- 120 MHz
- 1024 Kb
- 256 Kb
* - ``frdm_k20d50m``
- `Freescale Kinetis FRDM-K20D50M <https://developer.mbed.org/platforms/FRDM-K20D50M/>`_
- MK20DX128VLH5
- 48 MHz
- 128 Kb
- 16 Kb
* - ``frdm_k22f``
- `Freescale Kinetis FRDM-K22F <https://developer.mbed.org/platforms/FRDM-K22F/>`_
- MK22FN512VLH12
- 120 MHz
- 512 Kb
- 128 Kb
* - ``frdm_k64f``
- `Freescale Kinetis FRDM-K64F <https://developer.mbed.org/platforms/FRDM-K64F/>`_
- MK64FN1M0VLL12
- 120 MHz
- 1024 Kb
- 256 Kb
* - ``frdm_kl05z``
- `Freescale Kinetis FRDM-KL05Z <https://developer.mbed.org/platforms/FRDM-KL05Z/>`_
- MKL05Z32VFM4
- 48 MHz
- 32 Kb
- 4 Kb
* - ``frdm_kl25z``
- `Freescale Kinetis FRDM-KL25Z <https://developer.mbed.org/platforms/KL25Z/>`_
- MKL25Z128VLK4
- 48 MHz
- 128 Kb
- 16 Kb
* - ``frdm_kl46z``
- `Freescale Kinetis FRDM-KL46Z <https://developer.mbed.org/platforms/FRDM-KL46Z/>`_
- MKL46Z256VLL4
- 48 MHz
- 256 Kb
- 32 Kb

View File

@ -1,27 +0,0 @@
.. _platforms:
Platforms & Embedded Boards
===========================
*PlatformIO* has pre-built different development platforms for popular OS
(*Mac OS X, Linux (+ARM) and Windows*). Each of them include compiler,
debugger, uploader (for embedded) and many other useful tools.
Also it has pre-configured settings for most popular **Embedded Platform
Boards**. You have no need to specify in :ref:`projectconf` type or frequency of
MCU, upload protocol or etc. Please use ``board`` option.
.. toctree::
:maxdepth: 2
atmelavr
atmelsam
espressif
freescalekinetis
nordicnrf51
nxplpc
ststm32
teensy
timsp430
titiva
creating_platform

View File

@ -1,171 +0,0 @@
.. _platform_nordicnrf51:
Platform ``nordicnrf51``
========================
The Nordic nRF51 Series is a family of highly flexible, multi-protocol, system-on-chip (SoC) devices for ultra-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell.
For more detailed information please visit `vendor site <https://www.nordicsemi.com/eng/Products/nRF51-Series-SoC>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-mbed``
- `mbed Framework <http://mbed.org>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_mbed`
- The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
JKSoft
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wallBotBLE``
- `JKSoft Wallbot BLE <https://developer.mbed.org/platforms/JKSoft-Wallbot-BLE/>`_
- NRF51822
- 16 MHz
- 128 Kb
- 16 Kb
Nordic
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``nrf51_dk``
- `Nordic nRF51-DK <https://developer.mbed.org/platforms/Nordic-nRF51-DK/>`_
- NRF51822
- 32 MHz
- 256 Kb
- 32 Kb
* - ``nrf51_dongle``
- `Nordic nRF51-Dongle <https://developer.mbed.org/platforms/Nordic-nRF51-Dongle/>`_
- NRF51822
- 32 MHz
- 256 Kb
- 32 Kb
* - ``nrf51_mkit``
- `Nordic nRF51822-mKIT <http://developer.mbed.org/platforms/Nordic-nRF51822/>`_
- NRF51822
- 16 MHz
- 128 Kb
- 16 Kb
RedBearLab
~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``redBearLab``
- `RedBearLab nRF51822 <https://developer.mbed.org/platforms/RedBearLab-nRF51822/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
* - ``redBearLabBLENano``
- `RedBearLab BLE Nano <https://developer.mbed.org/platforms/RedBearLab-BLE-Nano/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
SeeedStudio
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``seeedTinyBLE``
- `SeeedStudio Seeed Tiny BLE <http://developer.mbed.org/platforms/Seeed-Tiny-BLE/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb
Switch Science
~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``hrm1017``
- `Switch Science mbed HRM1017 <https://developer.mbed.org/platforms/mbed-HRM1017/>`_
- NRF51822
- 16 MHz
- 256 Kb
- 16 Kb

View File

@ -1,258 +0,0 @@
.. _platform_nxplpc:
Platform ``nxplpc``
===================
The NXP LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals.
For more detailed information please visit `vendor site <http://www.nxp.com/products/microcontrollers/>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-mbed``
- `mbed Framework <http://mbed.org>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_mbed`
- The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
CQ Publishing
~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u35_501``
- `CQ Publishing TG-LPC11U35-501 <https://developer.mbed.org/platforms/TG-LPC11U35-501/>`_
- LPC11U35
- 48 MHz
- 64 Kb
- 10 Kb
Embedded Artists
~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u35``
- `Embedded Artists LPC11U35 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC11U35/>`_
- LPC11U35
- 48 MHz
- 64 Kb
- 10 Kb
* - ``lpc4088``
- `Embedded Artists LPC4088 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC4088/>`_
- LPC4088
- 120 MHz
- 512 Kb
- 96 Kb
* - ``lpc4088_dm``
- `Embedded Artists LPC4088 Display Module <https://developer.mbed.org/platforms/EA-LPC4088-Display-Module/>`_
- LPC4088
- 120 MHz
- 512 Kb
- 96 Kb
NGX Technologies
~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``blueboard_lpc11u24``
- `NGX Technologies BlueBoard-LPC11U24 <https://developer.mbed.org/platforms/BlueBoard-LPC11U24/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
NXP
~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc11u24``
- `NXP mbed LPC11U24 <https://developer.mbed.org/platforms/mbed-LPC11U24/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
* - ``lpc1549``
- `NXP LPCXpresso1549 <https://developer.mbed.org/platforms/LPCXpresso1549/>`_
- LPC1549
- 72 MHz
- 256 Kb
- 36 Kb
* - ``lpc1768``
- `NXP mbed LPC1768 <http://developer.mbed.org/platforms/mbed-LPC1768/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb
Outrageous Circuits
~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``mbuino``
- `Outrageous Circuits mBuino <https://developer.mbed.org/platforms/Outrageous-Circuits-mBuino/>`_
- LPC11U24
- 48 MHz
- 32 Kb
- 8 Kb
SeeedStudio
~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``seeeduinoArchPro``
- `SeeedStudio Seeeduino-Arch-Pro <https://developer.mbed.org/platforms/Seeeduino-Arch-Pro/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb
Solder Splash Labs
~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``dipcortexm0``
- `Solder Splash Labs DipCortex M0 <https://developer.mbed.org/platforms/DipCortex-M0/>`_
- LPC11U24
- 50 MHz
- 32 Kb
- 8 Kb
Switch Science
~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpc1114fn28``
- `Switch Science mbed LPC1114FN28 <https://developer.mbed.org/platforms/LPC1114FN28/>`_
- LPC1114FN28
- 48 MHz
- 32 Kb
- 4 Kb
u-blox
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``ubloxc027``
- `u-blox C027 <https://developer.mbed.org/platforms/u-blox-C027/>`_
- LPC1768
- 96 MHz
- 512 Kb
- 32 Kb

View File

@ -1,261 +0,0 @@
.. _platform_ststm32:
Platform ``ststm32``
====================
The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
For more detailed information please visit `vendor site <http://www.st.com/web/en/catalog/mmc/FM141/SC1169?sc=stm32>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``framework-libopencm3``
- `libOpenCM3 Framework <http://www.libopencm3.org/>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``tool-stlink``
- `ST-Link <https://github.com/texane/stlink>`_
* - ``framework-spl``
- `Standard Peripheral Library for STM32 MCUs <http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF257890>`_
* - ``framework-cmsis``
- `Vendor-independent hardware abstraction layer for the Cortex-M processor series <http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php>`_
* - ``framework-mbed``
- `mbed Framework <http://mbed.org>`_
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_cmsis`
- The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor-independent hardware abstraction layer for the Cortex-M processor series and specifies debugger interfaces. The CMSIS enables consistent and simple software interfaces to the processor for interface peripherals, real-time operating systems, and middleware. It simplifies software re-use, reducing the learning curve for new microcontroller developers and cutting the time-to-market for devices.
* - :ref:`framework_libopencm3`
- The libOpenCM3 framework aims to create a free/libre/open-source firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others.
* - :ref:`framework_mbed`
- The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
* - :ref:`framework_spl`
- The ST Standard Peripheral Library provides a set of functions for handling the peripherals on the STM32 Cortex-M3 family. The idea is to save the user (the new user, in particular) having to deal directly with the registers.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Armstrap
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``armstrap_eagle1024``
- `Armstrap Eagle 1024 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F417VGT6
- 168 MHz
- 1024 Kb
- 192 Kb
* - ``armstrap_eagle2048``
- `Armstrap Eagle 2048 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F427VIT6
- 168 MHz
- 2048 Kb
- 256 Kb
* - ``armstrap_eagle512``
- `Armstrap Eagle 512 <http://docs.armstrap.org/en/latest/hardware-overview.html>`_
- STM32F407VET6
- 168 MHz
- 512 Kb
- 192 Kb
ST
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``disco_f051r8``
- `ST STM32F0DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF253215>`_
- STM32F051R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``disco_f100rb``
- `ST STM32VLDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF250863>`_
- STM32F100RBT6
- 24 MHz
- 128 Kb
- 8 Kb
* - ``disco_f303vc``
- `ST STM32F3DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF254044>`_
- STM32F303VCT6
- 72 MHz
- 256 Kb
- 48 Kb
* - ``disco_f334c8``
- `ST 32F3348DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF260318>`_
- STM32F334C8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``disco_f401vc``
- `ST 32F401CDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF259098>`_
- STM32F401VCT6
- 84 MHz
- 256 Kb
- 64 Kb
* - ``disco_f407vg``
- `ST STM32F4DISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF252419>`_
- STM32F407VGT6
- 168 MHz
- 1024 Kb
- 128 Kb
* - ``disco_f429zi``
- `ST 32F429IDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF259090>`_
- STM32F429ZIT6
- 180 MHz
- 2048 Kb
- 256 Kb
* - ``disco_l152rb``
- `ST STM32LDISCOVERY <http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1848/PF258515>`_
- STM32L152RBT6
- 32 MHz
- 128 Kb
- 16 Kb
* - ``nucleo_f030r8``
- `ST Nucleo F030R8 <https://developer.mbed.org/platforms/ST-Nucleo-F030R8/>`_
- STM32F030R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``nucleo_f070rb``
- `ST Nucleo F070RB <https://developer.mbed.org/platforms/ST-Nucleo-F070RB/>`_
- STM32F070RBT6
- 48 MHz
- 128 Kb
- 16 Kb
* - ``nucleo_f072rb``
- `ST Nucleo F072RB <https://developer.mbed.org/platforms/ST-Nucleo-F072RB/>`_
- STM32F072RBT6
- 48 MHz
- 128 Kb
- 16 Kb
* - ``nucleo_f091rc``
- `ST Nucleo F091RC <https://developer.mbed.org/platforms/ST-Nucleo-F091RC/>`_
- STM32F091RCT6
- 48 MHz
- 256 Kb
- 32 Kb
* - ``nucleo_f103rb``
- `ST Nucleo F103RB <https://developer.mbed.org/platforms/ST-Nucleo-F103RB/>`_
- STM32F103RBT6
- 72 MHz
- 128 Kb
- 20 Kb
* - ``nucleo_f302r8``
- `ST Nucleo F302R8 <https://developer.mbed.org/platforms/ST-Nucleo-F302R8/>`_
- STM32F302R8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``nucleo_f303re``
- `ST Nucleo F303RE <http://developer.mbed.org/platforms/ST-Nucleo-F303RE/>`_
- STM32F303RET6
- 72 MHz
- 512 Kb
- 64 Kb
* - ``nucleo_f334r8``
- `ST Nucleo F334R8 <https://developer.mbed.org/platforms/ST-Nucleo-F334R8/>`_
- STM32F334R8T6
- 72 MHz
- 64 Kb
- 16 Kb
* - ``nucleo_f401re``
- `ST Nucleo F401RE <https://developer.mbed.org/platforms/ST-Nucleo-F401RE/>`_
- STM32F401RET6
- 84 MHz
- 512 Kb
- 96 Kb
* - ``nucleo_f411re``
- `ST Nucleo F411RE <https://developer.mbed.org/platforms/ST-Nucleo-F411RE/>`_
- STM32F411RET6
- 100 MHz
- 512 Kb
- 128 Kb
* - ``nucleo_l053r8``
- `ST Nucleo L053R8 <https://developer.mbed.org/platforms/ST-Nucleo-L053R8/>`_
- STM32L053R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``nucleo_l152re``
- `ST Nucleo L152RE <https://developer.mbed.org/platforms/ST-Nucleo-L152RE/>`_
- STM32L152RET6
- 32 MHz
- 512 Kb
- 80 Kb

View File

@ -1,107 +0,0 @@
.. _platform_teensy:
Platform ``teensy``
===================
Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard "Mini-B" USB cable and a PC or Macintosh with a USB port.
For more detailed information please visit `vendor site <https://www.pjrc.com/teensy>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``toolchain-atmelavr``
- `avr-gcc <https://gcc.gnu.org/wiki/avr-gcc>`_, `GDB <http://www.gnu.org/software/gdb/>`_, `AVaRICE <http://avarice.sourceforge.net/>`_, `SimulAVR <http://www.nongnu.org/simulavr/>`_
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
* - ``framework-arduinoteensy``
- `Arduino Wiring-based Framework <http://arduino.cc/en/Reference/HomePage>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``tool-teensy``
- `Teensy Loader <https://www.pjrc.com/teensy/loader.html>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
Teensy
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``teensy20``
- `Teensy 2.0 <https://www.pjrc.com/store/teensy.html>`_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - ``teensy20pp``
- `Teensy++ 2.0 <https://www.pjrc.com/store/teensypp.html>`_
- AT90USB1286
- 16 MHz
- 128 Kb
- 8 Kb
* - ``teensy30``
- `Teensy 3.0 <https://www.pjrc.com/store/teensy3.html>`_
- MK20DX128
- 48 MHz
- 128 Kb
- 16 Kb
* - ``teensy31``
- `Teensy 3.1 <https://www.pjrc.com/store/teensy31.html>`_
- MK20DX256
- 72 MHz
- 256 Kb
- 64 Kb
* - ``teensylc``
- `Teensy LC <http://www.pjrc.com/teensy/teensyLC.html>`_
- MKL26Z64
- 48 MHz
- 64 Kb
- 8 Kb

View File

@ -1,141 +0,0 @@
.. _platform_timsp430:
Platform ``timsp430``
=====================
MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16-bit, RISC-based, mixed-signal processors designed for ultra-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications.
For more detailed information please visit `vendor site <http://www.ti.com/lsds/ti/microcontrollers_16-bit_32-bit/msp/overview.page>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``toolchain-timsp430``
- `msp-gcc <http://sourceforge.net/projects/mspgcc/>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``tool-mspdebug``
- `MSPDebug <http://mspdebug.sourceforge.net/>`_
* - ``framework-energiamsp430``
- `Energia Wiring-based Framework (MSP430 Core) <http://energia.nu/reference/>`_
* - ``framework-arduinomsp430``
- `Arduino Wiring-based Framework (MSP430 Core) <http://arduino.cc/en/Reference/HomePage>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_arduino`
- Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
* - :ref:`framework_energia`
- Energia framework enables pretty much anyone to start easily creating microcontroller-based projects and applications. Its easy-to-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
PanStamp
~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``panStampNRG``
- `PanStamp NRG 1.1 <http://www.panstamp.com/product/197/>`_
- CC430F5137
- 12 MHz
- 32 Kb
- 4 Kb
TI
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lpmsp430f5529``
- `TI LaunchPad w/ msp430f5529 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430f5529lp.html>`_
- MSP430F5529
- 16 MHz
- 128 Kb
- 1 Kb
* - ``lpmsp430f5529_25``
- `TI LaunchPad w/ msp430f5529 (25MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430f5529lp.html>`_
- MSP430F5529
- 25 MHz
- 128 Kb
- 1 Kb
* - ``lpmsp430fr5739``
- `TI FraunchPad w/ msp430fr5739 <http://www.ti.com/tool/msp-exp430fr5739>`_
- MSP430FR5739
- 16 MHz
- 16 Kb
- 1 Kb
* - ``lpmsp430fr5969``
- `TI LaunchPad w/ msp430fr5969 <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430fr5969.html>`_
- MSP430FR5969
- 8 MHz
- 64 Kb
- 1 Kb
* - ``lpmsp430g2231``
- `TI LaunchPad w/ msp430g2231 (1 MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2231
- 1 MHz
- 2 Kb
- 0.125 Kb
* - ``lpmsp430g2452``
- `TI LaunchPad w/ msp430g2452 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2452
- 16 MHz
- 8 Kb
- 0.25 Kb
* - ``lpmsp430g2553``
- `TI LaunchPad w/ msp430g2553 (16MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
- MSP430G2553
- 16 MHz
- 16 Kb
- 0.5 Kb

View File

@ -1,96 +0,0 @@
.. _platform_titiva:
Platform ``titiva``
===================
Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry-leading analog integration, and extensive software solutions.
For more detailed information please visit `vendor site <http://www.ti.com/lsds/ti/microcontrollers_16-bit_32-bit/c2000_performance/control_automation/tm4c12x/overview.page>`_.
.. contents::
Packages
--------
.. list-table::
:header-rows: 1
* - Name
- Contents
* - ``ldscripts``
- `Linker Scripts <https://sourceware.org/binutils/docs/ld/Scripts.html>`_
* - ``framework-libopencm3``
- `libOpenCM3 Framework <http://www.libopencm3.org/>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``tool-lm4flash``
- `Flash Programmer <http://www.ti.com/tool/lmflashprogrammer>`_
* - ``framework-energiativa``
- `Energia Wiring-based Framework (LM4F Core) <http://energia.nu/reference/>`_
.. warning::
**Linux Users:** Don't forget to install "udev" rules file
`99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`_ (an instruction is located in the file).
Frameworks
----------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`framework_energia`
- Energia framework enables pretty much anyone to start easily creating microcontroller-based projects and applications. Its easy-to-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before.
* - :ref:`framework_libopencm3`
- The libOpenCM3 framework aims to create a free/libre/open-source firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others.
Boards
------
.. note::
* You can list pre-configured boards by :ref:`cmd_boards` command or
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
* For more detailed ``board`` information please scroll tables below by
horizontal.
TI
~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lplm4f120h5qr``
- `TI LaunchPad (Stellaris) w/ lm4f120 (80MHz) <http://www.ti.com/tool/ek-lm4f120xl>`_
- LPLM4F120H5QR
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lptm4c1230c3pm``
- `TI LaunchPad (Tiva C) w/ tm4c123 (80MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c123gxl.html>`_
- LPTM4C1230C3PM
- 80 MHz
- 256 Kb
- 32 Kb
* - ``lptm4c1294ncpdt``
- `TI LaunchPad (Tiva C) w/ tm4c129 (120MHz) <http://www.ti.com/ww/en/launchpad/launchpads-connected-ek-tm4c1294xl.html>`_
- LPTM4C1294NCPDT
- 120 MHz
- 1024 Kb
- 256 Kb

View File

@ -1,479 +0,0 @@
.. _projectconf:
Project Configuration File ``platformio.ini``
=============================================
The Project configuration file is named ``platformio.ini``. This is a
`INI-style <http://en.wikipedia.org/wiki/INI_file>`_ file.
``platformio.ini`` has sections (each denoted by a ``[header]``) and
key / value pairs within the sections. A sign ``#`` at the beginning of the
line indicates a comment. Comment lines are ignored.
The sections and their allowable values are described below.
.. contents::
[platformio]
------------
A ``platformio`` section is used for overriding default configuration options
.. note::
Relative path is allowed for directory option:
* ``~`` will be expanded to user's home directory
* ``../`` or ``..\`` go up to one folder
Options
~~~~~~~
.. _projectconf_pio_home_dir:
``home_dir``
^^^^^^^^^^^^
Is used to store platform tool chains, frameworks, external libraries,
service data and etc.
A default value is User's home directory:
* Unix ``~/.platformio``
* Windows ``%HOMEPATH%\.platformio``
This option can be overridden by global environment variable
:ref:`envvar_PLATFORMIO_HOME_DIR`.
.. _projectconf_pio_lib_dir:
``lib_dir``
^^^^^^^^^^^
This directory is used to store external libraries downloaded by
:ref:`librarymanager`.
A default value is ``%home_dir%/lib``.
This option can be overridden by global environment variable
:ref:`envvar_PLATFORMIO_LIB_DIR`.
.. _projectconf_pio_src_dir:
``src_dir``
^^^^^^^^^^^
A path to project's source directory. PlatformIO uses it for :ref:`cmd_run`
command.
A default value is ``%project_dir%/src``.
This option can be overridden by global environment variable
:ref:`envvar_PLATFORMIO_SRC_DIR`.
.. note::
This option is useful for people who migrate from Arduino/Energia IDEs where
source directory should have the same name like the main source file.
See `example <https://github.com/platformio/platformio/tree/develop/examples/atmelavr-and-arduino/arduino-own-src_dir>`__ project with own source directory.
.. _projectconf_pio_envs_dir:
``envs_dir``
^^^^^^^^^^^^
*PlatformIO Builder* within :ref:`cmd_run` command uses this folder for project
environments to store compiled object files, static libraries, firmwares and
other cached information. It allows PlatformIO to build source code extremely
fast!
*You can delete this folder without any risk!* If you modify :ref:`projectconf`,
then PlatformIO will remove this folder automatically. It will be created on the
next build operation.
A default value is ``%project_dir%/.pioenvs``.
This option can be overridden by global environment variable
:ref:`envvar_PLATFORMIO_ENVS_DIR`.
.. note::
If you have any problems with building your Project environmets which
are defined in :ref:`projectconf`, then **TRY TO DELETE** this folder. In
this situation you will remove all cached files without any risk.
[env:NAME]
----------
A section with ``env:`` prefix is used to define virtual environment with
specific options that will be processed with :ref:`cmd_run` command. You can
define unlimited numbers of environments.
Each environment must have unique ``NAME``. The valid chars for ``NAME`` are
* letters ``a-z``
* numbers ``0-9``
* special char ``_`` (underscore)
For example, ``[env:hello_world]``.
Options
~~~~~~~
.. _projectconf_env_platform:
``platform``
^^^^^^^^^^^^
:ref:`Platform <platforms>` type.
.. _projectconf_env_framework:
``framework``
^^^^^^^^^^^^^
:ref:`Framework <frameworks>` type.
The multiple frameworks are allowed, split them with comma ``,`` separator.
.. _projectconf_env_board:
``board``
^^^^^^^^^
*PlatformIO* has pre-configured settings for the most popular boards. You don't
need to specify ``board_mcu``, ``board_f_cpu``, ``upload_protocol`` or
``upload_speed`` options. Just define a ``board`` type and *PlatformIO* will
pre-fill options described above with appropriate values.
You can find the ``board`` type in *Boards* section of each :ref:`platforms`.
``board_mcu``
^^^^^^^^^^^^^
``board_mcu`` is a microcontroller(MCU) type that is used by compiler to
recognize MCU architecture. The correct type of ``board_mcu`` depends on
platform library. For example, the list of ``board_mcu`` for "megaAVR Devices"
is described `here <http://www.nongnu.org/avr-libc/user-manual/>`_.
The full list of ``board_mcu`` for the popular embedded platforms you can find
in *Boards* section of :ref:`platforms`. See "Microcontroller" column.
``board_f_cpu``
^^^^^^^^^^^^^^^
An option ``board_f_cpu`` is used to define MCU frequency (Hertz, Clock). A
format of this option is ``C-like long integer`` value with ``L`` suffix. The
1 Hertz is equal to ``1L``, then 16 Mhz (Mega Hertz) is equal to ``16000000L``.
The full list of ``board_f_cpu`` for the popular embedded platforms you can
find in *Boards* section of :ref:`platforms`. See "Frequency" column.
``upload_port``
^^^^^^^^^^^^^^^
This option is used by "uploader" tool when sending firmware to board via
``upload_port``. For example,
* ``/dev/ttyUSB0`` - Unix-based OS
* ``COM3`` - Windows OS
If ``upload_port`` isn't specified, then *PlatformIO* will try to detect it
automatically.
To print all available serial ports use :ref:`cmd_serialports` command.
``upload_protocol``
^^^^^^^^^^^^^^^^^^^
A protocol that "uploader" tool uses to talk to the board.
``upload_speed``
^^^^^^^^^^^^^^^^
A connection speed (`baud rate <http://en.wikipedia.org/wiki/Baud>`_)
which "uploader" tool uses when sending firmware to board.
``targets``
^^^^^^^^^^^
A list with targets which will be processed by :ref:`cmd_run` command by
default. You can enter more then one target separated with "space".
When no targets are defined, *PlatformIO* will build only sources by default.
.. note::
This option is useful to enable "auto-uploading" after building operation
(``targets = upload``).
.. _projectconf_build_flags:
``build_flags``
^^^^^^^^^^^^^^^
These flags/options control preprocessing, compilation, assembly and linking
processes:
.. list-table::
:header-rows: 1
* - Format
- Scope
- Description
* - ``-Wp,option``
- CPPFLAGS
- Bypass the compiler driver and pass *option* directly through to the
preprocessor
* - ``-D name``
- CPPDEFINES
- Predefine *name* as a macro, with definition 1.
* - ``-D name=definition``
- CPPDEFINES
- The contents of *definition* are tokenized and processed as if they
appeared during translation phase three in a ``#define`` directive.
* - ``-U name``
- CPPDEFINES
- Cancel any previous definition of *name*, either built in or provided
with a ``-D`` option.
* - ``-Wall``
- CCFLAGS
- Turns on all optional warnings which are desirable for normal code.
* - ``-Werror``
- CCFLAGS
- Make all warnings into hard errors. Source code which triggers warnings will be rejected.
* - ``-w``
- CCFLAGS
- Suppress all warnings, including those which GNU CPP issues by default.
* - ``-include file``
- CCFLAGS
- Process *file* as if ``#include "file"`` appeared as the first line of
the primary source file.
* - ``-Wa,option``
- ASFLAGS, CCFLAGS
- Pass *option* as an option to the assembler. If *option* contains
commas, it is split into multiple options at the commas.
* - ``-llibrary``
- LIBS
- Search the *library* named library when linking
* - ``-Ldir``
- LIBPATH
- Add directory *dir* to the list of directories to be searched for
``-l``.
* - ``-Idir``
- CPPPATH
- Add the directory *dir* to the list of directories to be searched
for header files.
Example:
.. code-block:: ini
[env:specific_defines]
build_flags = -O2 -Dfoo -Dbar=1
[env:specific_inclibs]
build_flags = -I/opt/include -L/opt/lib -lfoo
For more detailed information about available flags/options go to:
* `Options to Request or Suppress Warnings
<https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html>`_
* `Options for Debugging Your Program
<https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html>`_
* `Options That Control Optimization
<https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html>`_
* `Options Controlling the Preprocessor
<https://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html>`_
* `Passing Options to the Assembler
<https://gcc.gnu.org/onlinedocs/gcc/Assembler-Options.html>`_
* `Options for Linking <https://gcc.gnu.org/onlinedocs/gcc/Link-Options.html>`_
* `Options for Directory Search
<https://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html>`_
.. _projectconf_srcbuild_flags:
``srcbuild_flags``
^^^^^^^^^^^^^^^^^^
An option ``srcbuild_flags`` has the same behaviour like ``build_flags``
but will be applied only for the project source code from
:ref:`projectconf_pio_src_dir` directory.
This option can be overridden by global environment variable
:ref:`envvar_PLATFORMIO_SRCBUILD_FLAGS`.
``install_libs``
^^^^^^^^^^^^^^^^
Specify dependent libraries which should be installed before environment
process. The only library IDs are allowed. Multiple libraries can be passed
using comma ``,`` sign.
You can obtain library IDs using :ref:`cmd_lib_search` command.
Example:
.. code-block:: ini
[env:depends_on_some_libs]
install_libs = 1,13,19
``use_libs``
^^^^^^^^^^^^
Specify libraries which should be used by ``Library Dependency Finder`` with
the highest priority.
Example:
.. code-block:: ini
[env:libs_with_highest_priority]
use_libs = OneWire_ID1
``ignore_libs``
^^^^^^^^^^^^^^^
Specify libraries which should be ignored by ``Library Dependency Finder``
Example:
.. code-block:: ini
[env:ignore_some_libs]
ignore_libs = SPI,EngduinoV3_ID123
.. _projectconf_examples:
Examples
--------
.. note::
A full list with project examples can be found in
`PlatformIO Repository <https://github.com/platformio/platformio/tree/develop/examples>`_.
1. :ref:`platform_atmelavr`: Arduino UNO board with auto pre-configured
``board_*`` and ``upload_*`` options (use only ``board`` option) and Arduino
Wiring-based Framework
.. code-block:: ini
[env:atmelavr_arduino_uno_board]
platform = atmelavr
framework = arduino
board = uno
# enable auto-uploading
targets = upload
2. :ref:`platform_atmelavr`: Microduino Core (ATmega168P, 3.3V) board with
auto pre-configured ``board_*`` and ``upload_*`` options (use only
``board`` option) and Arduino Wiring-based Framework
.. code-block:: ini
[env:atmelavr_microduino_core_board]
platform = atmelavr
framework = arduino
board = 168pa8m
# enable auto-uploading
targets = upload
3. :ref:`platform_atmelavr`: Raspduino board with
auto pre-configured ``board_*`` and ``upload_*`` options (use only
``board`` option) and Arduino Wiring-based Framework
.. code-block:: ini
[env:atmelavr_raspduino_board]
platform = atmelavr
framework = arduino
board = raspduino
upload_port = /dev/ttyS0
# enable auto-uploading
targets = upload
4. :ref:`platform_atmelavr`: Embedded board that is based on ATmega168 MCU with
"arduino" bootloader
.. code-block:: ini
[env:atmelavr_atmega168_board]
platform = atmelavr
board_mcu = atmega168
board_f_cpu = 16000000L
upload_port = /dev/ttyUSB0
# for Windows OS
# upload_port = COM3
upload_protocol = arduino
upload_speed = 19200
# enable auto-uploading
targets = upload
5. Upload firmware via USB programmer (USBasp) to :ref:`platform_atmelavr`
microcontrollers
.. code-block:: ini
[env:atmelavr_usbasp]
platform = atmelavr
framework = arduino
board = pro8MHzatmega328
upload_protocol = usbasp -B5
6. :ref:`platform_timsp430`: TI MSP430G2553 LaunchPad with auto pre-configured
``board_*`` and ``upload_*`` options (use only ``board`` option) and Energia
Wiring-based Framework
.. code-block:: ini
[env:timsp430_g2553_launchpad]
platform = timsp430
framework = energia
board = lpmsp430g2553
7. :ref:`platform_timsp430`: Embedded board that is based on MSP430G2553 MCU
.. code-block:: ini
[env:timsp430_g2553_board]
platform = timsp430
board_mcu = msp430g2553
board_f_cpu = 16000000L
upload_protocol = rf2500
# enable auto-uploading
targets = upload
8. :ref:`platform_titiva`: TI Tiva C ARM Series TM4C123G LaunchPad with auto
pre-configured ``board_*`` and ``upload_*`` options (use only ``board``
option) and Energia Wiring-based Framework
.. code-block:: ini
[env:titiva_tm4c1230c3pm_launchpad]
platform = titiva
framework = energia
board = lptm4c1230c3pm

View File

@ -1,64 +0,0 @@
.. _quickstart:
Quickstart
==========
.. note::
Please read `Get Started <http://platformio.org/#!/get-started>`_
article from the official WebSite.
1. :ref:`Install PlatformIO <installation>`.
2. Find board ``type`` using `Embedded Boards Explorer <http://platformio.org/#!/boards>`_
or via :ref:`cmd_boards` command.
3. Initialize new PlatformIO based project via :ref:`cmd_init` command with the
pre-configured environments for your boards:
.. code-block:: bash
$ platformio init --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Would you like to enable firmware auto-uploading when project is successfully built using `platformio run` command?
Don't forget that you can upload firmware manually using `platformio run --target upload` command. [y/N]: y
The current working directory *** will be used for the new project.
You can specify another project directory via
`platformio init -d %PATH_TO_THE_PROJECT_DIR%` command.
The next files/directories will be created in ***
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
src - Put your source code here
lib - Put here project specific or 3-rd party libraries
Do you want to continue? [y/N]: y
Project has been successfully initialized!
Useful commands:
`platformio run` - process/build project from the current directory
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
`platformio run --target clean` - clean project (remove compiled files)
Put your source code ``*.h, *.c, *.cpp or *.ino`` files to ``src`` directory.
4. Process the project's environments.
Change working directory to the project's root where is located
:ref:`Project Configuration File (platformio.ini) <projectconf>` and run:
.. code-block:: bash
$ platformio run
# if you don't have specified `targets = upload` option for environment,
# then you can upload firmware manually with this command:
$ platformio run --target upload
# clean project
$ platformio run --target clean
If you don't have installed required platforms, then *PlatformIO* will propose
you to install them automatically.
Further examples can be found in `PlatformIO Repository <https://github.com/platformio/platformio/tree/develop/examples>`_.
Also, for more detailed information as for commands please go to
:ref:`userguide` sections.

View File

@ -1,125 +0,0 @@
.. _cmd_boards:
platformio boards
=================
.. contents::
Usage
-----
.. code-block:: bash
# Print all available pre-configured embedded boards
platformio boards
# Filter boards by "Query"
platformio boards QUERY
Description
-----------
List pre-configured Embedded Boards
Examples
--------
1. Show Arduino-based boards
.. code-block:: bash
$ platformio boards arduino
Platform: atmelavr
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
btatmega168 atmega168 16Mhz 14Kb 1Kb Arduino BT ATmega168
btatmega328 atmega328p 16Mhz 28Kb 2Kb Arduino BT ATmega328
diecimilaatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Duemilanove or Diecimila ATmega168
diecimilaatmega328 atmega328p 16Mhz 30Kb 2Kb Arduino Duemilanove or Diecimila ATmega328
esplora atmega32u4 16Mhz 28Kb 2Kb Arduino Esplora
ethernet atmega328p 16Mhz 31Kb 2Kb Arduino Ethernet
...
2. Show mbed-enabled boards
.. code-block:: bash
$ platformio boards mbed
Platform: freescalekinetis
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
frdm_k20d50m mk20dx128vlh5 48Mhz 128Kb 16Kb Freescale Kinetis FRDM-K20D50M
frdm_k22f mk22fn512vlh12 120Mhz 512Kb 128Kb Freescale Kinetis FRDM-K22F
...
Platform: nordicnrf51
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
wallBotBLE nrf51822 16Mhz 128Kb 16Kb JKSoft Wallbot BLE
nrf51_dk nrf51822 32Mhz 256Kb 32Kb Nordic nRF51-DK
...
Platform: nxplpc
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
blueboard_lpc11u24 lpc11u24 48Mhz 32Kb 8Kb BlueBoard-LPC11U24
dipcortexm0 lpc11u24 50Mhz 32Kb 8Kb DipCortex M0
lpc11u35 lpc11u35 48Mhz 64Kb 10Kb EA LPC11U35 QuickStart Board
...
Platform: ststm32
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
disco_f401vc stm32f401vct6 84Mhz 256Kb 64Kb 32F401CDISCOVERY
nucleo_f030r8 stm32f030r8t6 48Mhz 64Kb 8Kb ST Nucleo F030R8
...
3. Show boards which are based on ``ATmega168`` MCU
.. code-block:: bash
$ platformio boards atmega168
Platform: atmelavr
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
btatmega168 atmega168 16Mhz 14Kb 1Kb Arduino BT ATmega168
diecimilaatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Duemilanove or Diecimila ATmega168
miniatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Mini ATmega168
atmegangatmega168 atmega168 16Mhz 14Kb 1Kb Arduino NG or older ATmega168
nanoatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Nano ATmega168
pro8MHzatmega168 atmega168 8Mhz 14Kb 1Kb Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz)
pro16MHzatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz)
lilypadatmega168 atmega168 8Mhz 14Kb 1Kb LilyPad Arduino ATmega168
168pa16m atmega168p 16Mhz 15Kb 1Kb Microduino Core (Atmega168PA@16M,5V)
168pa8m atmega168p 8Mhz 15Kb 1Kb Microduino Core (Atmega168PA@8M,3.3V)
4. Show boards by :ref:`platform_timsp430`
.. code-block:: bash
$ platformio boards timsp430
Platform: timsp430
---------------------------------------------------------------------------
Type MCU Frequency Flash RAM Name
---------------------------------------------------------------------------
lpmsp430fr5739 msp430fr5739 16Mhz 15Kb 1Kb FraunchPad w/ msp430fr5739
lpmsp430f5529 msp430f5529 16Mhz 128Kb 1Kb LaunchPad w/ msp430f5529 (16MHz)
lpmsp430f5529_25 msp430f5529 25Mhz 128Kb 1Kb LaunchPad w/ msp430f5529 (25MHz)
lpmsp430fr5969 msp430fr5969 8Mhz 64Kb 1Kb LaunchPad w/ msp430fr5969
lpmsp430g2231 msp430g2231 1Mhz 2Kb 128B LaunchPad w/ msp430g2231 (1MHz)
lpmsp430g2452 msp430g2452 16Mhz 8Kb 256B LaunchPad w/ msp430g2452 (16MHz)
lpmsp430g2553 msp430g2553 16Mhz 16Kb 512B LaunchPad w/ msp430g2553 (16MHz)

View File

@ -1,110 +0,0 @@
.. _cmd_ci:
platformio ci
=============
.. contents::
Usage
-----
.. code-block:: bash
platformio ci [OPTIONS] [SRC]
Description
-----------
:ref:`cmd_ci` command is conceived of as "hot key" for building project with
arbitrary source code structure. In a nutshell, using ``SRC`` and
:option:`platformio ci --lib` contents PlatformIO initialises via
:ref:`cmd_init` new project in :option:`platformio ci --build-dir`
with the build environments (using :option:`platformio ci --board` or
:option:`platformio ci --project-conf`) and processes them via :ref:`cmd_run`
command.
For more details as for integration with the popular Continuous Integration
Systems please follow to :ref:`ci` page.
.. note::
:ref:`cmd_ci` command accepts **multiple** ``SRC`` arguments,
:option:`platformio ci --lib` and :option:`platformio ci --exclude` options
which can be a path to directory, file or
`Glob Pattern <http://en.wikipedia.org/wiki/Glob_(programming)>`_.
.. note::
You can omit ``SRC`` argument and set path (multiple paths are allowed
denoting with ``:``) to
``PLATFORMIO_CI_SRC`` `Environment variable <http://en.wikipedia.org/wiki/Environment_variable>`_
Options
-------
.. program:: platformio ci
.. option::
-l, --lib
Source code which will be copied to ``%build_dir%/lib`` directly.
If :option:`platformio ci --lib` is a path to file (not to directory), then
PlatformIO will create temporary directory within ``%build_dir%/lib`` and copy
the rest files into it.
.. option::
--exclude
Exclude directories and/-or files from :option:`platformio ci --build-dir`. The
path must be relative to PlatformIO project within
:option:`platformio ci --build-dir`.
For example, exclude from project ``src`` directory:
* ``examples`` folder
* ``*.h`` files from ``foo`` folder
.. code-block:: bash
platformio ci --exclude=src/examples --exclude=src/foo/*.h [SRC]
.. option::
-b, --board
Build project with automatically pre-generated environments based on board
settings.
For more details please look into :option:`platformio init --board`.
.. option::
--build-dir
Path to directory where PlatformIO will initialise new project. By default it's
temporary directory within your operation system.
.. note::
This directory will be removed at the end of build process. If you want to
keep it, please use :option:`platformio ci --keep-build-dir`.
.. option::
--keep-build-dir
Don't remove :option:`platformio ci --build-dir` after build process.
.. option::
--project-conf
Buid project using pre-configured :ref:`projectconf`.
.. option::
-v, --verbose
Shows details about the results of processing environments. More details
:option:`platformio run --verbose`
Examples
--------
For the examples please follow to :ref:`ci` page.

View File

@ -1,142 +0,0 @@
.. _cmd_init:
platformio init
===============
.. contents::
Usage
-----
.. code-block:: bash
platformio init [OPTIONS]
Description
-----------
Initialize new PlatformIO based project.
This command will create:
* :ref:`projectconf`
* ``src`` - a source directory. Put your source code here
* ``lib`` - a directory for the project specific libraries. PlatformIO will
compile them to static libraries and link to executable file
Options
-------
.. program:: platformio init
.. option::
-d, --project-dir
A path to the directory where *PlatformIO* will initialise new project.
.. option::
-b, --board
If you specify board ``type`` (you can pass multiple ``--board`` options), then
*PlatformIO* will automatically generate environment for :ref:`projectconf` and
pre-fill these data:
* :ref:`projectconf_env_platform`
* :ref:`projectconf_env_framework`
* :ref:`projectconf_env_board`
The full list with pre-configured boards is available here :ref:`platforms`.
.. option::
--ide
Initialise PlatformIO project for the specified IDE which can be imported later
via "Import Project" functionality.
A list with supported IDE is available within ``platformio init --help`` command.
Also, please look into :ref:`ide` page.
.. option::
--disable-auto-uploading
If you initialise project with the specified
:option:`platformio init --board`, then *PlatformIO*
will create environment with enabled firmware auto-uploading. This option
allows you to disable firmware auto-uploading by default.
.. option::
--env-prefix
An environment prefix which will be used with pair in board type.
For example, the default environment name for ``teensy_31`` board will
be ``[env:teensy_31]``.
Examples
--------
1. Create new project in the current working directory
.. code-block:: bash
$ platformio init
The current working directory *** will be used for the new project.
You can specify another project directory via
`platformio init -d %PATH_TO_THE_PROJECT_DIR%` command.
The next files/directories will be created in ***
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
src - Put your source code here
lib - Put here project specific or 3-rd party libraries
Do you want to continue? [y/N]: y
Project has been successfully initialized!
Useful commands:
`platformio run` - process/build project from the current directory
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
`platformio run --target clean` - clean project (remove compiled files)
2. Create new project in the specified directory
.. code-block:: bash
$ platformio init -d %PATH_TO_DIR%
The next files/directories will be created in ***
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
src - Put your source code here
lib - Put here project specific or 3-rd party libraries
Do you want to continue? [y/N]: y
Project has been successfully initialized!
Useful commands:
`platformio run` - process/build project from the current directory
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
`platformio run --target clean` - clean project (remove compiled files)
3. Initialise project for Arduino Uno
.. code-block:: bash
$ platformio init --board uno
Would you like to enable firmware auto-uploading when project is successfully built using `platformio run` command?
Don't forget that you can upload firmware manually using `platformio run --target upload` command. [y/N]: y
The current working directory *** will be used for the new project.
You can specify another project directory via
`platformio init -d %PATH_TO_THE_PROJECT_DIR%` command.
The next files/directories will be created in ***
platformio.ini - Project Configuration File. |-> PLEASE EDIT ME <-|
src - Put your source code here
lib - Put here project specific or 3-rd party libraries
Do you want to continue? [y/N]: y
Project has been successfully initialized!
Useful commands:
`platformio run` - process/build project from the current directory
`platformio run --target upload` or `platformio run -t upload` - upload firmware to embedded board
`platformio run --target clean` - clean project (remove compiled files)

View File

@ -1,153 +0,0 @@
.. _cmd_run:
platformio run
==============
.. contents::
Usage
-----
.. code-block:: bash
platformio run [OPTIONS]
Description
-----------
Process environments which are defined in :ref:`projectconf` file
Options
-------
.. program:: platformio run
.. option::
-e, --environment
Process specified environments
.. option::
-t, --target
Process specified targets
.. option::
--upload-port
Upload port of embedded board. To print all available ports use
:ref:`cmd_serialports` command
.. option::
--build-dir
Specify the path to project directory. By default, ``--build-dir`` is equal to
current working directory (``CWD``).
.. option::
-v, --verbose
Shows details about the results of processing environments. Each instance of
``--verbose`` on the command line increases the verbosity level by one, so if
you need more details on the output, specify it twice.
There 3 levels of verbosity:
1. ``-v`` - output errors only
2. ``-vv`` - output errors and warnings
3. ``-vvv`` - output errors, warnings and additional information
By default, verbosity level is set to 3 (maximum information).
Examples
--------
1. Process `Wiring Blink Example <https://github.com/platformio/platformio/tree/develop/examples/wiring-blink>`_
.. code-block:: bash
$ platformio run
Processing arduino_pro5v environment:
scons: `.pioenvs/arduino_pro5v/firmware.elf' is up to date.
scons: `.pioenvs/arduino_pro5v/firmware.hex' is up to date.
Processing launchpad_msp430g2 environment:
scons: `.pioenvs/launchpad_msp430g2/firmware.elf' is up to date.
scons: `.pioenvs/launchpad_msp430g2/firmware.hex' is up to date.
Processing launchpad_lm4f120 environment:
scons: `.pioenvs/launchpad_lm4f120/firmware.elf' is up to date.
scons: `.pioenvs/launchpad_lm4f120/firmware.hex' is up to date
2. Process specific environment
.. code-block:: bash
$ platformio run -e arduino_pro5v -e launchpad_lm4f120
Processing arduino_pro5v environment:
scons: `.pioenvs/arduino_pro5v/firmware.elf' is up to date.
scons: `.pioenvs/arduino_pro5v/firmware.hex' is up to date.
Processing launchpad_lm4f120 environment:
scons: `.pioenvs/launchpad_lm4f120/firmware.elf' is up to date.
scons: `.pioenvs/launchpad_lm4f120/firmware.hex' is up to date.
3. Process specific target
.. code-block:: bash
$ platformio run -t clean
Processing arduino_pro5v environment:
Removed .pioenvs/arduino_pro5v/src/main.o
...
Removed .pioenvs/arduino_pro5v/firmware.hex
Processing launchpad_msp430g2 environment:
Removed .pioenvs/launchpad_msp430g2/src/main.o
...
Removed .pioenvs/launchpad_msp430g2/firmware.hex
Processing launchpad_lm4f120 environment:
Removed .pioenvs/launchpad_lm4f120/src/main.o
...
Removed .pioenvs/launchpad_lm4f120/firmware.hex
4. Mix environments and targets
.. code-block:: bash
$ platformio run -e launchpad_msp430g2 -t upload
Processing launchpad_msp430g2 environment:
/Users/ikravets/.platformio/timsp430/tools/mspdebug/mspdebug rf2500 --force-reset "prog .pioenvs/launchpad_msp430g2/firmware.hex"
MSPDebug version 0.20 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2012 Daniel Beer <dlbeer@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Trying to open interface 1 on 009
Initializing FET...
FET protocol version is 30394216
Configured for Spy-Bi-Wire
Sending reset...
Set Vcc: 3000 mV
Device ID: 0x2553
Code start address: 0xc000
Code size : 16384 byte = 16 kb
RAM start address: 0x200
RAM end address: 0x3ff
RAM size : 512 byte = 0 kb
Device: MSP430G2553/G2403
Code memory starts at 0xc000
Number of breakpoints: 2
Chip ID data: 25 53
Erasing...
Programming...
Writing 646 bytes at c000...
Writing 32 bytes at ffe0...
Done, 678 bytes total

View File

@ -1,257 +0,0 @@
.. _cmd_serialports:
platformio serialports
======================
.. contents::
platformio serialports list
---------------------------
Usage
~~~~~
.. code-block:: bash
platformio serialports list [OPTIONS]
Description
~~~~~~~~~~~
List available `Serial Ports <http://en.wikipedia.org/wiki/Serial_port>`_
Options
~~~~~~~
.. program:: platformio serialports list
.. option::
--json-output
Return the output in `JSON <http://en.wikipedia.org/wiki/JSON>`_ format
Examples
~~~~~~~~
1. Unix OS
.. code-block:: bash
$ platformio serialports list
/dev/cu.SLAB_USBtoUART
----------
Hardware ID: USB VID:PID=10c4:ea60 SNR=0001
Description: CP2102 USB to UART Bridge Controller
/dev/cu.uart-1CFF4676258F4543
----------
Hardware ID: USB VID:PID=451:f432 SNR=1CFF4676258F4543
Description: Texas Instruments MSP-FET430UIF
2. Windows OS
.. code-block:: bash
$ platformio serialports list
COM4
----------
Hardware ID: USB VID:PID=0451:F432
Description: MSP430 Application UART (COM4)
COM3
----------
Hardware ID: USB VID:PID=10C4:EA60 SNR=0001
Description: Silicon Labs CP210x USB to UART Bridge (COM3)
.. _cmd_serialports_monitor:
platformio serialports monitor
------------------------------
Usage
~~~~~
.. code-block:: bash
platformio serialports monitor [OPTIONS]
Description
~~~~~~~~~~~
This is a console application that provides a small terminal
application. It is based on `Miniterm <http://pyserial.sourceforge.net/examples.html#miniterm>`_
and itself does not implement any terminal features such
as *VT102* compatibility. However it inherits these features from the terminal
it is run. For example on GNU/Linux running from an *xterm* it will support the
escape sequences of the *xterm*. On *Windows* the typical console window is dumb
and does not support any escapes. When *ANSI.sys* is loaded it supports some
escapes.
To control *monitor* please use these "hot keys":
* ``Ctrl+]`` Quit
* ``Ctrl+T`` Menu
* ``Ctrl+T followed by Ctrl+H`` Help
Options
~~~~~~~
.. program:: platformio serialports monitor
.. option::
-p, --port
Port, a number or a device name
.. option::
-b, --baud
Set baud rate, default ``9600``
.. option::
--parity
Set parity (*None, Even, Odd, Space, Mark*), one of
[``N``, ``E``, ``O``, ``S``, ``M``], default ``N``
.. option::
--rtscts
Enable ``RTS/CTS`` flow control, default ``Off``
.. option::
--xonxoff
Enable software flow control, default ``Off``
.. option::
--rts
Set initial ``RTS`` line state, default ``0``
.. option::
--dtr
Set initial ``DTR`` line state, default ``0``
.. option::
--echo
Enable local echo, default ``Off``
.. option::
--cr
Do not send ``CR+LF``, send ``R`` only, default ``Off``
.. option::
--lf
Do not send ``CR+LF``, send ``LF`` only, default ``Off``
.. option::
-d, --debug
Debug received data (escape non-printable chars). ``--debug`` can be given
multiple times:
0. just print what is received
1. escape non-printable characters, do newlines as unusual
2. escape non-printable characters, newlines too
3. hex dump everything
.. option::
--exit-char
ASCII code of special character that is used to exit the application,
default ``0x1d``
.. option::
--menu-char
ASCII code of special character that is used to control miniterm (menu),
default ``0x14``
.. option::
---quiet
Diagnostics: suppress non-error messages, default ``Off``
Examples
~~~~~~~~
1. Show available options for *monitor*
.. code-block:: bash
$ platformio serialports monitor --help
Usage: platformio serialports monitor [OPTIONS]
Options:
-p, --port TEXT Port, a number or a device name
-b, --baud INTEGER Set baud rate, default=9600
--parity [N|E|O|S|M] Set parity, default=N
--rtscts Enable RTS/CTS flow control, default=Off
--xonxoff Enable software flow control, default=Off
--rts [0|1] Set initial RTS line state, default=0
--dtr [0|1] Set initial DTR line state, default=0
--echo Enable local echo, default=Off
--cr Do not send CR+LF, send CR only, default=Off
--lf Do not send CR+LF, send LF only, default=Off
-d, --debug Debug received data (escape non-printable chars)
--debug can be given multiple times:
0: just print what is received
1: escape non-printable characters, do newlines as
unusual
2: escape non-printable characters, newlines too
3: hex dump everything
--exit-char INTEGER ASCII code of special character that is used to exit
the application, default=0x1d
--menu-char INTEGER ASCII code of special character that is used to
control miniterm (menu), default=0x14
--quiet Diagnostics: suppress non-error messages, default=Off
--help Show this message and exit.
2. Communicate with serial device and print help inside terminal
.. code-block:: bash
$ platformio serialports monitor
--- Available ports:
--- /dev/cu.Bluetooth-Incoming-Port n/a
--- /dev/cu.Bluetooth-Modem n/a
--- /dev/cu.SLAB_USBtoUART CP2102 USB to UART Bridge Controller
--- /dev/cu.obd2ecu-SPPDev n/a
Enter port name:/dev/cu.SLAB_USBtoUART
--- Miniterm on /dev/cu.SLAB_USBtoUART: 9600,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
Hello PlatformIO!
--- pySerial (2.7) - miniterm - help
---
--- Ctrl+] Exit program
--- Ctrl+T Menu escape key, followed by:
--- Menu keys:
--- Ctrl+T Send the menu character itself to remote
--- Ctrl+] Send the exit character itself to remote
--- Ctrl+I Show info
--- Ctrl+U Upload file (prompt will be shown)
--- Toggles:
--- Ctrl+R RTS Ctrl+E local echo
--- Ctrl+D DTR Ctrl+B BREAK
--- Ctrl+L line feed Ctrl+A Cycle repr mode
---
--- Port settings (Ctrl+T followed by the following):
--- p change port
--- 7 8 set data bits
--- n e o s m change parity (None, Even, Odd, Space, Mark)
--- 1 2 3 set stop bits (1, 2, 1.5)
--- b change baud rate
--- x X disable/enable software flow control
--- r R disable/enable hardware flow control
--- exit ---

View File

@ -1,203 +0,0 @@
.. _cmd_settings:
platformio settings
===================
Manage PlatformIO settings
.. contents::
platformio settings get
-----------------------
Usage
~~~~~
.. code-block:: bash
platformio settings get [NAME]
Description
~~~~~~~~~~~
Get/List existing settings
Settings
~~~~~~~~
.. _setting_auto_update_libraries:
``auto_update_libraries``
^^^^^^^^^^^^^^^^^^^^^^^^^
:Default: Yes
:Values: Yes/No
Automatically update libraries.
.. _setting_auto_update_platforms:
``auto_update_platforms``
^^^^^^^^^^^^^^^^^^^^^^^^^
:Default: Yes
:Values: Yes/No
Automatically update platforms.
.. _setting_check_libraries_interval:
``check_libraries_interval``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:Default: 7
:Values: Days (Number)
Check for the library updates interval.
.. _setting_check_platformio_interval:
``check_platformio_interval``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:Default: 3
:Values: Days (Number)
Check for the new PlatformIO interval.
.. _setting_check_platforms_interval:
``check_platforms_interval``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:Default: 7
:Values: Days (Number)
Check for the platform updates interval.
.. _setting_enable_prompts:
``enable_prompts``
^^^^^^^^^^^^^^^^^^
:Default: Yes
:Values: Yes/No
Can PlatformIO communicate with you via prompts?
* propose to install platforms which aren't installed yet
* paginate over library search results
* and etc.
.. warning::
If you are going to run *PlatformIO* from **subprocess**, you **MUST
DISABLE** all prompts. It will allow you to avoid blocking.
.. _setting_enable_telemetry:
``enable_telemetry``
^^^^^^^^^^^^^^^^^^^^
:Default: Yes
:Values: Yes/No
Shares commands, platforms and libraries usage to help us make PlatformIO
better.
.. note::
* The ``Yes`` value is equl to: ``True``, ``Y``, ``1``.
The value is not case sensetive.
* You can override these settings using :ref:`envvars`.
Examples
~~~~~~~~
1. List all settings and theirs current values
.. code-block:: bash
$ platformio settings get
Name Value [Default] Description
------------------------------------------------------------------------------------------
auto_update_libraries Yes Automatically update libraries (Yes/No)
auto_update_platforms Yes Automatically update platforms (Yes/No)
check_libraries_interval 7 Check for the library updates interval (days)
check_platformio_interval 3 Check for the new PlatformIO interval (days)
check_platforms_interval 7 Check for the platform updates interval (days)
enable_prompts Yes Can PlatformIO communicate with you via prompts: propose to install platforms which aren't installed yet, paginate over library search results and etc.)? ATTENTION!!! If you call PlatformIO like subprocess, please disable prompts to avoid blocking (Yes/No)
enable_telemetry Yes Shares commands, platforms and libraries usage to help us make PlatformIO better (Yes/No)
2. Show specified setting
.. code-block:: bash
$ platformio settings get auto_update_platforms
Name Value [Default] Description
------------------------------------------------------------------------------------------
auto_update_platforms Yes Automatically update platforms (Yes/No)
platformio settings set
-----------------------
Usage
~~~~~
.. code-block:: bash
platformio settings set NAME VALUE
Description
~~~~~~~~~~~
Set new value for the setting
Examples
~~~~~~~~
Change to check for the new PlatformIO each day
.. code-block:: bash
$ platformio settings set check_platformio_interval 1
The new value for the setting has been set!
Name Value [Default] Description
------------------------------------------------------------------------------------------
check_platformio_interval 1 [3] Check for the new PlatformIO interval (days)
platformio settings reset
-------------------------
Usage
~~~~~
.. code-block:: bash
platformio settings reset
Description
~~~~~~~~~~~
Reset settings to default
Examples
~~~~~~~~
.. code-block:: bash
$ platformio settings reset
The settings have been reseted!
Name Value [Default] Description
------------------------------------------------------------------------------------------
auto_update_libraries Yes Automatically update libraries (Yes/No)
auto_update_platforms Yes Automatically update platforms (Yes/No)
check_libraries_interval 7 Check for the library updates interval (days)
check_platformio_interval 3 Check for the new PlatformIO interval (days)
check_platforms_interval 7 Check for the platform updates interval (days)

View File

@ -1,100 +0,0 @@
.. _cmd_update:
platformio update
=================
.. contents::
Usage
-----
.. code-block:: bash
platformio update
Description
-----------
Check or update installed :ref:`Platforms <platforms>` and
:ref:`Libraries <librarymanager>`
Examples
--------
.. code-block:: bash
$ platformio update
Platform atmelavr
--------
Updating toolchain-atmelavr package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-avrdude package:
Versions: Current=2, Latest=2 [Up-to-date]
Updating framework-arduinoavr package:
Versions: Current=12, Latest=12 [Up-to-date]
Updating tool-micronucleus package:
Versions: Current=1, Latest=1 [Up-to-date]
Platform atmelsam
--------
Updating framework-arduinosam package:
Versions: Current=3, Latest=3 [Up-to-date]
Updating ldscripts package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating toolchain-gccarmnoneeabi package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-bossac package:
Versions: Current=1, Latest=1 [Up-to-date]
Platform stm32
--------
Updating toolchain-gccarmnoneeabi package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-stlink package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-spl package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-cmsis package:
Versions: Current=2, Latest=2 [Up-to-date]
Updating framework-opencm3 package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating ldscripts package:
Versions: Current=1, Latest=1 [Up-to-date]
Platform teensy
--------
Updating toolchain-atmelavr package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating ldscripts package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-arduinoteensy package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating toolchain-gccarmnoneeabi package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-teensy package:
Versions: Current=1, Latest=1 [Up-to-date]
Platform timsp430
--------
Updating toolchain-timsp430 package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-mspdebug package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-energiamsp430 package:
Versions: Current=2, Latest=2 [Up-to-date]
Platform titiva
--------
Updating ldscripts package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating toolchain-gccarmnoneeabi package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating tool-lm4flash package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-opencm3 package:
Versions: Current=1, Latest=1 [Up-to-date]
Updating framework-energiativa package:
Versions: Current=4, Latest=4 [Up-to-date]

View File

@ -1,32 +0,0 @@
.. _cmd_upgrade:
platformio upgrade
==================
.. contents::
Usage
-----
.. code-block:: bash
platformio upgrade
Description
-----------
Check or upgrade PlatformIO to the latest version
Examples
--------
.. code-block:: bash
$ platformio upgrade
You're up-to-date!
PlatformIO x.x.x is currently the newest version available.
# If you have problem with permissions try:
$ sudo platformio upgrade

View File

@ -1,57 +0,0 @@
.. _userguide:
User Guide
==========
.. contents::
Usage
-----
.. code-block:: bash
platformio [OPTIONS] COMMAND
Options
-------
.. program:: platformio
.. option::
--force, - f
Force to accept any confirmation prompts. This option allows to avoid an issue
with :ref:`faq_troubleshooting_pioblocksprompt`
.. option::
--version
Show the version of PlatformIO
.. option::
--help
Show help for the available options and commands
.. code-block:: bash
$ platformio --help
$ platformio COMMAND --help
Commands
--------
.. toctree::
:maxdepth: 2
cmd_boards
cmd_ci
cmd_init
platformio lib <lib/index>
platformio platforms <platforms/index>
cmd_run
cmd_serialports
cmd_settings
cmd_update
cmd_upgrade

Some files were not shown because too many files have changed in this diff Show More