Compare commits

...

2817 Commits

Author SHA1 Message Date
54f14c64b5 Merge branch 'release/v4.0.2' 2019-08-23 16:24:28 +03:00
20a9522542 Bump version to 4.0.2 2019-08-23 16:17:11 +03:00
f8d957a705 Sync docs 2019-08-23 16:10:47 +03:00
2eecbf966c Fixed an issue with a broken LDF when checking for framework compatibility // Resolve #2940 2019-08-23 15:45:45 +03:00
cef778731e Merge branch 'release/v4.0.1' 2019-08-22 14:25:40 +03:00
adde5e6a7e Merge tag 'v4.0.1' into develop
Bump version to 4.0.1
2019-08-22 14:25:40 +03:00
37863df67e Bump version to 4.0.1 2019-08-22 14:25:27 +03:00
0e56a155f8 Fixed an issue when printing settings and file path contains non-ASCII chars // Resolve #2934 2019-08-22 14:21:54 +03:00
c6de3ebea0 Refactor "humanize_duration_time" to "00:00:00.000" format 2019-08-20 16:49:18 +03:00
a25c1155c2 Docs: Add support for Teensy 4.0 2019-08-19 18:16:53 +03:00
42ee6fe96e Fixed an issue when library.json had priority over project configuration for LDF // Resolve #2867 2019-08-19 15:54:07 +03:00
a33fd6de27 Bump version to 4.0.1rc2 2019-08-19 14:44:04 +03:00
a2830dd527 Automatically normalize file system paths to UNIX-style for Project Generator // Resolve #2857 2019-08-19 14:43:39 +03:00
f46e1b7a3a Fix broken reference to VSCode Settings docs 2019-08-19 12:57:40 +03:00
bf59dda01b Better handling of fs.rmtree errors on Windows // Issue #2916 2019-08-19 12:48:57 +03:00
1dc15326c9 Export ProjectConfig instance to templates generator // Issue #2824 2019-08-18 11:06:52 +03:00
1a3720cfb9 Ability to set "databaseFilename" for VSCode and C/C++ extension // Resolve #2825 2019-08-18 00:40:59 +03:00
5ea3f2bbc6 Use board ID when InternetIsOffline for getting resent projects // Resolve #2866 2019-08-17 23:58:05 +03:00
08103cfc59 Improve settings printing 2019-08-17 23:57:12 +03:00
78e88b6115 Update changelog 2019-08-17 22:31:41 +03:00
26bb74afd5 Bump version to 4.0.1rc1 2019-08-17 22:03:52 +03:00
0587f5b964 Add __attribute__((unused)) to generated test code (#2906)
Without this, the compiler will generate unused parameter warnings in
the native version:

test/output_export.cpp: In function ‘void output_start(unsigned int)’:
test/output_export.cpp:6:32: error: unused parameter ‘baudrate’ [-Werror=unused-parameter]
 void output_start(unsigned int baudrate)
                                ^~~~~~~~
cc1plus: all warnings being treated as errors
2019-08-17 21:07:37 +03:00
e0ec4ff435 Encode PIO Core version before hashing // Resolve #2916 2019-08-17 21:06:15 +03:00
0677bcecb9 Improve printing of tabulated results 2019-08-17 20:55:16 +03:00
9023358d9e YAPF=0.28.0 2019-08-17 17:54:31 +03:00
3edf7e6ca8 Fixed an issue with PIO Home's "No JSON object could be decoded" // Resolve #2823 2019-08-15 21:44:07 +03:00
59114bbd86 Fixes for creating dev/platform 2019-08-15 17:13:45 +03:00
fac45d37f8 Article by Tech Explorations 2019-08-13 20:48:19 +03:00
d0c73af459 Fix docs when only Python 2 was mentioned for PIO Core 2019-08-13 20:44:52 +03:00
fcd1862f40 Add FT231XS ids for Sparkfun ESP32 Thing (#2886)
Signed-off-by: Yusuf Soyipek's ysoyipek@iora.com.tr
2019-08-12 23:22:55 +03:00
a6d42bedc1 Minor fix 2019-08-12 23:00:25 +03:00
04ebdf428b Move "match_src_files" to FS module 2019-08-12 20:32:26 +03:00
6a90388649 Move FS related helpers to fs.py module 2019-08-12 19:44:37 +03:00
1b2e410f12 New article by Jean-Claude Wippler about PlatformIO CLI 2019-07-24 13:08:51 +03:00
f7647438ef Docs: Fix case sensitive files 2019-07-24 12:15:08 +03:00
436a6bc521 Updated contributing guidelines // Resolve #2820 2019-07-24 12:08:21 +03:00
8ea3909a64 Updated contributing guidelines // Resolve #2820 2019-07-24 12:03:28 +03:00
ba0ab796c6 Updated contributing guidelines // Resolve #2820 2019-07-23 19:11:22 +03:00
0e61020652 Docs: Sync Atmel AVR boards 2019-07-22 20:03:54 +03:00
c51c35018d Fix test 2019-07-22 00:57:01 +03:00
5505c6c0e3 Switch Energia's projects to Arduino framework 2019-07-21 22:31:39 +03:00
d6a8360b29 Fix platformio ide search query for VSCode 2019-07-19 14:57:00 +03:00
0687ceb8a4 Bump version to 4.0.1b3 2019-07-19 13:00:52 +03:00
6d7854d113 Session based IDE integration with PIO Home 2019-07-19 12:59:50 +03:00
aebe891895 Skip modified homeState 2019-07-18 14:17:30 +03:00
e69d5e5873 Sync docs and examples 2019-07-18 13:16:23 +03:00
6ea49910d5 Fixed an issue when "debug", "home", "run", and "test" commands were not shown in "platformio --help" CLI 2019-07-18 00:19:30 +03:00
b17e318373 Add Gitlab CI to known list 2019-07-17 14:03:48 +03:00
b0aa4c6682 Renamed "enable_ssl" setting to "strict_ssl" 2019-07-17 00:53:40 +03:00
4d6c452d79 add telemetry / privacy policy reference (#2798) 2019-07-17 00:20:14 +03:00
d06d5def72 Docs: Use renamed "default_envs" option 2019-07-16 16:55:23 +03:00
aa3c943651 Fix typo in docs 2019-07-16 16:50:44 +03:00
1369b10e76 Bump version to 4.0.1b2 2019-07-16 15:48:06 +03:00
8059e04499 Improved computing of project check sum (structure, configuration) and avoid unnecessary rebuilding 2019-07-16 15:47:33 +03:00
71c4201487 Do not save unnecessary data for PIO Home 2019-07-16 14:15:48 +03:00
425c1fb0a8 Do not shutdown PIO Home Server for "upgrade" operations // Resolve #2784 2019-07-15 18:19:40 +03:00
bbf829fe92 Bump version to 4.0.1b1 2019-07-15 14:56:18 +03:00
6f2779fe5d Remove unnecessary code 2019-07-15 14:46:23 +03:00
b51f2ae722 Fixed an issue with incorrect escaping of Windows slashes for PIO Unified Debugger 2019-07-15 14:20:14 +03:00
d5dd4d4b3a Add global "env" group to extra_configs example 2019-07-13 13:51:04 +03:00
eaecad3d49 Add docs for Kendryte FreeRTOS SDK 2019-07-12 15:21:04 +03:00
a8a0cbbbf3 Remove PIO Plus link 2019-07-12 14:16:27 +03:00
94e21bf8a1 Update badges 2019-07-12 14:12:38 +03:00
02c3d870ff Sync Kendryte dev/platform 2019-07-12 13:57:12 +03:00
91f0217d39 Make scripts compatible with Python 3 // Resolve #2779 2019-07-12 13:38:37 +03:00
5e73348263 Print debug tool name in debugging session 2019-07-11 14:09:15 +03:00
2f871db3ae Add docs about configuring MCUdude's cores 2019-07-11 12:12:54 +03:00
28972b838b Add "publish" target 2019-07-10 16:52:04 +03:00
0473405b92 Merge tag 'v4.0.0' into develop
Bump version to 4.0.0
2019-07-10 16:22:53 +03:00
0d00d0534a Merge branch 'release/v4.0.0' 2019-07-10 16:22:52 +03:00
fe210aadcf Bump version to 4.0.0 2019-07-10 16:22:37 +03:00
6fcc76e199 Docs for VSCode: Proxy Server Support 2019-07-10 16:07:13 +03:00
e927669632 Document how to override board configuration 2019-07-10 13:49:59 +03:00
24d2b94e79 Drop Python 2.7 limitation from a docs // Resolve #1991 2019-07-10 13:17:42 +03:00
f81b1089c1 Control a number of parallel build jobs with a new -j, --jobs option 2019-07-10 13:00:51 +03:00
fee748d384 Bump version to 4.0.0rc6 2019-07-10 00:20:43 +03:00
d003dffc5a Fixed an issue with broken internal call for PIO Account // Resolve #2748 2019-07-10 00:20:23 +03:00
a300168658 Bump version to 4.0.0rc5 2019-07-09 00:14:46 +03:00
0a638b7ea5 Fix issues with Unicode arguments when calling inline PIO Core 2019-07-09 00:14:11 +03:00
ffcf6b873a Use native Windows API for getting My Documents folder path 2019-07-08 17:21:28 +03:00
c69e80249d Append system PATH to overridden in CDT project // Resolve #810 2019-07-04 22:56:54 +03:00
2a4b25705c More pre-configured target for Eclipse IDE 2019-07-04 22:53:36 +03:00
412a1f78cd Fixed an issue when generating invalid "Eclipse CDT Cross GCC Built-in Compiler Settings" if a custom PLATFORMIO_CORE_DIR is used // Resolve #806 2019-07-04 20:07:44 +03:00
73dacd9418 Add "make profile" hotkey 2019-07-04 19:02:13 +03:00
caf5159002 Fixed an issue when Ctrl+C(SIGINT) terminates debugging session instead of halting // Resolve #2733 2019-07-04 17:47:26 +03:00
d9b6842b6a Update history with refactored PIO Home back-end 2019-07-04 16:49:29 +03:00
affa54e5fc Fix an issue when lib_compat_mode = strict does not ignore libraries incompatible with a project framework 2019-07-04 16:46:54 +03:00
c3ac10fe29 Update docs and examples for SiFive dev/platform 2019-07-03 22:58:27 +03:00
0a907627be Bump version to 4.0.0rc4 2019-07-03 15:22:22 +03:00
26dda104dd Remove debug code 2019-07-03 15:22:04 +03:00
7c6fabaee2 Fix an issue with unhandled warnings from PIO Core when calling it internally // Resolved #2727 2019-07-03 15:10:37 +03:00
dc07ea56d2 Bump version to 4.0.0rc3 2019-07-03 14:01:14 +03:00
b68e5db46b Fix broken example when using custom uploader // Resolve #2735 2019-07-03 12:37:00 +03:00
fd9ca0cd15 Ensure buffer is created for thread stream 2019-07-02 22:35:35 +03:00
6c47c7506e Do not remove thread buffers, reset them instead 2019-07-02 22:26:01 +03:00
18d93dfcc9 Use StringIO for PY3 2019-07-02 21:04:43 +03:00
900a4d463f Bump version to 4.0.0rc2 2019-07-02 20:49:06 +03:00
4b24d6e3e4 Minor changes 2019-07-02 20:48:43 +03:00
2988724456 Setup MultiThreadingStdStreams from child threads 2019-07-02 20:44:33 +03:00
c79d5f0cf1 Fix an issue saving modified State 2019-07-02 15:52:12 +03:00
148b7dccfd Refactor ThreadSafeStdBuffer 2019-07-02 15:47:03 +03:00
83f64cebbd Remove test code 2019-07-02 12:23:35 +03:00
69de40c409 Fix an issue when empty multiple values for project option were not casted to list // Resolve #2734 2019-07-02 12:21:06 +03:00
bf9552bd56 Free lock when state is deleted 2019-07-02 00:45:35 +03:00
5afaa6d0ee Merge branch 'feature/performance-fixes' into develop 2019-07-02 00:42:04 +03:00
d2c86ab71c Refactor state to a proxied dictionary 2019-07-02 00:41:47 +03:00
6d9de80f12 Better comparison for app state changes 2019-07-01 20:42:23 +03:00
bf77d70d82 Thread safe internal PIO Core calling for PIO Home 2019-07-01 20:39:52 +03:00
8525fd6ae8 Docs: Sync Atmel SAMD boards 2019-07-01 18:33:05 +03:00
dfca7f0b68 Speedup PIO Home via internal calling of PIO Core CLI 2019-07-01 15:55:42 +03:00
500b3e08fe Docs: Fix default OTA port for ESP32 2019-06-29 13:29:10 +03:00
6739d5a570 In the current version of this template all build targets result (#2714)
in

   pio -c -f eclipse debug run target <mytarget>

The commit fixes this to be

   pio -c -f eclipse run target <mytarget>

See also discussion in forum:
   https://community.platformio.org/t/pio-4-0-0b3-potential-bug-in-cprojet-tpl/8390
2019-06-29 12:48:24 +03:00
f8dd90c9a9 Docs: Fix invalid references to Sipeed boards 2019-06-28 23:34:08 +03:00
8d459d86d3 Bump version to 4.0.0rc1 2019-06-28 19:09:47 +03:00
f30bd18bdc Skip async output when empty byte is given 2019-06-28 19:07:59 +03:00
0035f56e15 Sync docs and examples 2019-06-28 19:07:44 +03:00
4123aa4c23 Look in for "lib_deps" in all declared library storages // Resolve #2708 2019-06-28 13:27:05 +03:00
1bff3c6615 Use isolated Core folder for test_maintenance 2019-06-28 13:21:11 +03:00
936b04e075 Remove upgrade hooks from Core 2.0 to Core 3.0 2019-06-28 13:04:34 +03:00
4d23ad03c3 Remove upgrade hooks from Core 2.0 to Core 3.0 2019-06-28 13:03:49 +03:00
a75823227d Use :1234 as default GDB port for QEMU 2019-06-27 15:13:16 +03:00
96d337388b Debug: Initial configuration for QEMU 2019-06-27 15:07:13 +03:00
c89793eab9 Use piped openOCD for RISC-V 2019-06-27 15:06:12 +03:00
e27b40390d Look for project dir in sys env variables (hooks for Eclipse, CLion) 2019-06-27 14:57:05 +03:00
1d80914070 Remove upgrade hooks from Core 2.0 to Core 3.0 2019-06-27 14:56:21 +03:00
e61caa37a8 Fix issue when CMakeListsUser.txt is not included // Resolve #2712 2019-06-27 14:04:16 +03:00
d07a1d265e Log stdout of GDB client 2019-06-27 13:38:46 +03:00
54921c5dbd Bump version to 4.0.0b3 2019-06-26 01:02:08 +03:00
5cb2a970fa Suppress IOError 2019-06-26 00:52:22 +03:00
89b951e7d5 Switch to news from registry 2019-06-26 00:29:49 +03:00
6daf387c90 Missing parentheses and depreciated syntax (#2700)
Fixes
```
  File "get-platformio.py", line 93
    print r['out']
          ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(r['out'])?
```

and 

```
  File "get-platformio.py", line 146
    except Exception, e:
                    ^
SyntaxError: invalid syntax
```
2019-06-25 23:50:06 +03:00
2c3d8ce695 Bump version to 4.0.0b2 2019-06-23 21:23:44 +03:00
17fa5f77d5 Fix LDF recursive behaviour 2019-06-23 21:23:19 +03:00
c0a9ae5c70 Better handling of library.properties "architectures" meta data 2019-06-23 21:21:34 +03:00
4b7916c2af Bump version to 4.0.0b1 2019-06-21 17:50:18 +03:00
6d968a7093 Docs: Add info about using custom targets with mbed framework 2019-06-21 15:11:51 +03:00
634afdcf8a Update FUNDING.yml 2019-06-20 19:11:50 +03:00
3ebeb1bab2 Create FUNDING.yml 2019-06-20 19:10:21 +03:00
5ab564a6d0 Add doc page about ULP programming 2019-06-20 17:41:06 +03:00
04dc6230e7 Open source PIO Unified Debugger and Unit Testing 2019-06-19 00:29:21 +03:00
51115c1254 Ignore vscode-cpptools cache (#2623)
One of the recent updates to the vscode-cpptools extension made it start caching in .vscode/ipch, and this cache can be quite big for even small projects. Since they're cache files, they should be ignored by default. This may be a short-lived suggestion, as there is already some mention that the IntelliSense cache folder may be moved to workspace storage, rather than 'per project' storage... although the 'when' is anyone's guess. 

See here for more: https://github.com/microsoft/vscode-cpptools/issues/3347
2019-06-16 12:37:32 +03:00
40c8046546 Fix Teensy serial lockout (#2676)
Fixes `[Errno 16] Device or resource busy: '/dev/ttyACM0` issue on Teensy 3.2 and 3.5 (at minimum) due to ModemManager probing the devices and making them unavailable. Updated rules sourced from current https://www.pjrc.com/teensy/49-teensy.rules configuration.
2019-06-16 12:36:41 +03:00
fa761f9616 Use build cache for AppVeyor CI examples 2019-06-15 22:06:55 +03:00
5fabadd059 Use build cache for CI examples 2019-06-15 21:12:40 +03:00
38408c1e1f Use only 1 example per framework for CI 2019-06-15 21:09:52 +03:00
fbdfe31f17 Shared cache directory for the build derived files // Resolve #2674 2019-06-15 18:53:13 +03:00
bd8ba738cf Improve docs how to enable PIO Core dev/version in PIO IDE 2019-06-13 23:46:53 +03:00
8b8b6c3b9e Bump version to 4.0.0a23 2019-06-13 22:57:53 +03:00
bd3b29c304 Fix converting to real version 2019-06-13 20:24:55 +03:00
1339924c2e Print installation progress for "lib_deps" after LDF banner 2019-06-13 19:54:40 +03:00
46eab99888 Typo fix 2019-06-13 18:31:03 +03:00
461d71c2c7 Look firstly in built-in library storages for a missing dependency instead of PlatformIO Registry // Resolve #1654 2019-06-13 18:22:36 +03:00
1ccc526960 Revert "Revert back "Look firstly in built-in library storages""
This reverts commit 4ae302762a.
2019-06-13 13:08:53 +03:00
5338a9caa3 Bump version to 4.0.0a22 2019-06-13 00:42:24 +03:00
4ae302762a Revert back "Look firstly in built-in library storages" 2019-06-13 00:42:10 +03:00
98513c9967 Fix nested import 2019-06-12 23:47:22 +03:00
b6688db8b7 Bump version to 4.0.0a21 2019-06-12 22:03:28 +03:00
d5c98e4f27 Look firstly in built-in library storages for a missing dependency instead of PlatformIO Registry // Resolve #1654 2019-06-12 22:02:59 +03:00
b7e9bcb609 Do not check udev rules for gdb --version 2019-06-11 20:30:06 +03:00
9de7297d38 Fix "UnicodeEncodeError: 'ascii' codec can't encode characters" // Resolve #2644 2019-06-10 19:44:18 +03:00
97acf23a6d Docs: Add info how to enable built-in PIO Core for VSCode 2019-06-10 16:58:34 +03:00
80718ebb95 Fix "UnicodeEncodeError: 'ascii' codec can't encode characters" // Resolve #2644 2019-06-10 15:25:59 +03:00
643d118062 Sync docs 2019-06-07 17:42:33 +03:00
15b5a14995 Bump version to 4.0.0a20 2019-06-07 17:24:07 +03:00
68a3b3f9e7 Custom platform_packages per a build environment with an option to override default // Resolve #1367 2019-06-07 17:22:02 +03:00
5f1bd286c7 Fix "ValueError: invalid literal for int() with base 10: '0.0'" // Resolve #2646 2019-06-07 15:12:24 +03:00
d18b4f12d0 Sync docs 2019-06-07 15:01:52 +03:00
d9010230a4 Make internal in-memory cache for package manager to be instance related 2019-06-07 15:01:27 +03:00
686d615639 Cast env_name to string // Resolve #2644 2019-06-07 13:14:14 +03:00
d205370e9b Docs: Minor changes to migration guide 2019-06-07 01:06:16 +03:00
ce66033190 Docs: update migration from 3.0 to 4.0 2019-06-07 00:18:34 +03:00
bcff26d4d7 Refactor using "@util.memoized" 2019-06-06 00:13:04 +03:00
898d79956d Bump version to 4.0.0a19 2019-06-05 18:28:23 +03:00
522f814811 Show detailed info about a platform when is installed from local folder or VCS // Resolve #2081 2019-06-05 18:26:39 +03:00
394d272324 Fix numerous issues related to "UnicodeDecodeError" and international locales, or when project path contains non-ASCII chars // Resolve #143, Resolve #1342, Resolve #1959, Resolve #2100 2019-06-05 17:57:22 +03:00
84ce7db3e3 Fixed an issue when library keeps reinstalling for non-latin path // Resolve #1252 2019-06-05 17:53:02 +03:00
f873bd41f8 Better printing of relative path for removed objects 2019-06-05 16:47:02 +03:00
5c8c10e7d3 Do not check that lib_extra_dirs exist // Resolve #2624 2019-06-04 13:55:11 +03:00
a504a13fa8 Fix broken example with ConfigParser using // Resolve #2616 2019-06-04 00:50:45 +03:00
d09964a897 Use common IDE data loading for IDE and DEBUG 2019-06-03 19:20:10 +03:00
4416c12747 Fix numerous issues related to "UnicodeDecodeError" and international locales, or when project path contains non-ASCII chars // Resolve #2100 2019-06-03 17:44:41 +03:00
80a1b95887 Sync docs 2019-06-03 14:48:05 +03:00
9eb18ca72d PyLint fix 2019-06-03 14:29:22 +03:00
37653d8446 Better decoding SCons arguments 2019-06-03 13:57:58 +03:00
e269c91d26 Improve compatibility with hashlib Py2/Py3 2019-06-03 13:30:35 +03:00
ac3236693f Bump version to 4.0.0a18 2019-06-03 01:14:02 +03:00
d0b3c5ee86 Switch between Build Configurations (release and debug) with a new project configuration option build_type // Resolve #2184 2019-06-02 14:11:31 +03:00
23a2022f04 Add support for PLATFORMIO_DEFAULT_ENVS system environment variable // Resolve #1967 2019-06-01 22:43:44 +03:00
c5177efd0b Minor fixes 2019-06-01 22:24:38 +03:00
d51cd9c277 Bump version to 4.0.0a17 2019-06-01 19:48:21 +03:00
6257480d0d Print platform package details, such as version, VSC source and commit // Resolve #2155 2019-06-01 19:44:45 +03:00
4af615a49c Maintain renamed options when reading configuration file 2019-06-01 16:58:14 +03:00
6186b425d4 Typo fix 2019-06-01 15:38:55 +03:00
c038074489 Override default development platform upload command with a custom // Resolve #2599 2019-06-01 14:36:07 +03:00
d25f1ddc21 Add project folder prefix to $PROJECT_HASH 2019-05-31 21:47:50 +03:00
5011e47709 Added support for "shared_dir" 2019-05-31 21:18:37 +03:00
33d16bfcf0 Use named context meta vars for unit testing 2019-05-31 15:47:25 +03:00
bae21f1cdd Allow to pass multiple load commands to PIO Unified Debugger 2019-05-31 14:45:48 +03:00
5f9fd9260e New project configuration parser with a strict options typing 2019-05-31 14:45:01 +03:00
61db0f1d6a YAPF 0.27.0 2019-05-30 23:42:15 +03:00
1598c8197e Fix "clean" target 2019-05-30 23:33:57 +03:00
01db26f204 Add a link to PIO Unified Debugger options 2019-05-30 22:26:42 +03:00
12876c5c2b Merge branch 'feature/refactor-project-options' into develop 2019-05-30 22:15:16 +03:00
5c60d922ca Skip "arduino-mock" from CI 2019-05-30 22:15:06 +03:00
0570fc6c48 Don't override custom "core_dir" on Windows platform 2019-05-30 21:56:55 +03:00
f3c8277572 Fix broken tests 2019-05-30 21:27:12 +03:00
1dbaed5beb Implement "silent" mode for config.validate() 2019-05-30 21:26:51 +03:00
19c1574993 Use the latest TOX for Travis.CI 2019-05-30 17:37:48 +03:00
346579b93c Improve type converting for config options 2019-05-30 17:34:44 +03:00
0ce2343836 Do not pass project settings as SCons arguments // Resolve #1637 2019-05-30 17:08:00 +03:00
d5e277b7cc Minor improvements to unit testing engine 2019-05-30 16:39:17 +03:00
3cc4af1723 Refactor project config options 2019-05-30 16:38:04 +03:00
8d05903bf3 Log THE ONLY non sensitive data (used board, platform, and framework) 2019-05-30 14:36:04 +03:00
7f845ab943 Sync docs and examples 2019-05-30 14:32:49 +03:00
ddc8a353cb Sync docs 2019-05-28 12:53:54 +03:00
9ce9171a36 Fix typo 2019-05-28 01:19:51 +03:00
dec43bec9d Fix test 2019-05-28 00:09:20 +03:00
99377130eb Enhance unit testing summary 2019-05-27 22:25:48 +03:00
3df01405a1 Remove unused Python imports 2019-05-27 22:25:22 +03:00
3adcf66453 Docs: Use native Python ConfigParser for extra scripting examples 2019-05-27 19:03:31 +03:00
b88c262a9d Use the latest version of tox for AppVeyor CI 2019-05-27 18:49:35 +03:00
5999bcee3f Update history 2019-05-27 18:45:24 +03:00
078b0af312 Test only 1 project example per dev/platform for AppVeyor CI 2019-05-27 18:17:57 +03:00
a0fb88e28a Implement "envLibdepsDirs" per project for PIO Home 2019-05-27 17:57:46 +03:00
3cd4b005d8 Open sourcing PIO Unified Debugger, PIO Unit Testing Engine, and PIO Home Server 2019-05-27 17:19:33 +03:00
0a523fc06c Docs: Minor tweak 2019-05-27 14:33:38 +03:00
16864509af Document "Override package files" 2019-05-27 14:21:48 +03:00
cb8af5add9 Print "No items found" when there are no packages for llisting 2019-05-27 12:28:04 +03:00
3f96dc1432 Fixed an issue when package cache (Library Manager) expires too fast // Resolve #2559 2019-05-27 12:24:20 +03:00
e1aa29cb36 Bump version to 4.0.0a16 2019-05-25 22:18:23 +03:00
6e87089ded Add support for Unix shell-style wildcards for "monitor_port" option // Resolve #2541 2019-05-25 22:14:38 +03:00
a84195bb5a Add user-definable monitor options to platformio.ini // Resolve #2165 2019-05-25 21:49:51 +03:00
70a0bd72c0 Sync "include" directory for PIO Remote // Resolve #2210 2019-05-25 21:06:08 +03:00
fea7e97112 Fix an issue with hardcoded C stadard version when generating project for CLion IDE // Resolve #2527 2019-05-25 20:47:39 +03:00
7beb332b31 Support custom CMake configuration for CLion IDE using `CMakeListsUser.txt` file 2019-05-25 20:46:56 +03:00
7b2c1f27fc Sync docs 2019-05-25 20:46:23 +03:00
67f7b6cda3 Bump version to 4.0.0a15 2019-05-25 01:18:28 +03:00
4266cba53b Cleanup ".piolibdeps" 2019-05-25 01:10:35 +03:00
19725fec04 Add options to override default locations used by PlatformIO Core // Resolve #1615 2019-05-24 20:49:05 +03:00
a6e5a0c7f5 Fix an issue for Project Generator when include path search order is inconsistent to what passed to the compiler // Resolve #2509 2019-05-24 16:06:27 +03:00
2baea815fe Update history 2019-05-24 15:06:33 +03:00
b38c57bcf9 Fix an issue when `-U in build_flags does not remove macro previously defined via -D` flag // Resolve #2508 2019-05-24 14:57:59 +03:00
e6d1805f0b Save library requirements when using --save option // Issue #1028 2019-05-24 14:09:25 +03:00
9a95b0df56 Fix handling custom includeDir and srcDir for library.json // Resolve #2518 2019-05-24 01:15:47 +03:00
70a5d32925 Add "--save" flag to "platformio lib install" command // Resolve #1028 2019-05-23 19:39:04 +03:00
c2a549b0c2 Install all project dependencies declared via "lib_deps" option using "platformio lib install" command // Resolve #2147 2019-05-23 18:37:08 +03:00
0fda79a075 Switch to Click meta context for lib CLI 2019-05-23 13:05:44 +03:00
21e2ac6695 Use isolated library dependency storage per project build environment // Resolve #1696 2019-05-23 00:23:24 +03:00
e7d75d1412 Remove debug code 2019-05-21 21:47:20 +03:00
4386dc56ea Move "in_silence" to PlatformioCLI 2019-05-21 13:18:11 +03:00
a30b79c5fc Sync docs 2019-05-21 12:01:14 +03:00
f29a74042f Drop support for "lib_extra_dirs" in "platformio" section 2019-05-20 21:12:45 +03:00
c46643f0fd Custom project "***_dir" options declared in “platformio” section of “platformio.ini” have higher priority than Environment variables 2019-05-20 17:07:59 +03:00
5fe4de626b Implement unified project workspace storage ".pio" // Resolve #1778 2019-05-20 17:01:54 +03:00
774380c2ef Bump version to 4.0.0a14 2019-05-20 12:38:49 +03:00
8643f0454e Move "glob_escape" and "get_file_contents" helpers to "compat" module 2019-05-17 13:18:15 +03:00
f844d9cb47 Remove line-buffering from "platformio run" command which was leading to omitting progress bar from upload tools // Resolve #856, Resolve #857 2019-05-17 12:53:51 +03:00
f94fbb951a Typo fix 2019-05-16 21:27:32 +03:00
899de600e4 Fix broken "util.string_types" 2019-05-16 21:11:21 +03:00
971049b41c Move process related helpers to "proc" module 2019-05-16 21:03:15 +03:00
aaf61082c1 Replace "--only-check" CLI option by "--dry-run" 2019-05-16 20:02:45 +03:00
b14abeff48 Bump version to 4.0.0a13 2019-05-13 22:37:45 +03:00
f26553b451 ESP8266, docs for "SSL Support" 2019-05-13 22:37:24 +03:00
8b93ad00a2 Docs: ESP32: Implement "espota" protocol 2019-05-11 22:18:35 +03:00
5e1a931145 Switch Python or Platform dependent code to "compat" module 2019-05-10 17:50:08 +03:00
abfee8308e Switch Python or Platform dependent code to "compat" module 2019-05-10 17:47:02 +03:00
d2449762c2 Move Python or Platform dependent code to "compat" module 2019-05-10 17:27:04 +03:00
59848c3115 Check unknown build environment passed by user 2019-05-10 17:26:47 +03:00
834206ff20 Move Python or Platform dependent code to "compat" module 2019-05-10 17:26:10 +03:00
ce4ed18ceb Check unknown build environment passed by user 2019-05-10 15:49:01 +03:00
b710bbd80e Allow to skip ProjectConfig option validation with new "validate_options" argument 2019-05-10 15:47:45 +03:00
446176bf5e Allow to skip ProjectConfig option validation with new "validate_options" argument 2019-05-10 15:47:17 +03:00
0b2d780618 Switch to the new ProjectConfig API 2019-05-10 15:45:52 +03:00
d9b0364aa8 Allow overriding a default project "platformio.ini" configuration file 2019-05-10 13:12:41 +03:00
76818448e2 Ensure PIO Home mimetypes are known 2019-05-10 13:01:52 +03:00
131144ec34 Resolve PyLint "import-error" 2019-05-10 13:00:53 +03:00
a21d75b273 Merge branch 'develop' into feature/pio-plus-oss 2019-05-10 01:10:51 +03:00
c79b3ff7f1 Override default “platformio.ini” with a custom using "-c, --project-conf" option // Resolve #1913 2019-05-10 00:01:10 +03:00
2b5ac57fd0 Bump version to 4.0.0a12 2019-05-09 18:40:19 +03:00
32d317d3cb Fix PlatformIO CLI 2019-05-09 18:39:27 +03:00
71f606912a Implement ProjectConfig.getlist() 2019-05-09 14:14:19 +03:00
62b80c396b Added support for the latest Python "Click" package (CLI Builder) // Resolve #349 2019-05-09 00:51:28 +03:00
7687a0a929 Fix PyLint "not-an-iterable" error 2019-05-08 21:02:23 +03:00
f63fe1699b Bump version to 4.0.0a11 2019-05-08 20:20:56 +03:00
4f98a3fd42 Share common (global) options between declared build environments using "[env]" section // Resolve #1643 Resolve #790 2019-05-08 20:19:39 +03:00
693304590c Fix PyLint "not-an-iterable" error 2019-05-08 12:41:11 +03:00
947e31ca8d Fix some PyLint errors 2019-05-07 23:51:46 +03:00
45d4b92678 Export get_projectdata_dir for util, fix riscv_gap dev/platform 2019-05-07 23:00:01 +03:00
07a2a49d93 Refactor project helpers 2019-05-07 22:13:21 +03:00
7ddd22209f Enable PyLint "import-error" 2019-05-07 21:16:42 +03:00
6cd4484be9 Init new project using new ProjectConfig API 2019-05-07 19:57:24 +03:00
c235974eb6 Switch to the new ProjectConfig API 2019-05-07 17:51:50 +03:00
1b4f945907 Remove support for renamed dev/platforms 2019-05-07 15:59:09 +03:00
4fdd51e190 Docs: Sync MCS51 boards 2019-05-07 13:26:10 +03:00
95b9ae9f24 Docs: Sync Atmel SAM boards 2019-05-06 13:38:48 +03:00
94e580bf4e Override default source and include directories for a library via "library.json" manifest using "includeDir" and "srcDir" fields 2019-05-04 13:36:27 +03:00
e4dca37874 Bump version to 4.0.0a10 2019-05-04 12:23:51 +03:00
7f607b742f Fix issue when handling dynamic variables 2019-05-04 12:23:23 +03:00
2c0e0b2619 Bump version to 4.0.0a9 2019-05-03 21:14:08 +03:00
8e55c9e4d0 Include external configuration files with "extra_configs" option // Resolve #1590 2019-05-03 21:03:36 +03:00
41ff1b0188 Support for Kendryte K210 // Resolve #2233 2019-05-03 16:56:44 +03:00
48c1aeae03 Fix "systemd-udevd" warnings in 99-platformio-udev.rules // Resolve #2442 2019-05-03 13:11:03 +03:00
eab2fd91fd Lowercase SHA sum for package manager 2019-04-25 12:49:22 +03:00
ba6d120cf4 Docs: Sync Atmel AVR dev/platform 2019-04-24 00:14:53 +03:00
e9df6166ee Update SCons to 3.0.5 2019-04-24 00:07:27 +03:00
9bdc85fd52 Bump version to 4.0.0a8 2019-04-23 12:49:36 +03:00
fa48a6460f Merge tag 'v3.6.7' into develop 2019-04-23 12:49:10 +03:00
f07854879a Merge branch 'hotfix/v3.6.7' 2019-04-23 12:47:27 +03:00
9ca53c57f4 Bump version to 3.6.7 2019-04-23 12:32:18 +03:00
ee420cc35e Bump version to 3.6.7 2019-04-23 12:31:58 +03:00
d49d91269d Update history with upcoming 3.6.7 release 2019-04-23 12:29:29 +03:00
a59efc2fc0 Update history with upcoming 3.6.7 release 2019-04-23 12:29:16 +03:00
20f28383a0 Fix links in changelog 2019-04-23 01:07:36 +03:00
d3c3491a91 Fix links in changelog 2019-04-23 01:07:21 +03:00
e6a7cc2036 Update core package dependencies 2019-04-23 01:05:11 +03:00
4d615416f3 Improve debugging in debug_load_mode = modified and fix an issue with useless project rebuilding 2019-04-23 00:50:32 +03:00
137a5d1c42 Improve debugging in debug_load_mode = modified and fix an issue with useless project rebuilding 2019-04-23 00:49:53 +03:00
65354e995d Initial commit of PIO Home 2019-04-22 21:07:28 +03:00
3032cade17 PyLint fixes 2019-04-19 20:46:28 +03:00
948a977fa5 Initial commit of PIO Unit Testing 2019-04-19 20:33:31 +03:00
c7d8b50474 Use generic GDB_MSPDEBUG_INIT_CONFIG 2019-04-19 19:58:34 +03:00
f1da544279 Initial commit of PIO Unified Debugger 2019-04-19 19:56:16 +03:00
40d1bb204c Docs: New boards by ESP32 dev/platform 2019-04-19 13:26:25 +03:00
21a36f8ee9 Fix UnicodeEncodeError when converting INO to CPP 2019-04-18 16:20:01 +03:00
be24c6ab4d Fix an issue when invalid "env_default" results into unhandled errors // Resolve #2265 2019-04-18 14:18:27 +03:00
3d96e584fb Fix an issue when invalid "env_default" results into unhandled errors // Resolve #2265 2019-04-18 14:17:22 +03:00
963eabc3f5 Docs: Rename "Download" button to INSTALL 2019-04-18 01:01:26 +03:00
f63041a402 Add get_original_version to public utils API 2019-04-17 23:20:45 +03:00
c084db1619 Enable AppVeyor CI only for Windows x64 2019-04-17 20:09:05 +03:00
4edfb8f6cc Cleanup PING_INTERNET_IPS 2019-04-17 20:06:01 +03:00
6501c1f171 Cleanup PING_INTERNET_IPS 2019-04-17 20:05:51 +03:00
41ab97203a Docs: Add community video tutorials 2019-04-16 13:55:47 +03:00
a51a03843d Docs: Use jQuery from Sphinx theme (fix search) 2019-04-16 00:33:21 +03:00
e9b8478942 Sync docs 2019-04-07 00:52:20 +03:00
29cf1c8596 Fix "ValueError: invalid literal for int() with base 10" for click.get_terminal_size 2019-04-05 19:49:36 +03:00
e992e156bf Fix "ValueError: invalid literal for int() with base 10" for click.get_terminal_size 2019-04-05 19:48:04 +03:00
cf13ec4035 Fix an "IndexError: list index out of range" for Arduino sketch preprocessor // Resolve #2268 2019-04-01 18:50:40 +03:00
c1d01dbe34 Update info about PIO IDE for VSCode 2019-04-01 18:35:00 +03:00
ff5da3c3cc Use stable dev/platforms for CI 2019-03-30 13:54:29 +02:00
7d9e10095e Set manifest version of VSCode C/C++ configuration file 2019-03-30 13:00:27 +02:00
bb17630571 Set manifest version of VSCode C/C++ configuration file 2019-03-30 13:00:10 +02:00
7746f7eeee Project Generator: fixed a VSCode C/C++'s "Cannot find" warning when CPPPATH folder does not exist 2019-03-29 21:27:08 +02:00
e089c4a546 Project Generator: fixed a VSCode C/C++'s "Cannot find" warning when CPPPATH folder does not exist 2019-03-29 21:26:45 +02:00
8f29d951cb YAPF 0.26.0 2019-03-29 12:55:05 +02:00
f182a6dcae Bump version to 3.6.7a1 2019-03-29 12:46:24 +02:00
0c76116948 Merge tag 'v3.6.6' into develop 2019-03-29 12:44:54 +02:00
6b17183cff Merge branch 'hotfix/v3.6.6' 2019-03-29 12:43:41 +02:00
8cd35fb537 Bump version to 3.6.6 2019-03-29 12:43:16 +02:00
2d4421e8e5 New article "Automated unit testing in the metal" 2019-03-25 16:04:05 +02:00
760499c095 Append configuration settings from "mbed_lib.json" to "mbed_config.h" // Resolve #2164 2019-03-24 23:55:06 +02:00
c141189883 Append configuration settings from "mbed_lib.json" to "mbed_config.h" // Resolve #2164 2019-03-24 23:54:53 +02:00
00b162608e Fix an issue with incorrect order of project "include" and "src" paths in `CPPPATH` // Resolve #1914 2019-03-23 17:45:28 +02:00
51cb87bc6f Bump version to 4.0.0a7 2019-03-23 17:44:30 +02:00
cae708f2d7 Fix an issue with incorrect order of project "include" and "src" paths in `CPPPATH` // Resolve #1914 2019-03-23 17:44:01 +02:00
e33b0fe291 Fix an issue when PlatformIO Build System does not pick up "mbed_lib.json" files from libraries // Resolve #2164 2019-03-23 14:33:34 +02:00
3a77bed0d4 Fix an issue when PlatformIO Build System does not pick up "mbed_lib.json" files from libraries // Resolve #2164 2019-03-23 14:24:43 +02:00
06fe557a20 Fix "SameFileError" when CI is used in pair with --keep-build-dir // Resolve #2227 2019-03-22 21:25:12 +02:00
10a7367b33 Fix "SameFileError" when CI is used in pair with --keep-build-dir // Resolve #2227 2019-03-22 21:24:43 +02:00
9c1cc97776 Project Generator: fixed a warning "Property !!! WARNING !!! is not allowed" for VSCode // Resolve #2243 2019-03-22 21:17:26 +02:00
dea6551841 Bump version to 4.0.0a6 2019-03-22 21:16:33 +02:00
4ca71e7df1 Project Generator: fixed a warning "Property !!! WARNING !!! is not allowed" for VSCode // Resolve #2243 2019-03-22 21:16:02 +02:00
d7e2d05f60 Fix error with conflicting declaration of a prototype (Arduino sketch preprocessor) 2019-03-20 18:58:06 +02:00
d9e6111ac3 Fix error with conflicting declaration of a prototype (Arduino sketch preprocessor) 2019-03-20 18:49:20 +02:00
86e4641101 Bump version to 3.6.6a1 2019-03-14 20:16:15 +02:00
326eb4a681 Fix "FileExistsError" when "platformio ci" command is used in pair with "--keep-build-dir" option 2019-03-14 20:14:55 +02:00
d4af985eb8 Bump version to 4.0.0a5 2019-03-14 20:12:52 +02:00
0d904ad1cc Fix "FileExistsError" when "platformio ci" command is used in pair with "--keep-build-dir" option 2019-03-14 20:12:18 +02:00
b3ac567b53 Docs: New article "Getting started with the STM32F407VG and STM32Cube" 2019-03-14 14:46:44 +02:00
03aec79cc1 Drop mbed OS support for Adafruit boards 2019-03-13 22:22:48 +02:00
9a6d148bdc Update docs for PIO Plus products 2019-03-08 18:01:35 +02:00
a9288e5a5b Docs: Cosmetic changes to PIO Unified Debugging and Unit Testing 2019-03-07 17:26:22 +02:00
8280fd557b Bump version to 4.0.0a4 2019-03-07 14:12:45 +02:00
15a1cbf95a Tag docs with v3.6.5 2019-03-07 14:09:50 +02:00
775797b4e5 Merge tag '3.6.5' into develop 2019-03-07 14:02:35 +02:00
e37d34b92f Merge branch 'release/3.6.5' 2019-03-07 14:00:57 +02:00
b562541f20 Bump version to 3.6.5 2019-03-07 13:57:32 +02:00
736a1404b4 YAPF 0.26.0 2019-03-07 12:55:03 +02:00
9639626ab3 Fix an issue when `$PROJECT_HASH template was not expanded for the other directory ***_dir` options in "platformio.ini" // Resolve #2170 2019-03-07 12:54:40 +02:00
4c8df44a5a Fix an issue when `$PROJECT_HASH template was not expanded for the other directory ***_dir` options in "platformio.ini" // Resolve #2170 2019-03-07 12:40:55 +02:00
3f52a6d5ba YAPF 0.26.0 2019-03-07 12:36:17 +02:00
237d55208c Fix "Unnecessary "else/elif" after "raise"" by PyLint 2019-03-07 12:35:34 +02:00
b99494671a Update "dl.bintray.com" IP address 2019-03-06 22:39:38 +02:00
5a72e3f2a1 Update "dl.bintray.com" IP address 2019-03-06 22:39:24 +02:00
1ce913ea74 Sync docs 2019-03-06 21:04:01 +02:00
9911a04232 Sync docs 2019-03-06 12:29:03 +02:00
f1549e1f0e Docs: Sync new boards by STM32 2019-03-05 13:20:19 +02:00
4659a44bd6 New boards: Adafruit Bluefruit nRF52832 Feather, Feather nRF52840 Express, and Nordic nRF52840-DK (Adafruit BSP) 2019-03-04 13:50:34 +02:00
e39d4f5c32 Sync docs 2019-03-04 13:12:16 +02:00
fb9fe8c77c Document upload_protocol = espota option 2019-03-04 13:03:22 +02:00
9778778830 PyLin fix 2019-02-24 11:45:29 +02:00
ab914e1566 PyLin fix 2019-02-24 11:45:14 +02:00
d2c2171ef9 Project Generator: add new targets for CLion IDE "BUILD_VERBOSE" and "MONITOR" (serial port monitor) // Resolve #359 2019-02-23 22:43:30 +02:00
856798488b Fix an issue when platformio ci recompiles project if `--keep-build-dir` option is passed // Resolve #2109 2019-02-23 22:41:45 +02:00
00ba88911f Fix an issue with slow updating of PlatformIO Core packages on Windows 2019-02-23 22:41:15 +02:00
e0b9d080fa Project Generator: add new targets for CLion IDE "BUILD_VERBOSE" and "MONITOR" (serial port monitor) // Resolve #359 2019-02-23 22:34:36 +02:00
42c22758bb Use NodeMCUv2 as default board for wiring example 2019-02-23 21:04:43 +02:00
522b42c2a9 Fix an issue when platformio ci recompiles project if `--keep-build-dir` option is passed // Resolve #2109 2019-02-23 18:39:54 +02:00
5a707a4849 CI only for Python 2.7 & 3.6 2019-02-23 16:00:24 +02:00
1bed2650f3 Sync docs 2019-02-23 14:44:13 +02:00
65f30dd7b4 Sync docs 2019-02-23 01:10:41 +02:00
59b27d5d0a Document switching between Arduino cores 2019-02-21 22:53:33 +02:00
6575ddab26 Improve docs for pio ci command when multiple --project-option are used 2019-02-21 00:25:14 +02:00
dc4a5df2af Drop support for RFduino 2019-02-20 00:13:56 +02:00
2e4c9411af Docs: Update VSCode Custom Task example 2019-02-20 00:00:41 +02:00
e477d1fbcf Docs: Move images from root of _static to _static/images 2019-02-19 23:25:13 +02:00
6059e0dce6 Fix an issue with slow updating of PlatformIO Core packages on Windows 2019-02-19 20:12:07 +02:00
234bb75b9b Sync docs & examples 2019-02-19 18:11:21 +02:00
38dfa40e32 Docs: Sync Atmel SAM boards 2019-02-18 18:57:37 +02:00
5add5f1cfb Document lwIP profiles for EPS8266 2019-02-18 15:51:35 +02:00
f1b809f8dd Improve debugging instruction for ESP32 tutorial // Resolve #1871 2019-02-09 19:11:51 +02:00
47aa63fc04 Update docs for mbed framework 2019-02-07 20:36:45 +02:00
08000a6f62 Sync docs & examples 2019-02-07 19:01:51 +02:00
31d4706abd Debug: Update wiring scheme for Mini-Module 2019-02-02 19:21:12 +02:00
e23ca2c109 Docs: Allow to control firmware optimization for Teensy 2019-01-31 16:42:44 +02:00
17efa89047 Disable STM8 from CI tests 2019-01-30 18:00:40 +02:00
527efe3359 RISV-GAP, document AutoTiler 2019-01-30 18:00:12 +02:00
5aed0efd61 Docs: Add Alorium Hinj board 2019-01-29 22:20:41 +02:00
27ac17e8c3 Release docs to 3.6.4 2019-01-23 21:24:29 +02:00
639c086728 Bump version to 3.6.5a1 2019-01-23 21:08:39 +02:00
d2c545eb27 Bump version to 4.0.0a3 2019-01-23 20:55:18 +02:00
035ab14202 Merge tag 'v3.6.4' into develop
Bump version to 3.6.4

# Conflicts:
#	HISTORY.rst
#	platformio/__init__.py
2019-01-23 20:54:21 +02:00
4504080027 Merge branch 'release/v3.6.4' 2019-01-23 20:51:48 +02:00
367e4d663c Bump version to 3.6.4 2019-01-23 20:47:18 +02:00
28bca48eca Ignore examples for ststm8 on Linux 2019-01-23 17:55:07 +02:00
eb57e14ac1 Fix "ValueError: invalid literal for int() with base 10" // Resolve #2061 2019-01-23 17:54:45 +02:00
69065d8bd6 Fix "ValueError: invalid literal for int() with base 10" // Resolve #2058 2019-01-22 22:16:58 +02:00
3cc996d89f Fix "ValueError: invalid literal for int() with base 10" // Resolve #2058 2019-01-22 21:59:26 +02:00
d7d981f522 Add "Variable Format" section to VSCode 2019-01-22 21:05:38 +02:00
eedc1c3ccd Bump version to 4.0.0a2 2019-01-17 18:18:28 +02:00
db0bbcc043 CLion: Improve project portability using "${CMAKE_CURRENT_LIST_DIR}" instead of USER_HOME 2019-01-17 18:05:05 +02:00
63075c9607 CLion: Improve project portability using "${CMAKE_CURRENT_LIST_DIR}" instead of USER_HOME 2019-01-17 18:04:52 +02:00
b594c11718 Fix cmd_lib test 2019-01-17 17:56:35 +02:00
b6ccda3568 Fix cmd_lib test 2019-01-17 17:56:21 +02:00
35f96a534a Drop "do-not-modify-files-here.url" from build_dir 2019-01-17 02:07:46 +02:00
7e8349d45e Docs: Sync Atmel AVR boards 2019-01-16 15:34:31 +02:00
88d06b4437 Ignore examples for ststm8 on Linux 2019-01-12 01:08:13 +02:00
3019e35724 Initial support for STM8 2019-01-11 16:52:01 +02:00
38bb2c61c1 Docs: Sort upload protocols for board 2019-01-11 14:35:54 +02:00
c7949ecd07 Temporary disable checking for PlatformIO Core engine (allow PIO Core 3 dev/platforms for PIO Core 4) 2019-01-11 14:11:54 +02:00
d627a42268 Fix PyLint warning 2019-01-11 14:07:46 +02:00
2b467f3fee Fix PyLint warning 2019-01-11 14:07:35 +02:00
f058b8f18f Fix PY3 Lint "consider-using-set-comprehension" 2019-01-11 13:02:12 +02:00
a750b06fc8 Fix PY3 Lint "consider-using-set-comprehension" 2019-01-11 13:01:53 +02:00
13430aa628 Use GCC C++ compiler for Eclipse project indexer // Issue #1010 2019-01-11 12:52:17 +02:00
286a53991c Use GCC C++ compiler for Eclipse project indexer // Issue #1010 2019-01-11 12:52:00 +02:00
b92a8467c9 Update SCons to 3.0.3 2019-01-10 23:47:43 +02:00
56cd55ba7d Eclipse: Provide language standard to a project C/C++ indexer // Resolve #1010 2019-01-10 21:57:52 +02:00
a092f87c50 Eclipse: Provide language standard to a project C/C++ indexer // Resolve #1010 2019-01-10 21:57:39 +02:00
19b5285d50 Fix "TypeError : startswith first arg" when checking udev rules with PY3 // Resolve #2000 2019-01-10 19:34:09 +02:00
d5d95092c4 Fix an error "Could not extract item..." when extracting TAR archive with symbolic items on Windows platform // Resolve #2015 2019-01-10 19:33:45 +02:00
02937216b0 Fix "TypeError : startswith first arg" when checking udev rules with PY3 // Resolve #2000 2019-01-10 19:33:15 +02:00
e02d7528ad Fix an error "Could not extract item..." when extracting TAR archive with symbolic items on Windows platform // Resolve #2015 2019-01-10 19:14:03 +02:00
68e3f9dc00 Fix "Runtime Error: Dictionary size changed during iteration" // Resolve #2003 2019-01-09 16:34:55 +02:00
2ae41c8434 Fix "Runtime Error: Dictionary size changed during iteration" // Resolve #2003 2019-01-09 16:34:39 +02:00
aa2bc4a63b Implement "get_file_contents" helper 2018-12-27 14:48:22 +02:00
74218f4f93 Fix PyLint warning for Windows 2018-12-26 22:33:21 +02:00
a60c57ac58 Initial support for Python 3.5+ // Resolve #895 Resolve #1365 2018-12-26 20:54:29 +02:00
fabaadec60 Fix an issue with incorrect detecting of compatibility (LDF) between generic library and Arduino or ARM mbed frameworks 2018-12-22 22:30:23 +02:00
7f697961ec Sync docs 2018-12-21 17:26:13 +02:00
9334f31ff2 Docs: Sync boards 2018-12-20 20:51:34 +02:00
579de32d4e Docs: Remove examples with ESP8266 LD scripts, they can change 2018-12-14 18:38:41 +02:00
c3702391ea Docs: Add RISC-V ASM Video Tutorial 2018-12-13 20:45:35 +02:00
826418a443 Bump version to 3.6.4b1 2018-12-13 17:30:49 +02:00
4dfa885a85 CLion: Improve project portability using "${CMAKE_CURRENT_LIST_DIR}" instead of full path 2018-12-13 17:30:10 +02:00
9f4dde4b5e Use full path to PlatformIO CLI when generate project for IDE 2018-12-13 17:24:08 +02:00
3748219cac Document system PATH for a custom VSCode task 2018-12-12 21:46:28 +02:00
4b55767fb9 Docs: "Custom Build Task" for VSCode 2018-12-12 21:01:13 +02:00
5aef182652 Merge tag 'v3.6.3' into develop
Bump version to 3.6.3
2018-12-12 16:19:26 +02:00
6db47cec2b Merge branch 'release/v3.6.3' 2018-12-12 16:19:25 +02:00
6f8b9d70bc Bump version to 3.6.3 2018-12-12 16:19:14 +02:00
d8cbe99f2c Fix an issue with a broken headers list when generating ".clang_complete" for Emacs // Resolve #1960 2018-12-12 15:50:34 +02:00
a690b8c085 Bump version to 3.6.3b2 2018-12-12 02:51:24 +02:00
b874359482 Ignore *.asm and *.ASM files when building Arduino-based library (compatibility with Arduino builder) 2018-12-12 02:49:42 +02:00
3a18e668c2 Docs: Better explanation about "PlatformIO IDE" 2018-12-12 01:55:54 +02:00
3ca9527da4 Bump version to 3.6.3b1 2018-12-12 01:29:43 +02:00
f539513376 Fixed spurious project's "Problems" for PlatformIO IDE for VSCode when ARM mbed framework is used 2018-12-12 01:28:37 +02:00
afdfaeec68 Check if "_lockfile" attribute exists 2018-12-03 18:31:12 -08:00
676c87d081 Allow to override platform "package_repositories" 2018-11-30 01:36:50 +02:00
db3b0499c9 Merge branch 'release/v3.6.2' 2018-11-29 18:02:58 +02:00
98032ec548 Merge tag 'v3.6.2' into develop
Bump version to 3.6.2
2018-11-29 18:02:58 +02:00
8ef6ea8053 Bump version to 3.6.2 2018-11-29 18:02:49 +02:00
d87ee0b286 Bump docs 2018-11-29 18:00:52 +02:00
6f01f10f59 YAPF 2018-11-29 17:59:29 +02:00
59a0d2b618 Bump version to 3.6.2rc2 2018-11-29 16:02:59 +02:00
16df5474e4 VSCode IntelliSense config: Typo fix with useless bracket 2018-11-29 15:59:22 +02:00
33ea6ef123 Be in silence when debug interpreter is run 2018-11-29 15:21:06 +02:00
a485e563f0 Bump version to 3.6.2rc1 2018-11-29 00:52:36 +02:00
cf35f9dbf8 Only patch versions are allowed for "contrib-pysite" 2018-11-28 21:32:37 +02:00
710b150fcd Switch PIO Home to native WebSockets (next step to PY3) 2018-11-28 17:28:14 +02:00
13731b4461 Switch PIO Home to native WebSockets (next step to PY3) 2018-11-28 17:23:33 +02:00
3d52710935 Bump version to 3.6.2b6 2018-11-27 00:55:30 +02:00
d475f44e49 Escape string when generating manifest for VSCode C/C++ IntelliSense service 2018-11-27 00:54:59 +02:00
7574798a3a Document "erase" target 2018-11-24 15:51:50 +02:00
9ef8d4cfe0 Docs: Grammar fixes 2018-11-24 14:30:21 +02:00
b42d0efa73 Bump version to 3.6.2b5 2018-11-21 15:00:52 +02:00
4a17a9b5b3 Improved IntelliSense for PlatformIO IDE for VSCode via passing extra compiler information for C/C++ Code Parser 2018-11-21 15:00:13 +02:00
d3909bdfa2 Bump version to 3.6.2b4 2018-11-21 00:52:54 +02:00
a2b0b2893b LDF: Stop handling "define" and "undef" when condition fails; handle CPP files in "chain+" and "deep+" modes // Resolve #1930 2018-11-21 00:52:34 +02:00
9d2499ab98 Bump version to 3.6.2b3 2018-11-20 01:23:55 +02:00
579a973512 Handle CWD when searching for a file // Resolve #1930 2018-11-20 01:23:34 +02:00
b861e9c192 Document in library.json how to pass flags to a global build environment 2018-11-20 00:50:52 +02:00
375006ee65 Bump version to 3.6.2b2 2018-11-19 22:30:52 +02:00
23af9c9027 Fix an issue when Library Dependency Finder (LDF) finds spurious dependencies in `chain+ and deep+` modes // Resolve #1930 2018-11-19 22:29:53 +02:00
7322df26ad Fix an issue when Library Dependency Finder (LDF) does not handle project src_filter // Resolve #1905 2018-11-19 19:06:56 +02:00
32bb9c9d83 Bump version to 3.6.2b1 2018-11-19 17:46:19 +02:00
b22ca10f8c Prepend CPPATH of library dependencies instead of appending // Resolve #1914 2018-11-19 17:45:53 +02:00
95beb03aad Bump version to 3.6.2a3 2018-11-18 23:54:42 +02:00
f65ab58c88 Go over 8010-8100 TCP ports when shutting down PIO Home server 2018-11-18 23:53:47 +02:00
c06a018d88 Docs: Add support for OLIMEX ESP32-PRO 2018-11-05 18:32:58 +02:00
7789e3bc62 Rename "System" to "Hardware" for board spec 2018-11-04 17:24:39 +02:00
1287e51bf8 Add info about "EN" pin for ESP32 and debug probes 2018-11-04 13:13:34 +02:00
151823f80e Fix pinouts for oddWires IOT-Bus JTAG 2018-11-02 15:48:12 +02:00
09d58d0d49 Update docs for ESP8266 lwIP profiles 2018-11-02 12:54:09 +02:00
0a6fb68840 Bump version to 3.6.2a2 2018-10-30 06:40:36 +02:00
38fb5b2234 Typo fix 2018-10-30 06:40:11 +02:00
ab6a323aca Fixed an issue with VSCode IntelliSense warning about the missed headers located in "include" folder 2018-10-30 00:27:29 +02:00
50ed828e7a Bump version to 3.6.2a1 2018-10-30 00:14:58 +02:00
692af90161 Fix incorrect wording when initializing/updating project 2018-10-30 00:14:06 +02:00
543a1dddae Sync docs 2018-10-29 22:38:20 +02:00
fce84b5a48 Add debugging support using TIAO USB Multi-Protocol adapter (TUMPA) 2018-10-29 22:27:47 +02:00
67a6f66a35 Add support for oddWires IoT-Bus Io debug tool 2018-10-29 19:23:06 +02:00
fdbebb178c Merge tag 'v3.6.1' into develop
Bump version to 3.6.1
2018-10-29 14:10:57 +02:00
0747fe9dea Merge branch 'release/v3.6.1' 2018-10-29 14:10:56 +02:00
331cd0aa0d Bump version to 3.6.1 2018-10-29 14:10:42 +02:00
8b74b12990 Don't recreate git ignore and travis configs when project is already inited 2018-10-29 14:02:29 +02:00
7a0c1e13f3 Bump version to 3.6.1rc7 2018-10-28 00:39:42 +03:00
e94d758131 Use "items" instead of "iteritems" (PY2/3) // Issue #895 2018-10-27 20:51:55 +03:00
080369f597 Make "print" compatible between Py2 & Py3 2018-10-27 20:22:11 +03:00
729178731c Improve a loading speed of PIO Home "Recent News" 2018-10-27 20:07:07 +03:00
5c278b54f7 Use "super" when calling parent class // Issue #895 2018-10-27 15:24:10 +03:00
2007491be9 Don't override existing ".gitignore" file 2018-10-27 14:20:33 +03:00
e96078b4e3 Exclude upcoming ".pio" from VCS 2018-10-27 14:18:47 +03:00
118f22bed3 PyLint fix 2018-10-26 01:27:57 +03:00
2134022565 Print board's configuration URL 2018-10-26 01:27:06 +03:00
cf2a2395e5 Sync new Atmel AVR boards 2018-10-25 19:52:55 +03:00
8947b63e41 Better formatting when asking to remove a file 2018-10-25 14:12:09 +03:00
fc8bffdd81 Ask user to remove manually a file on exception 2018-10-25 14:03:52 +03:00
75105e18ba Wait 1 seconds on Windows when PIO Home shuts down 2018-10-25 13:48:47 +03:00
3507290a20 Shutdown PIO Home server before updating tool-pioplus; Update tool-pioplus to 1.4.11 2018-10-25 13:44:41 +03:00
7cc4e8ce15 Bump version to 3.6.1rc6 2018-10-24 01:21:02 +03:00
08dc5dec89 Revert "Cache loaded project config"
This reverts commit bfee896378.
2018-10-24 01:19:54 +03:00
d92349c8f7 Add "reset" support for "memoized" 2018-10-24 01:19:39 +03:00
92289d373b Add example with $PROJECT_HASH for Windows 2018-10-24 00:23:10 +03:00
4b9e8f0ba4 Added $PROJECT_HASH template variable for build_dir 2018-10-23 22:55:26 +03:00
bfee896378 Cache loaded project config 2018-10-23 22:27:18 +03:00
e4c112608b Docs: Move "Custom target" to upper level 2018-10-23 19:21:25 +03:00
04eb531ac2 Add more example with a custom target 2018-10-23 19:12:02 +03:00
8e3020c0f8 Sync docs 2018-10-23 18:09:43 +03:00
51acd02421 Bump version to 3.6.1rc5 2018-10-22 16:49:08 +03:00
8a1b94b48c Process `build_unflags` for cloned environment when building a static library 2018-10-22 16:33:30 +03:00
e11013189b Docs: Move library manager CLI to userguide 2018-10-19 22:07:00 +03:00
98deefc4f5 Bump version to 3.6.1rc4 2018-10-19 17:48:00 +03:00
058a5e854d Skip aceinna_imu from linux builds 2018-10-19 16:50:51 +03:00
7b998c8cda Fix an issue with incorrect handling of a custom package name 2018-10-19 16:37:15 +03:00
98a1fd79b6 Revert back "Handle first part for package name" 2018-10-19 16:13:55 +03:00
e344194f86 Handle first part for package name 2018-10-19 15:58:43 +03:00
05b656e6b0 Update README for "include", "lib", and "test" directories 2018-10-17 21:56:27 +03:00
9c30472777 Generate "test" directory per project 2018-10-17 21:16:09 +03:00
016caa731d Rename "readme.txt" to README for "include" and "lib" project folder; don't create these folders if they were delated before 2018-10-17 19:58:38 +03:00
5b0befef45 Drop support for Freescale Kinetis FRDM-KL26Z, include Aceinna in platforms list 2018-10-17 14:48:53 +03:00
4b588a589d Add Aceinna dev/platform 2018-10-17 14:11:54 +03:00
1598b0632a Sync docs 2018-10-17 14:03:19 +03:00
a32c67a0ce Bump version to 3.6.1rc3 2018-10-17 01:47:08 +03:00
1183105557 Revert back an clang includes list without quotes for Atom 2018-10-17 01:46:16 +03:00
d1e4f22e7f Add docs for JTAG and SWD connectors 2018-10-16 23:01:40 +03:00
8a5b3a90cb Bump version to 3.6.1rc2 2018-10-13 19:32:54 +03:00
2b53ecb111 Improve PIO Unified Debugger for "mbed" framework and fix issue with missed local variables 2018-10-13 19:32:31 +03:00
0159b1cf7f Fixed an issue with broken includes when generating `.clang_complete` and space is used in path // Issue #1873 2018-10-12 23:04:12 +03:00
d9dd83e327 Solved issues with vim whitespaces in paths (#1873)
When a library has whitespaces in the name the path
will contain whitespace too. When vim tries to decode
path it will fail.

This fix wrap each path with quotes.
2018-10-12 22:41:13 +03:00
05fe52bda9 Bump version to 3.6.1rc1 2018-10-12 22:31:11 +03:00
6294580e25 Show a valid error when Internet is off-line while initializing a new project // Resolve #1784 2018-10-12 22:30:28 +03:00
69d01c4bc1 Fix an issue when `pio run -t monitor always uses first monitor_port` even with multiple environments // Resolve #1841 2018-10-12 21:57:57 +03:00
d4e553fb5a Generate an "include" directory with a README file when initializing a new project 2018-10-12 21:49:02 +03:00
ff8fefb797 Report about outdated 99-platformio-udev.rules // Resolve #1823 2018-10-12 19:35:58 +03:00
b77fb79cd6 Sync docs 2018-10-12 16:02:35 +03:00
00b173f13f Fix an issue when dynamic build flags were not handled correctly // Resolve #1799 2018-10-12 15:09:54 +03:00
13ff30788e Sync docs 2018-10-12 15:06:09 +03:00
842db2643d Docs: Typos in VSCode Watchpoints 2018-10-10 16:20:28 +03:00
aee0c7b9c2 Docs: Fix invalid COMPONENT_EMBED_TXTFILES macro for ESP32 2018-10-10 12:58:16 +03:00
f67cc1770d Document "Watchpoints" for VSCode 2018-10-10 02:19:03 +03:00
159cd7c073 Better explanation about overriding settings for board 2018-10-05 01:25:33 +03:00
e83a11d02a More detailed info about debug per board 2018-10-05 00:36:23 +03:00
ba2275fbba Test windows builds on x86 & x64 2018-10-04 20:20:16 +03:00
59a3a7dd55 Minor tweak to docs 2018-10-04 01:51:21 +03:00
0a7d6fb814 Revert back initial white-space for docs tables 2018-10-04 01:46:30 +03:00
94bf067639 Refactor docs for boards 2018-10-04 01:33:15 +03:00
4cd13b9d47 Bump version to 3.6.1a5 2018-10-02 00:12:29 +03:00
34325dbc4c Support in-line comments for multi-line value in platformio.ini 2018-10-02 00:11:41 +03:00
ec9fbca181 Docs: tutorial for ESP32 2018-09-30 23:32:53 +03:00
e9f2334e59 Fix lib test 2018-09-26 15:25:38 +03:00
c10b8633ab Sync docs 2018-09-23 01:47:35 +03:00
18a8b05214 Rename "fixed" to "detached" for LDF 2018-09-21 19:23:08 +03:00
22ceae0149 * Do not re-create ".gitignore" and ".travis.yml" files if they were removed from a project 2018-09-20 14:57:42 +03:00
e6fa8654ad YAPF 2018-09-20 14:55:55 +03:00
24f97ef768 Introduce RISC-V GAP dev/platform 2018-09-20 13:56:42 +03:00
f0a91df2cf Fix incorrect activation commands for PIO Core Installation (Virtual Environment) 2018-09-19 16:12:57 +03:00
a3e3c30d0d Docs: Add "Configuration" group to Library Manager 2018-09-19 16:03:43 +03:00
421694ce0c Sync docs 2018-09-10 22:37:25 +03:00
3c4d978c1c Document URL Handlers for device port monitor // Resolve #1838 2018-09-10 21:20:28 +03:00
e5fc18fddb Sync docs 2018-09-06 22:50:59 +03:00
535048c420 Bump version to 3.6.1a4 2018-09-06 22:26:43 +03:00
b7ac59066f Revert back "PIO Debug (skip Pre-Debug)" debug configuration for VSCode 2018-09-06 22:21:46 +03:00
4b2a63db1f Bump version to 3.6.1a3 2018-09-06 16:35:03 +03:00
a477e8cb23 Default VSCode Debug configuration without Pre-Debug 2018-09-06 16:34:27 +03:00
7108b2fdd4 Introduce "Release" and "Debug" Build Configurations 2018-09-06 14:42:37 +03:00
e6e629d2c5 Bump version to 3.6.1a2 2018-09-06 02:26:14 +03:00
f54d32843a Add "debug" target, update docs for "uploads" option // Resolve #1833 2018-09-06 02:25:28 +03:00
ce47b6f69f Docs: update tutorials 2018-09-06 01:26:08 +03:00
4f0c60edfa Clean cache on PIO Core update 2018-09-02 19:32:45 +03:00
6caa7f30ac Fix typos (#1819) 2018-08-30 20:22:36 +03:00
b43f243f6a Sync docs 2018-08-28 22:08:28 +03:00
abbe30ef97 Docs: Add info about drivers to the tutorial requirements // Resolve #1802 2018-08-27 19:21:12 +03:00
8d1ff91af1 Bump version to 3.6.1a1 2018-08-27 18:56:06 +03:00
78c383eb68 Use Pre-Debug task by its VSCode defination 2018-08-27 18:55:08 +03:00
476a878733 Skip Intel MCS-51 tests for Linux 2018-08-20 20:54:07 +03:00
d109e4756d Initial support for Intel MCS-51 (8051) 2018-08-20 19:37:34 +03:00
d448a0ec5c Switch docs to HTTPS 2018-08-15 19:44:02 +03:00
d009b997bc Auto-dropdown navigation; move "Docs" to the right side 2018-08-15 19:12:41 +03:00
9258763491 Correct docs for SemVer/Deps syntax 2018-08-15 14:38:19 +03:00
79e6df7263 Temporary hook for ReadTheDocs #2971 with a broken "edit" link 2018-08-14 14:36:03 +03:00
4ff013c0fe Improve docs for advanced scripting 2018-08-14 14:24:03 +03:00
71cdc9fe78 Docs: Add compatible platforms, frameworks, and boards per debug tool 2018-08-11 15:34:33 +03:00
e3d17d132a Docs: Improve "Drivers" section for debugging tools 2018-08-10 14:33:36 +03:00
70eedfbeec Merge branch 'release/v3.6.0' 2018-08-06 18:46:23 +03:00
c3d598f488 Merge tag 'v3.6.0' into develop
Bump version to 3.6.0 (issues #1594 #1412 #1462 #1735)
2018-08-06 18:46:23 +03:00
6d5dc60b47 Bump version to 3.6.0 (issues #1594 #1412 #1462 #1735) 2018-08-06 18:43:58 +03:00
129146e82e Bump version to 3.6.0rc1 2018-08-03 21:44:41 +03:00
df923bf17e Add package "lib" folder to LD_PATH 2018-08-03 21:43:40 +03:00
8f19dd50fe Docs: Fix "build_flags" examples with a macro where special chars are used 2018-08-02 17:57:57 +03:00
ab1d1f248c Refactor docs for PIO Unified debug tools 2018-07-30 19:39:31 +03:00
617f51b9ea Improve docs for PIO Unified Debugger 2018-07-30 18:13:04 +03:00
41432d4075 Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Fixed an issue with PIO Remote  when upload process depends on the source code of a project framework
2018-07-30 14:26:35 +03:00
ae964fa729 Fixed an issue with PIO Remote when upload process depends on the source code of a project framework 2018-07-30 14:26:24 +03:00
9a5f9843b9 Bump version to 3.6.0a11 2018-07-28 12:51:52 +03:00
44175f87b1 Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Fix broken unit testing when mbed framework is used
2018-07-28 12:49:33 +03:00
2f2cfc2d84 Fix broken unit testing when mbed framework is used 2018-07-28 12:49:22 +03:00
d9e908fceb Test 3 random examples from each dev/platform 2018-07-27 15:45:51 +03:00
98aa47c885 Drop support for codecov.io 2018-07-27 15:38:46 +03:00
c777b0095d Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Fix an issue when "srcFilter" field in "library.json" breaks a library build // Resolve #1735
  Fix "test_lib" test
2018-07-27 01:27:17 +03:00
9191ea97fe Fix an issue when "srcFilter" field in "library.json" breaks a library build // Resolve #1735 2018-07-27 01:27:05 +03:00
fedf3162f1 Fix "test_lib" test 2018-07-27 00:48:13 +03:00
89fc77d87a Docs: Add Community link in TOP menu 2018-07-26 20:46:43 +03:00
2004c9b079 Fix "test_lib" test 2018-07-26 20:46:21 +03:00
5aaa9cf205 Fix "Home: Internal Store Exception" // Resolve #1756 2018-07-25 22:25:47 +03:00
9b15ec417b Document solution for "ImportError: cannot import name _remove_dead_weakref" 2018-07-25 15:58:47 +03:00
42540d4207 Docs: Fix broken example for "Dynamic build flags" 2018-07-23 22:49:25 +03:00
72bfa4a1e2 Bump version to 3.6.0a10 2018-07-20 13:35:52 +03:00
7b8342cd9a Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Typo fix
2018-07-20 13:35:22 +03:00
a206b2e4fd Typo fix 2018-07-20 13:35:06 +03:00
6e8ce56206 Disable requirements status temporary 2018-07-20 02:10:50 +03:00
7c2c0ba1aa Bump version to 3.6.0a9 2018-07-20 02:09:40 +03:00
f130b5bfb6 Disable requirements status temporary 2018-07-20 02:07:07 +03:00
bf23d85005 Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Add "test_build_project_src" option for PIO Unit Testing
2018-07-20 02:05:01 +03:00
903b41b336 Add "test_build_project_src" option for PIO Unit Testing 2018-07-20 02:04:40 +03:00
ab24ca4ff6 Cleanup 2018-07-20 00:33:24 +03:00
fd8b603910 Update README 2018-07-19 19:00:09 +03:00
e4462d7546 Add Infineon XMC dev/platform // Resolve #471 2018-07-19 16:19:10 +03:00
aa796959c9 Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Fix PIO Unit Testing issue when ``UNIT_TEST`` macro was not set in a build environment
  Append __PLATFORMIO_DEBUG__ macro in debug session
  Add udev rules for J-Link devices
  Disable exec command for Sublime Text debugger

# Conflicts:
#	HISTORY.rst
2018-07-19 15:28:58 +03:00
ff3ce2d69e Fix PIO Unit Testing issue when `UNIT_TEST` macro was not set in a build environment 2018-07-19 15:27:00 +03:00
ff59dcefe0 Append __PLATFORMIO_DEBUG__ macro in debug session 2018-07-19 01:44:12 +03:00
3f2f79ade4 Add udev rules for J-Link devices 2018-07-19 01:43:31 +03:00
bc380714bd Disable exec command for Sublime Text debugger 2018-07-19 01:43:15 +03:00
2ba41cddc4 Disable exec command for Sublime Text debugger 2018-07-17 20:58:20 +03:00
4a14cc686c Add udev rules for J-Link devices 2018-07-17 20:57:41 +03:00
734cb5c7aa Bump version to 3.6.0a8 2018-07-17 16:24:38 +03:00
da89f57046 PIO Home 1.0.0; PIO Plus 1.4.0 2018-07-17 16:24:02 +03:00
4a3b616b0f Sync docs 2018-07-16 17:45:52 +03:00
a14f2d291e Improve checking of package structure after unpacking // Issue #1462 2018-07-15 01:06:59 +03:00
72d260c295 Fix file locking of package installer // Issue #1594 2018-07-15 00:43:12 +03:00
e1578dabac Lock interprocess requests to PlatformIO Package Manager for install/uninstall operations // Resolve #1462 2018-07-14 22:10:56 +03:00
f2c4ba1895 Check item after unpacking only if not symbolic link 2018-07-13 13:10:24 +03:00
695a850979 Bump version to 3.6.0a7 2018-07-13 12:16:44 +03:00
1d7d518ec5 Temporary disable checking of extracted item from archive 2018-07-13 12:15:07 +03:00
44a926b30a Check package structure after unpacking and raise error when antivirus tool blocks PlatformIO package manager // Resolve #1462 2018-07-13 01:54:37 +03:00
735cfbf850 Fix "Cannot uninstall 'pyparsing'" for macOS CI build 2018-07-13 00:25:50 +03:00
6b6c60e82c Fix "Cannot uninstall 'pyparsing'" for macOS CI build 2018-07-13 00:04:16 +03:00
cb7717eaf6 Update docs for creating a custom dev/platform 2018-07-12 20:52:25 +03:00
28a76eb389 Update ISSUE_TEMPLATE.md 2018-07-12 01:26:02 +03:00
0fdfb273c6 Update ISSUE_TEMPLATE.md 2018-07-12 01:23:59 +03:00
eced1c4c2a Update ISSUE_TEMPLATE.md 2018-07-12 01:23:24 +03:00
7d6192b069 Update ISSUE_TEMPLATE.md 2018-07-12 01:22:18 +03:00
23f0ffdfeb Append __PLATFORMIO_DEBUG__ macro in debug session 2018-07-10 15:54:46 +03:00
f7ac71d48e Docs: `projenv` is available only for POST-type scripts 2018-07-10 00:59:01 +03:00
9af715e872 Improve docs for Advanced Scripting section 2018-07-08 18:58:04 +03:00
dae50a32c0 Docs: Info about connection Vbus [CN3-1] to Vcc [CN3-3] of FT2232H Mini-Module 2018-07-07 20:34:34 +03:00
ca37190da4 Update docs for PIO Unified Debugger; add wiring connections and debug probes pictures 2018-07-07 01:35:52 +03:00
7c5c5b5f70 Bump version to 3.6.0a6 2018-07-06 15:26:45 +03:00
83ccf96f36 Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Export extra flash images for IDE
  Update core dependencies
2018-07-06 15:26:01 +03:00
c1f4b729ea Export extra flash images for IDE 2018-07-06 15:25:51 +03:00
1c8ac97073 Update core dependencies 2018-07-06 15:25:26 +03:00
fd88a249b4 Update core dependencies 2018-07-06 15:23:23 +03:00
d8329a6868 ThingForward: First steps with PlatformIO’s Unified Debugger 2018-07-05 18:53:47 +03:00
5c48233259 Docs: Install PIO Core into Virtual Environment 2018-07-05 17:49:27 +03:00
5efe0e4f8c Merge branch 'hotfix/v3.5.5' into develop
* hotfix/v3.5.5:
  Shorten a name for VSCode debug launch configurations
2018-07-04 00:06:54 +03:00
8f88939aa0 Shorten a name for VSCode debug launch configurations 2018-07-04 00:06:44 +03:00
a58535d95c Bump version to 3.6.0a5 2018-07-03 15:15:44 +03:00
a4173f5de1 Merge tag 'v3.5.4' into develop
Bump version to 3.5.4

# Conflicts:
#	HISTORY.rst
#	platformio/__init__.py
2018-07-03 15:14:28 +03:00
dc3973b046 Merge branch 'hotfix/v3.5.4' 2018-07-03 15:11:32 +03:00
7a5af4b180 Bump version to 3.5.4 (issues #1712, #1705, #1023, #1254, #1658, #1054, #1683, #1343, #1665) 2018-07-03 15:10:39 +03:00
25b562e1c1 Added workaround for Python SemVer package's issue 61 with caret range and pre-releases 2018-07-03 14:55:48 +03:00
6dada01e70 Disable macOS frameworks for VSCode IntelliSense 2018-07-03 14:17:38 +03:00
3956dae01e Sync docs 2018-07-02 18:02:00 +03:00
19711d75e0 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Typo fix
2018-06-30 21:05:40 +03:00
5b1b05cd09 Typo fix 2018-06-30 21:05:20 +03:00
3e0feeabb4 Bump version to 3.6.0a4 2018-06-30 19:48:30 +03:00
e21ac05e71 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Improve removing of default build flags using `build_unflags` option // Resolve #1712
  Export ``LIBS``, ``LIBPATH``, and ``LINKFLAGS`` data from project dependent libraries to the global build environment
  Replace "env" pattern by "sysenv" in "platformio.ini" // Resolve #1705
2018-06-30 19:36:02 +03:00
4adc73ebe2 Improve removing of default build flags using build_unflags option // Resolve #1712 2018-06-30 19:34:24 +03:00
357e70e5bb Export `LIBS, LIBPATH, and LINKFLAGS` data from project dependent libraries to the global build environment 2018-06-30 18:24:50 +03:00
ca3567df1e Replace "env" pattern by "sysenv" in "platformio.ini" // Resolve #1705 2018-06-29 19:55:29 +03:00
9bd033e288 Update ESP32 boards flash size // Resolve #30 2018-06-29 19:29:32 +03:00
7564e00fc4 Introduce Premium Support 2018-06-29 17:01:13 +03:00
f1a8add795 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Switch to PIO Plus support
2018-06-28 23:57:38 +03:00
d6ca30a920 Switch to PIO Plus support 2018-06-28 23:57:16 +03:00
c8f6907d02 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Export PIOCOREPYSITEDIR to system environment
2018-06-26 01:34:37 +03:00
369868624e Export PIOCOREPYSITEDIR to system environment 2018-06-26 01:34:26 +03:00
dfecc04901 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Export PIOPYSITEDIR to system environment
2018-06-26 01:33:30 +03:00
e9fe2856ec Export PIOPYSITEDIR to system environment 2018-06-26 01:33:12 +03:00
0ba9b341cd Add new Olimex debug tools for ESP32: ARM-USB-OCD and ARM-USB-TINY 2018-06-26 01:01:37 +03:00
9cff2d3206 Sync docs 2018-06-25 15:52:57 +03:00
ab8497e7ce [VIDEO OVERVIEW] ThingForward - Intro to PIO Unified Debugger using ARM mbed OS and PlatformIO IDE for VSCode 2018-06-25 15:47:01 +03:00
f0cd122952 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Fix broken history
2018-06-25 15:46:32 +03:00
b83acf4297 Fix broken history 2018-06-25 15:46:21 +03:00
89d403879e Docs: Reorder TOP menu 2018-06-23 19:32:58 +03:00
b7ad64226e Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Fix issue when "platformio lib uninstall" removes initial source code // Resolve #1023
2018-06-21 21:34:07 +03:00
2725d8da8b Fix issue when "platformio lib uninstall" removes initial source code // Resolve #1023 2018-06-21 21:33:56 +03:00
08759700b6 Add udev rule for Maple Leaf board (#1699) 2018-06-21 13:45:43 +03:00
7cac351d25 Bump version to 3.6.0a3 2018-06-20 16:33:13 +03:00
f62bde0e38 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Handle ConfigParser erros
2018-06-20 16:32:48 +03:00
a9577bc0ba Handle ConfigParser erros 2018-06-20 16:32:38 +03:00
ee69c13b2d Handle ConfigParser erros 2018-06-20 16:31:03 +03:00
3c6f57ac5c Custom tasks for VScode 2018-06-20 15:48:14 +03:00
4d48c365f5 Autogenerate examples for platforms and frameworks 2018-06-16 21:11:31 +03:00
a3cda59d70 Refactor docs menu 2018-06-16 18:41:46 +03:00
22b5e4e5c0 Remove examples with cart range for SemVer (issue with dependent Python package) 2018-06-15 17:53:04 +03:00
19844c89c1 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Fix preprocessor for Arduino sketch when function returns certain type // Resolve #1683
2018-06-15 15:55:30 +03:00
c055ed4850 Fix preprocessor for Arduino sketch when function returns certain type // Resolve #1683 2018-06-15 15:55:17 +03:00
6f905e319f Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Removed "date&time" when processing project with "platformio run" command // Resolve #1343
  Improve documentation for advanced scripting
2018-06-15 15:03:15 +03:00
389783adae Removed "date&time" when processing project with "platformio run" command // Resolve #1343 2018-06-15 14:53:48 +03:00
46a62de14c Improve documentation for advanced scripting 2018-06-15 14:33:05 +03:00
38c74b3f78 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Handle "architectures" data from "library.properties" manifest in `lib_compat_mode = strict`
2018-06-12 13:47:29 +03:00
92fc308590 Handle "architectures" data from "library.properties" manifest in lib_compat_mode = strict 2018-06-12 13:47:16 +03:00
0f9c213796 Bump version to 3.6.0a2 2018-06-11 22:55:28 +03:00
a6831d9783 Merge branch 'hotfix/v3.5.4' into develop
* hotfix/v3.5.4:
  Isolate build environment for "BuildSources" nodes
  Append a main LD script at the beginning
  Bump version to 3.5.4a1
  Fixed issue with invalid LD script if path contains space
  Don't export ``CPPPATH`` of project dependent libraries to frameworks // Resolve #1665
  YAPF

# Conflicts:
#	HISTORY.rst
#	platformio/__init__.py
#	platformio/builder/tools/pioupload.py
2018-06-11 18:41:39 +03:00
2ba7c47603 Temporary disable raising error when program data size excesses declared in board manfiest 2018-06-10 01:56:48 +03:00
786d505ecb Isolate build environment for "BuildSources" nodes 2018-06-10 01:27:50 +03:00
00c0eaed8a Append a main LD script at the beginning 2018-06-09 14:50:54 +03:00
46c904e67d Bump version to 3.5.4a1 2018-06-09 01:37:38 +03:00
f9fde5d627 Fixed issue with invalid LD script if path contains space 2018-06-09 00:48:42 +03:00
75754a4750 Don't export `CPPPATH` of project dependent libraries to frameworks // Resolve #1665 2018-06-08 21:38:41 +03:00
a584ac1da2 YAPF 2018-06-08 21:37:57 +03:00
2ff88837ec Sync docs 2018-06-08 18:37:05 +03:00
4528ca0365 Bump version to 3.6.0a1 2018-06-04 16:38:53 +03:00
bfc94d36e3 Introduce "Program Memory Usage" 2018-06-04 14:09:48 +03:00
2fb8128791 YAPF 2018-06-02 16:14:58 +03:00
20c1ce40d3 Check maximum allowed firmware size for uploading with "pio run --target checkprogsize" // Resolve #1412 2018-06-01 18:07:47 +03:00
ecaa9d90b3 Continue work on PIO Core 3.5.4 2018-06-01 17:02:49 +03:00
c0b069c920 Merge branch 'release/v3.5.3' 2018-06-01 17:01:46 +03:00
551f0c1514 Merge tag 'v3.5.3' into develop
Bump version to 3.5.3
2018-06-01 17:01:46 +03:00
7db04b1c3f Bump version to 3.5.3 (issue #1641 issue #1612 issue #1473 issue #1528 issue #1546 issue #1282 issue #1516 issue #1381 issue #1474) 2018-06-01 17:01:32 +03:00
32dbf22d44 ESP32: Calculate an absolute path for a custom partitions table 2018-05-31 20:03:03 +03:00
3243a84dba Fix incorrect handling of C/C++ standards passed via build_flags 2018-05-31 16:38:33 +03:00
f465befa68 Rename "Standalone" to "Desktop" for IDE 2018-05-31 16:11:22 +03:00
f4b4f5c434 Improve docs for lib_ignore option 2018-05-31 15:21:39 +03:00
ffc94a88fe Sync dccs 2018-05-31 14:31:28 +03:00
fb29c9c0f6 Support old version of monitor_baud option for device monitor 2018-05-30 20:25:59 +03:00
df437995df Enable C++ exceptions for ESP32 and ESP-IDF 2018-05-30 19:12:30 +03:00
e4440ed94c Bump version to 3.5.3rc2 2018-05-30 14:16:46 +03:00
b213a302e3 Handle _MCU and _F_CPU variables for AVR native // Resolve #1641 2018-05-30 14:14:42 +03:00
d50dfe19d9 Bump version to 3.5.3rc1 2018-05-26 01:04:38 +03:00
9ba5dc0a60 Override any option from board manifest in Project Configuration File "platformio.ini" // Resolve #1612 2018-05-26 01:02:52 +03:00
5011c3e21c API to update BoardConfig manifest 2018-05-25 21:18:08 +03:00
e48e15b014 Fix "memoized" helper when "expire" is not used 2018-05-25 21:13:47 +03:00
357c932a88 Fix broken link 2018-05-25 19:06:23 +03:00
2f07a58e4f Split stable/upstream docs for dev/platforms 2018-05-25 16:17:02 +03:00
4a2594c12e Docs: revert back to 'sphinx' theme for Pygments 2018-05-25 15:31:31 +03:00
8cda6db02d Rename LDF compatibility mode from "light" to "soft" 2018-05-25 01:46:53 +03:00
f7053928f0 Better explanation how to switch between stable/upstream dev/platforms 2018-05-15 17:22:03 -07:00
e22335984f Default debugging configuration for ESP-WROVER-KIT 2018-05-15 15:23:09 -07:00
6a1a1956c8 Docs: add ft2232h as debug tool 2018-05-15 15:13:11 -07:00
98852caefa Bump version to 3.5.3b5 2018-05-15 14:06:12 -07:00
e399c6b363 Fix issue with monitor_speed option 2018-05-15 14:05:29 -07:00
cb2c3b1b63 Bump version to 3.5.3b4 2018-05-14 22:14:10 -07:00
19003ea51b Simplify configuration for PIO Unit Testing 2018-05-14 22:13:42 -07:00
29064b6c63 Rename "monitor_baud" option to "monitor_speed" 2018-05-14 18:53:16 -07:00
ba352454ed RISC-V dev/platform; Debug for ESP32 2018-05-11 20:02:33 +03:00
5ee194b2b9 Document "Debug Level" for ESP32 2018-05-11 03:06:28 +03:00
9d566d8905 Add debugger to env PATH 2018-05-11 03:06:18 +03:00
b310c57136 Document the missed "--project-dir" and "--environment" options for pio device monitor 2018-05-09 15:35:06 +03:00
9aa5f16b49 Update link to PIO Unified Debugger / Community 2018-05-08 21:31:55 +03:00
4fac523811 Bump version to 3.5.3b3 2018-05-08 18:24:13 +03:00
2bb22a86d7 New UI for PIO Unified Debugger and VSCode 2018-05-08 18:23:27 +03:00
39aaae303f Use "debug_init_break" for Eclipse 2018-05-08 18:22:56 +03:00
1310b7b07b Add OTA demo for ESP32 2018-05-05 23:51:59 +03:00
18f6f23271 Fix default OTA port for ESP32 2018-05-05 21:30:18 +03:00
366efacd81 Prepend upload flags instead of "append" 2018-05-05 21:15:50 +03:00
7be1af4241 Do not check if a custom SVD file exists 2018-05-02 12:37:51 +03:00
d0bc40bc24 Update history 2018-05-01 21:16:32 +03:00
73b1d9ccd5 Configure a custom path to SVD file using "debug_svd_path" option 2018-05-01 21:09:32 +03:00
94c27ae30f Update PIO Core deps 2018-05-01 00:58:36 +03:00
b476e298d3 Bump version to 3.5.3b2 2018-04-30 16:50:23 +03:00
c9fa2206ef Normalize SVD path 2018-04-30 12:33:19 +03:00
b1caaa2208 Export path to SVD file for IDEs 2018-04-27 20:37:41 +03:00
f46072f769 Generate beta configuration for the new PIO Debugger for VSCode 2018-04-27 18:01:08 +03:00
7de4d6aeef PyLint fix 2018-04-27 12:57:11 +03:00
31f14274af Ignore idedata event 2018-04-27 01:41:28 +03:00
50c568c232 Fix "RuntimeError: maximum recursion depth exceeded" for library manager // Resolve #1528 2018-04-26 01:49:16 +03:00
3bcc3e07ae Respect a custom "lib_dir" option in platformio.ini // Resolve #1473 2018-04-25 17:15:40 +03:00
2ae169d210 Fix "RuntimeError: maximum recursion depth exceeded" for library manager // Resolve #1528 2018-04-25 16:57:43 +03:00
1c68409a08 Improve support for Black Magic Probe in "uploader" role 2018-04-23 17:30:05 +03:00
f981916f1d Docs: ESP8266 VTables 2018-04-21 01:00:55 +03:00
0a9031e448 Switch to shutil.move instead of os.rename // Resolve #1584 2018-04-20 21:27:52 +03:00
2d1daa756d Docs: Custom lwIP Variant and debug levels for ESP8266 2018-04-20 21:02:52 +03:00
6b6860196a Fix issue with "build_unparse" for string items 2018-04-20 19:10:20 +03:00
ccb63a9ecc Bump version to 3.5.3b1 2018-04-20 15:55:29 +03:00
3ce62fbafe Escape compiler path for Win 2018-04-20 14:00:40 +03:00
b77160d363 Upgrade VSCode CPP manifest to v3 2018-04-20 13:56:04 +03:00
6a04f52620 Add info about "library.json" to README instruction 2018-04-15 06:28:02 +03:00
aa28beddd8 Handle broken JSON files 2018-04-15 06:08:29 +03:00
d0cc3a045e Handle unknown packages when do cleaning // Resolve #1282 2018-04-15 05:48:38 +03:00
02efe4f7f3 Bump version to 3.5.3a9 2018-04-12 18:47:12 -07:00
2c0ca3e437 Update PIO Home and PIO Core+ 2018-04-12 18:46:11 -07:00
aa8de4ff4b Export "docs" from platform manifest 2018-04-12 18:44:38 -07:00
59fe190f20 Better handling of VSCode Terminal IOError 2018-04-05 22:10:28 -07:00
e0fc44aa42 Reinit download session when IOError 2018-04-05 13:08:23 -07:00
e7b5a14e11 Temporary workaround for VSCode's "IOError: PackageManager" issue 2018-04-05 11:06:23 -07:00
0710c094e7 Bump version to 3.5.3a8 2018-04-01 10:31:47 -07:00
1410dd093a Revert back g++ macro from dump list // Issue #1546 2018-04-01 10:28:25 -07:00
d1362c3751 Article: Building a Web Of Things REST-API on an Arduino MKR1000 with PlatformIO 2018-03-27 22:29:26 +03:00
2299383b03 Docs: Update example "J-Link as debugger and uploader" 2018-03-24 15:31:08 +02:00
622e4033c1 Dump g++ macros for IDE 2018-03-24 12:45:00 +02:00
ec9a2b02ea Verify mDNS devices before dumping // Issue #1381 2018-03-23 17:51:45 +02:00
275648a882 Check for non-ASCII chars mDNS service // Issue #1381 2018-03-23 13:54:33 +02:00
5214b32ee3 Print request URL when package fails 2018-03-23 13:50:33 +02:00
c1c2be0b58 Bump version to 3.5.3a7 2018-03-23 12:14:40 +02:00
44fc500c93 Fix issue with incorrect API result 2018-03-23 12:13:59 +02:00
b6d2e1b243 Bump version to 3.5.3a6 2018-03-23 00:09:05 +02:00
d54327f1a9 Refactor @memoized decorator with expiration feature; cache installed boards per platform 2018-03-23 00:08:07 +02:00
0f4ab5b50b Update Unity tool to 2.4.3 2018-03-22 18:18:03 +02:00
ca34da51aa PIO Home: sort folders by name (ignore case), catch ServerError exceptions // Resolve #1454 Resolve #1302 2018-03-22 17:37:51 +02:00
f937eabc1a Handle error connections to the latest news for PIO Home // Resolve #1470 Resolve #1474 Resolve #1478 Resolve #1480 2018-03-22 16:14:11 +02:00
e019341e59 Bump version to 3.5.3a5 2018-03-22 12:11:46 +02:00
50b2bc07dc Add PlatformIO IDE as recommended extension for VSCode's workspace 2018-03-22 12:10:16 +02:00
8f7206b186 Use absolute path for CPP includes when exporting data to IDE 2018-03-22 12:09:36 +02:00
1461953341 Process "unflags" after frameworks 2018-03-21 19:49:45 +02:00
cd3245960b ThingForward, Webinar: Unit Testing for Embedded with PlatformIO and Qt Creator 2018-03-21 19:49:06 +02:00
580c0601cf Add example with POST scripting and changing of build flags in runtime 2018-03-20 19:32:00 +02:00
979a6a80f0 Fix issue which did not allow to override runtime build environment using extra POST script 2018-03-20 19:24:05 +02:00
6f9fac5663 YAPF for test 2018-03-20 16:10:11 +02:00
85730619f4 Ignore ".pytest_cache" from sources 2018-03-20 16:08:22 +02:00
61374f15f1 Fix issue with `build_unflags` option when a macro contains value 2018-03-20 16:06:39 +02:00
ad52f618cf Save data in UTF-8 by default 2018-03-20 01:14:29 +02:00
bbb32607ed Catch UnicodeError when saving content cache 2018-03-20 01:06:05 +02:00
669ef3cc93 Bump version to 3.5.3a4 2018-03-20 00:42:37 +02:00
d47022b8c3 PIO Home: Recent news 2018-03-20 00:42:10 +02:00
c20cd1b464 Do not load automaically JSON from cached resources 2018-03-19 17:16:51 +02:00
3161e5f606 Bump version to 3.5.3a3 2018-03-16 14:13:00 +02:00
233d48fac0 Describe a project with "description" option for "platformio.ini" 2018-03-16 14:12:05 +02:00
218a1dccf6 Fix issue with installing only the one platform package by specified type 2018-03-16 13:33:59 +02:00
02bad10652 Do not show duplicated upload protocols 2018-03-15 20:53:23 +02:00
7495160374 Bump version to 3.5.3a2 2018-03-15 19:53:47 +02:00
3663dc3470 Fix issue with useless project rebuilding for case insensitive file systems (Windows) 2018-03-15 19:53:05 +02:00
d2b34d42f7 Docs: Fix missed "s" for "99-platformio-udev.rules" 2018-03-14 11:36:30 +02:00
b78a151706 Update requirements for PIO Home and PIO Core+ contribs 2018-03-13 22:59:02 +02:00
6a49df7dfe Start a work on PIO Core 3.5.3 2018-03-13 12:02:25 +02:00
f79e2e38ef Merge branch 'release/v3.5.2' 2018-03-13 12:00:28 +02:00
bc323252e8 Bump version to 3.5.2 (issue #1301 issue #1313 issue #1323 issue #1303 issue #1029 issue #1310 issue #1390 issue #1312 issue #1433) 2018-03-13 12:00:01 +02:00
f63a6d73ee Add "include_dir" to known options list // Resolve #1433 2018-03-12 19:22:55 +02:00
5e6d1d9361 Fix CLion not recognizing includes in lib and .piolibdeps (#1429) 2018-03-12 16:58:08 +02:00
7e875553c2 Allow to control maximum depth of nested includes for conditional PreProcessor 2018-03-08 16:29:09 +02:00
105cd0fa71 Use custom object suffix only for Arduino/Energia frameworks 2018-03-07 23:35:03 +02:00
8676f471f1 Docs: Update url for Sanguino boards 2018-03-07 22:48:21 +02:00
93d524a392 Bump version to 3.5.2rc4 2018-03-07 20:47:09 +02:00
e5b73dcd2b Fix issue when custom board is used with the same ID 2018-03-07 20:46:31 +02:00
ade6c25056 Docs: Arduino Core ESP32 Wiki 2018-03-07 17:01:53 +02:00
e0ce40d6b3 Ability to specify a name for new project 2018-03-07 16:30:21 +02:00
90993ec69f Docs: Show onboard debug tools before 2018-03-07 13:48:59 +02:00
3269d243a8 Firmware memory size explanation: text, data and bss 2018-03-06 12:06:52 +02:00
ef861ed702 Use workspace folder for VSCode CPP tool DB files 2018-03-06 10:38:41 +02:00
b1c9eb9022 Bump version to 3.5.2rc3 2018-03-05 15:51:23 +02:00
3d300414ac Multiple themes (Dark & Light) for PlatformIO Home 2018-03-05 15:50:49 +02:00
3a16ecbaa1 Typo fix 2018-03-04 11:29:03 +02:00
9415b369e1 Bump version to 3.5.2rc2 2018-03-03 14:37:08 +02:00
6ec1890f52 Fix GitHub's "TLSV1_ALERT_PROTOCOL_VERSION" issue when upgrading PIO Core to development version 2018-03-03 14:36:17 +02:00
d1c7f56950 Add example with a custom name for library dependency 2018-03-02 14:40:35 +02:00
2ccb30b0f0 Print VCS version if available in LDF Graph 2018-03-02 14:31:24 +02:00
e95354afeb Bump version to 3.5.2rc1 2018-02-24 01:51:07 +02:00
cfb9ec77ce Keep VSCode CPP DB in workspace 2018-02-24 01:40:49 +02:00
3a52f35fe5 Add "udev" to FAQ 2018-02-20 15:06:35 +02:00
ba0e87b978 Fix issue with mDNS lookup service // Resolve #1310 2018-02-20 14:38:47 +02:00
1cb1af3375 Revert back caching for Travis.CI 2018-02-20 14:29:20 +02:00
7c0cd12f80 Builder: append target suffix to the filename instead of replacing 2018-02-20 01:15:52 +02:00
a3457dfca6 Bump version to 3.5.2b5 2018-02-20 01:11:25 +02:00
cdee242333 Builder: append target suffix to the filename instead of replacing 2018-02-20 01:10:27 +02:00
aa0b6c2071 Sync boards from ST STM32 2018-02-19 20:37:57 +02:00
be306224e3 Document creating of a "Custom build target" 2018-02-17 17:13:30 +02:00
1fce214a6b Bump version to 3.5.2b4 2018-02-16 14:53:00 +02:00
f1f42c6888 Fix issue with PIO Unified Debugger and "debug_load_mode = always" 2018-02-16 14:52:36 +02:00
1d6dcb1c5a Bump version to 3.5.2b3 2018-02-15 19:44:51 +02:00
6b36a29858 Control PIO Unified Debugger and its firmware loading mode using "debug_load_mode" option 2018-02-15 19:44:29 +02:00
18c6fe98ee Search for a library using PIO Library Registry ID 2018-02-15 02:00:12 +02:00
f86885a523 Typo fix 2018-02-13 23:21:19 +02:00
0c2f973412 Mark project source and library directories for CLion IDE // Resolve #1359 Resolve #897 Resolve #1345 2018-02-13 19:24:02 +02:00
591e876660 Move http://platformio.org to https://platformio.org 2018-02-13 01:34:24 +02:00
acefc8d276 Remove debug code 2018-02-13 00:19:07 +02:00
0763a54af3 Add Atmel-ICE debugging tool 2018-02-12 19:32:02 +02:00
d7f7418812 Sync docs with hardware changes 2018-02-12 18:31:31 +02:00
06cce20707 Minor formatting to the system info 2018-02-12 17:27:20 +02:00
b553b8f9df Sort debug tools by name 2018-02-10 18:09:23 +02:00
8736e7bfb0 Bump version to 3.5.2b2 2018-02-10 17:00:45 +02:00
231bd8b294 Implement autodetecting of default debug tool 2018-02-09 21:47:59 +02:00
cc08bb0fd0 Document how to switch between stable release and upstream dev/platform 2018-02-09 14:31:22 +02:00
46cca359e7 Bump version to 3.5.2b1 2018-02-09 01:30:35 +02:00
aac0b29929 Dump only "platform, board and framework" by default when processing environment 2018-02-09 01:23:02 +02:00
f7023aa8ff Print platform information while processing environment 2018-02-07 19:44:02 +02:00
904c5464c3 Add user libraries before built-in (frameworks, toolchains) 2018-02-07 15:28:34 +02:00
31edb2a570 Minor fix 2018-02-06 11:27:44 +02:00
d428d18fae Bump version to 3.5.2a8 2018-02-06 11:26:26 +02:00
e7e80ff152 Fix issue when no environment is specified 2018-02-06 11:25:38 +02:00
1362630ed6 Raise an error when invalid environment name was set for env_default option 2018-02-06 01:54:34 +02:00
e5543b2aee Fix broken RST 2018-02-06 00:36:52 +02:00
53afdc5e02 Fix project generator for Qt Creator IDE // Resolve #1303 Resolve #1323 2018-02-05 21:44:37 +02:00
20641bb4ff Sync docs 2018-02-05 17:30:44 +02:00
33a05fa7ca Update README 2018-02-05 13:16:12 +02:00
f358a4ff57 Ignore unit-testing/calculator from CI test 2018-02-05 12:25:24 +02:00
aa57924488 Fix command:ci test 2018-02-04 01:46:57 +02:00
c5af85f123 Fix issue with multiple OneWire libs and infinite pause 2018-02-04 01:04:53 +02:00
55b8ff7e74 Fold install dev/platform output for CI 2018-02-04 00:08:28 +02:00
8913f1b1ea Don't install desktop dev/platforms 2018-02-03 23:04:46 +02:00
4360ff7463 Use examples from dev/platforms for test 2018-02-03 22:59:41 +02:00
718d1f2de1 Use examples from development platforms 2018-02-03 21:08:45 +02:00
195444b253 Refactor dev/platforms and frameworks docs 2018-02-03 01:34:01 +02:00
17dc5f594f VSCode: Show debug console for each session 2018-02-02 17:51:54 +02:00
3b99dabbf4 Add example with executing of a custom script before upload action 2018-02-01 22:20:26 +02:00
c9e578f977 Do not show debug console by default for VSCode 2018-01-31 01:11:25 +02:00
00782fc624 Cosmetic changes 2018-01-30 23:31:21 +02:00
19d2dfdad0 Bump version to 3.5.2a7 2018-01-30 21:34:10 +02:00
1890162f3f VSCode: add a new "Pre-Debug" task and run it before debugging session 2018-01-30 21:33:56 +02:00
4980d3e4bb Bump version to 3.5.2a6 2018-01-30 15:25:17 +02:00
fc53cb4489 Revert back to SCons 2.0, a lot of issues with non-unicode locales // Issue #895 2018-01-30 15:14:55 +02:00
640aa72cff Minor fix 2018-01-30 14:49:10 +02:00
6235328194 Bump version to 3.5.2a5 2018-01-28 00:28:21 +02:00
332472e84b Save temporary file in unicode for INO2CPP 2018-01-28 00:17:55 +02:00
59fb4b103f Fix issue when project without a specified board can't be uploaded // Resolve #1313 2018-01-27 01:16:37 +02:00
8186aed8d9 Bump version to 3.5.2a4 2018-01-27 00:52:45 +02:00
31700c6bfc Fix issue with detecting media disk when mbed upload protocol is specified 2018-01-27 00:18:32 +02:00
316c2c6e1a Improve calculating of project hash 2018-01-26 22:24:49 +02:00
b6ad672f6a Use SCons "gas" tool instead of "as" 2018-01-26 20:50:33 +02:00
59337c71c1 Upgrad build system to SCons 3.0 // Issue #895 2018-01-26 20:04:43 +02:00
7a40992cc1 Add aliases for LDF compatibility modes 2018-01-26 19:53:07 +02:00
1412f085b8 Minor improvements 2018-01-25 18:12:36 +02:00
6b826abce0 Bump version to 3.5.2a3 2018-01-25 18:03:10 +02:00
f8dafbca80 Show device system information (MCU, Frequency, RAM, Flash, Debugging tools) in a build log 2018-01-25 17:58:52 +02:00
dabe9ba2a7 Show all available upload protocols before firmware uploading 2018-01-25 14:26:15 +02:00
b8fde283fd Use util.get_systype when checking for system 2018-01-24 18:33:41 +02:00
fa738650da Add special prefix for BlackMagic probe for Windows COM ports >= COM10 2018-01-24 17:22:28 +02:00
717a699546 Bump version to 3.5.2a2 2018-01-24 16:10:14 +02:00
f512ccbe68 Fix issue with duplicated "include" records when generating data for IDE // Resolve #1301 2018-01-24 15:53:28 +02:00
de523493b2 Improve support for old mbed libraries without manifest 2018-01-24 14:56:44 +02:00
c0b277d9c8 Handle "os.mbed.com" URL as Mercurial (hg) repository 2018-01-24 14:56:15 +02:00
e615e7529e Fix issue with downloader when dependency URL ends with "/" 2018-01-24 14:34:08 +02:00
86667c5664 Bump version to 3.5.2a1 2018-01-18 22:13:36 +02:00
dcb299e9b9 Use dynamic "build_dir" when checking project for structure chnages 2018-01-18 22:12:32 +02:00
2b4b2eb571 Pass a list iterator directly to "any" or "all" functions 2018-01-18 22:04:43 +02:00
3caa2a9e8d Merge branch 'release/v3.5.1' into develop 2018-01-18 15:12:25 +02:00
0b5769dc57 Merge branch 'release/v3.5.1' 2018-01-18 15:12:24 +02:00
9b9b05439b Bump version to 3.5.1 (issue #1273 issue #1280 issue #1286 issue #1247 issue #1284 issue #1299 issue #1290) 2018-01-18 15:11:38 +02:00
93d4e68378 Bump docs to 3.5.1 2018-01-18 15:04:15 +02:00
2c79de971e Show full library version in "Library Dependency Graph" including VCS information // Issue #1274 2018-01-18 14:49:01 +02:00
bc18941eb0 Fix project generator for Qt Creator IDE // Resolve #1299 Resolve #1290 2018-01-18 01:30:39 +02:00
23ecce297a Update docs for custom slash size for ESP8266 2018-01-17 13:18:14 +02:00
cc646b19bf Extend example with a custom program name using extra scripting 2018-01-17 01:00:09 +02:00
4b08dbd602 Bump version to 3.5.1a7 2018-01-16 13:40:59 +02:00
d822334fdd Drop "python-dateutil" dependency, implement light-weight "parse_date" 2018-01-16 00:57:06 +02:00
3289b36450 Refactore code without "arrow" dependency (resolve issue with "ImportError: No module named backports.functools_lru_cache") 2018-01-16 00:06:24 +02:00
affd53eb27 Use "python_requires" for setuptools and depend on Python 2.7+ <3 2018-01-15 23:02:40 +02:00
06a6822173 Minor fix to history 2018-01-13 19:45:54 +02:00
6380d6c3ea Bump version to 3.5.1a6 2018-01-13 19:44:55 +02:00
24f314d73d Improve a work in off-line mode 2018-01-13 19:44:05 +02:00
6cddaf9eb7 Ignore VSCode launch.json for VCS 2018-01-13 19:01:27 +02:00
ec419f3d0e Refactor CMD:LIB tests 2018-01-13 17:02:08 +02:00
a6c84da83a Check cached API result before Internet 2018-01-13 01:21:53 +02:00
7cad113f0a Cleanup tests 2018-01-13 01:19:41 +02:00
712155243c Add "lib" and ".piolibdeps" to CLion project index 2018-01-12 14:20:53 +02:00
2091a33fb9 Show full version of the current interpreter 2018-01-12 02:23:55 +02:00
1d5245edbd Add "lib_ldf_mode = chain+" for example with C/C++ Preprocessor conditional syntax 2018-01-11 14:14:35 +02:00
cfb22f2a36 Add FAQ:Package Manager for PackageInstallError 2018-01-11 02:10:51 +02:00
16eb41b84e Document "[Error 5] Access is denied" for Package Manager 2018-01-11 02:02:59 +02:00
ae38d17b7f Ignore packages with TMP_FOLDER_PREFIX 2018-01-10 15:23:56 +02:00
7bbb850c2f Bump version to 3.5.1a5 2018-01-10 03:33:51 +02:00
fda439841e Restore PY2/3 ConfigParser 2018-01-10 03:07:17 +02:00
c558584640 Fix importing of ConfigParser 2018-01-10 02:58:50 +02:00
cfb04b31a4 Bump version to 3.5.1a4 2018-01-10 02:12:26 +02:00
1090c414f5 Update PIO Core+ and PIO Home // Resolve #1247 Resolve #1280 Resolve #1284 Resolve #1286 2018-01-10 02:06:05 +02:00
5b64bf1f7c Set default build environment for each example 2018-01-09 22:26:33 +02:00
61eb989edd Fix project generator for CLion // Issue #1287 2018-01-09 22:15:03 +02:00
23ae8e0d3e Additional fix to 7354515 (#1287)
* Additional fix to 7354515

* Update CMakeListsPrivate.txt.tpl

Also perform `replace('"', '\\"')`
2018-01-09 22:07:57 +02:00
e4f8a1877c Fix library updates when a version is declared in VCS format (not SemVer) 2018-01-09 21:56:21 +02:00
61872dd734 Improve support of PIO Unified Debugger for Eclipse Oxygen 2018-01-06 01:04:43 +02:00
16b307d1b3 Sync docs 2018-01-05 19:08:16 +02:00
a4770a27f4 Bump version to 3.5.1a3 2018-01-05 00:18:08 +02:00
ba858989f2 Fix PIO Unified Debugger for mbed framework 2018-01-05 00:17:45 +02:00
93c055a2ec Bump version to 3.5.1a2 2018-01-04 17:14:04 +02:00
2b3bc05f2b Option which allows to specify custom test_speed // Resolve #1273 2018-01-04 16:14:56 +02:00
5260217537 Sync docs with new boards 2018-01-03 19:46:44 +02:00
62235ef32d Sync examples 2018-01-03 18:59:41 +02:00
ec40dcada7 Custom firmware/program name in build directory 2018-01-03 18:35:25 +02:00
5e666492c3 Rename envs_dir option to build_dir in platformio.ini 2018-01-03 15:47:02 +02:00
82246a837e Change wording 2017-12-31 00:07:12 +02:00
2758e99295 Bump version to 3.5.1a1 2017-12-29 20:51:20 +02:00
7354515845 Fix project generator for CLion IDE 2017-12-29 20:50:17 +02:00
d58c392930 Typo fix in docs 2017-12-28 20:38:08 +02:00
86cb2efd64 Sync docs 2017-12-28 20:36:57 +02:00
b307855207 Fix typo in docs 2017-12-28 20:35:24 +02:00
3ad4ff02e8 Typo fix 2017-12-28 18:57:17 +02:00
4ef3818482 Merge branch 'release/v3.5.0' 2017-12-28 17:26:12 +02:00
0082dc43a3 Merge branch 'release/v3.5.0' into develop 2017-12-28 17:26:12 +02:00
755ade05c6 Bump version to 3.5.0 (issue #1260, issue #781, issue #778, issue #463, issue #1236, issue #1235, issue #953, issue #1118, issue #1107, issue #1196, issue #1179, issue #1161, issue #1126, issue #104, issue #1033, issue #1034, issue #1175, issue #1173, issue #1155, issue #1188, issue #1111, issue #1153, issue #1150, issue #1145, issue #1139, issue #1137, issue #1170, issue #1157, issue #1102, issue #1105, issue #1140, issue #1154, issue #1066, issue #1038, issue #1054, issue #1055, issue #1061, issue #1017) 2017-12-28 17:25:49 +02:00
12e4318de7 Don't follow redirects when checking internet connection 2017-12-28 17:15:34 +02:00
34e9063ddd Use "paged" links for docs 2017-12-28 16:58:15 +02:00
2315b08909 PIO Home docs 2017-12-28 16:51:18 +02:00
9c9a40a531 Add GitHub to PING_INTERNET_IPS list 2017-12-28 15:01:18 +02:00
ac4b485521 Fix issue with non-ascii path when printing LDF Tree in verbose mode 2017-12-28 14:27:08 +02:00
f13bf35dbd Bump version to 3.5.0rc17 2017-12-28 01:11:54 +02:00
012cb85e31 Allow libraries with the same folder name 2017-12-28 00:19:17 +02:00
62ee8066c2 Handle incompatibility between PIO Core and PIO Core+ 2017-12-27 22:05:56 +02:00
fc064aaf05 Support the latest arrow package 2017-12-27 21:38:03 +02:00
0516cd74e1 Check system compatibility for package 2017-12-27 21:36:45 +02:00
5b7a0e6997 Bump version to 3.5.0rc16 2017-12-27 19:57:57 +02:00
ad08ed8d12 Improve support for partial package versions 2017-12-27 19:37:26 +02:00
55d4fc23d0 Use "path" instead of "device" for logical devices 2017-12-27 16:02:36 +02:00
e29ecb47a5 Skip mDSN services with wrong encoding 2017-12-23 22:59:49 +02:00
c96c1f2b2f Bump version to 3.5.0rc15 2017-12-23 21:05:05 +02:00
fab4f00ad4 Reformat exceptions 2017-12-23 19:48:16 +02:00
adaa3757ac Switch to newly created "contrib-pysite" 2017-12-23 13:06:38 +02:00
2eb7d0e8be temporary switch to old "pysite-pioplus" 2017-12-19 17:59:49 +02:00
d16d715898 Bump version to 3.5.0rc14 2017-12-19 17:22:16 +02:00
1171cb204c Fix broken syntax 2017-12-19 16:50:09 +02:00
d70a90f1d5 Explain that no need to use sudo pio ... 2017-12-19 15:49:44 +02:00
06574e3066 Do not update automatically Core packages while upgrading PIO Core 2017-12-19 15:38:32 +02:00
39dfbbdd87 Don't create "packages" directory when there are no packages isntalled 2017-12-19 15:24:23 +02:00
7b8c68c934 Show error information when permissions are broken to PIO home dir 2017-12-19 15:05:41 +02:00
6d81c230a5 Bump version to 3.5.0rc13 2017-12-19 14:48:07 +02:00
a6c1869eb2 Depend on "zeroconf" from "contrib-pysite" 2017-12-19 14:47:31 +02:00
0c3f2b54ed Bump version to 3.5.0rc12 2017-12-19 12:42:18 +02:00
c6abdf8206 Check zeroconf installation before adding to setuptools 2017-12-19 12:41:56 +02:00
9f2875fcd7 Update changelog with missed records 2017-12-19 01:55:51 +02:00
78b296f2ec Update changelog 2017-12-19 01:49:25 +02:00
903ad6c6f8 Bump version to 3.5.0rc11 2017-12-19 01:42:10 +02:00
9441f776cc Handle missed dependency and provide a help how to find it using PlatformIO Library Registry // Resolve #781 2017-12-19 01:41:18 +02:00
5dd97a35cc Reinstall/redownload package with a new `-f, --force` option // Resolve #778 2017-12-19 00:51:35 +02:00
31814b5122 Extend "pio device list" command with new options to list logical devices and multicast DNS services // Resolve #463 2017-12-18 21:31:49 +02:00
724135f40e Docs: Simplify solution for "PackageManager is unable to install tool" 2017-12-17 01:58:43 +02:00
cbb7db552a Add contents for "FAQ: Install PIO Core Shell Commands" 2017-12-17 01:23:40 +02:00
cdf4639c97 Remove duplicate package versions from result 2017-12-16 20:50:25 +02:00
170917a927 Sync supported boards and frameworks 2017-12-16 19:19:08 +02:00
efceb5db72 Explain that we need Internet connection to install all dependencies 2017-12-16 17:40:56 +02:00
cee2da7448 Bump version to 3.5.0rc10 2017-12-16 16:16:07 +02:00
3d8183a2e1 LDF: handle "include" folder per project; fix issue with header files // Resolve #1235 2017-12-16 15:38:13 +02:00
25341d1ec7 Bump version to 3.5.0rc9 2017-12-16 01:07:18 +02:00
05081561c3 Minor fixes 2017-12-16 01:07:03 +02:00
abbba7fe2e Don't use PIOBUILDFILES for LDF 2017-12-15 23:51:13 +02:00
269935726d Check all URL parsed args before installing a package 2017-12-15 23:36:23 +02:00
56aeff87dd Typo fix 2017-12-15 22:31:35 +02:00
42fb589369 Refactor PyLint "inconsistent-return-statements" 2017-12-15 22:16:37 +02:00
bff590e207 Search for libraries used in test // Resolve #953 2017-12-15 21:48:20 +02:00
0933e46a58 Update history 2017-12-15 14:09:07 +02:00
1a7429a1ef Fix "get-platformio.py" script which hangs on Windows 10 // Resolve #1118 2017-12-15 13:47:44 +02:00
fd0b45afdb Use short version of a link for IOError exception 2017-12-15 02:42:38 +02:00
3d67535a9e Bump version to 3.5.0rc8 2017-12-15 02:12:04 +02:00
0eb67a7b61 Handle unknown platform when uninstall/update 2017-12-15 02:01:03 +02:00
75774ad9fa Compress exception report 2017-12-15 01:39:10 +02:00
7b6ecf4e45 Fix broken authentication via PIO Home // Resolve #1229 Resolve #1230 Resolve #1231 2017-12-15 00:22:40 +02:00
ca8bc3819f Add "include" folder for project’s header files // Resolve issue #1107 2017-12-14 22:02:41 +02:00
0bd103a46d YAPF 2017-12-14 22:01:59 +02:00
736c6a9a1e Sort all package versions using SemVer rules 2017-12-14 21:20:08 +02:00
ef00ecd7f1 Test IPs which used for testing internet connection 2017-12-14 20:18:19 +02:00
70b63d8618 Bump version to 3.5.0rc7 2017-12-14 20:05:50 +02:00
a632583f89 Catch IOError for VSCode Terminal 2017-12-14 20:05:06 +02:00
15bb626e78 Docs: explain about VSCode known issue: "PackageManager is unable to install tool" 2017-12-14 18:26:45 +02:00
bc0d1f06e0 Ensure that PIO Home works without Internet connection // Resolve #1179 2017-12-14 16:52:44 +02:00
bd611bbee8 Allow to change default projects location // Resolve #1161 2017-12-14 16:52:13 +02:00
2522d19453 Fix issue when API cache is turned off 2017-12-14 14:55:04 +02:00
5c4b5c2270 Don't export PIO Core Python's PATH 2017-12-13 22:15:37 +02:00
2d0ac1a9c2 Export PYTHONPATH to PIO Core+ 2017-12-13 20:05:39 +02:00
0f37e15b6c Improve off-line mode // Resolve #1126 2017-12-13 18:14:01 +02:00
3d0f0659ae Rename --develop to --dev option for upgrade command 2017-12-13 13:42:16 +02:00
02a263fdce Bump version to 3.5.0rc6 2017-12-13 01:32:19 +02:00
f7815d6c9b Check PIO Core updates after reset of time counter // Issue #1126 2017-12-13 01:31:41 +02:00
786dd8fe18 Implement "--develop" option for "upgrade" command // Resolve #104 2017-12-13 01:23:18 +02:00
f9b9ed317d Export built-in GCC macros for IDEs 2017-12-13 00:59:51 +02:00
0394e43ba4 Remove caching from TravisCI template 2017-12-12 21:35:48 +02:00
3b1fa572fa Handle unicode errors 2017-12-04 16:18:45 +02:00
ea99701172 Bump version to 3.5.0rc5 2017-12-03 02:29:14 +02:00
e329688954 Update PIO Home to 0.4.0 // Resolve #1034 2017-12-03 02:25:49 +02:00
18b10a7fbf Raise exception when try to load non-PIO project 2017-12-03 02:15:49 +02:00
05069f7ac6 Bump version to 3.5.0rc4 2017-12-01 20:53:39 +02:00
1b1453808f Merge branch 'feature/travis-ci' into develop 2017-11-30 14:06:05 +02:00
d0e32ebcb5 CI OSX: Don't upgrade system Python packages 2017-11-30 02:05:14 +02:00
ad48b85a44 Fix sudo command for OSX CI 2017-11-30 00:18:11 +02:00
75160bb231 Better handling of errors from VCS GIT 2017-11-29 22:46:57 +02:00
4b1716e42b CI: Install PIP for macOS build 2017-11-29 22:27:03 +02:00
10d21595c6 Fix issue when board is not specified and "idedata" target is called 2017-11-29 22:22:31 +02:00
f922fac9d9 Handle espressif as espressif8266 dev/platform for LDF 2017-11-29 18:30:00 +02:00
5846566bbb Bump version to 3.5.0rc3 2017-11-29 16:24:47 +02:00
8f97181ea7 Add "__GNUC__" macro by default for VSCode
https://github.com/platformio/platformio-vscode-ide/issues/54
2017-11-29 16:07:11 +02:00
3c6bd9824e Handle old "espressif" platform name for LDF 2017-11-29 15:32:38 +02:00
1b0776167c Bump version to 3.5.0rc2 2017-11-27 21:05:40 +02:00
f5f3cd85d8 Add support for Git scp-like syntax 2017-11-27 21:04:51 +02:00
79b7974f35 Strip SHA1 sum because @bintray returns wrong value 2017-11-27 14:05:04 +02:00
32c92eec95 Add link to LDF docs 2017-11-27 01:32:36 +02:00
7ec90ac23b Bump version to 3.5.0rc1 2017-11-27 00:20:31 +02:00
bab8ad088e Parse library source file in pair with a header when they have the same name // Resolve #1175 2017-11-27 00:01:24 +02:00
46acad952e Parse source files by header name in default LDF mode // Issue #1175 2017-11-26 20:17:38 +02:00
200cbae177 Experimental support for parsing source file in pair with a header when they have the same name // Issue #1175 2017-11-26 18:51:08 +02:00
d8ee64a545 Fix tests 2017-11-26 01:02:21 +02:00
7b324ebc3c Bump version to 3.5.0b6 2017-11-25 23:55:13 +02:00
02d9272d2a Depend on Arrow 0.10.0 (issue with "backports.functools-lru-cache" for PIO Core+) 2017-11-25 23:54:50 +02:00
9fc5aecb64 Add option to configure library Compatible Mode using library.json 2017-11-25 21:51:16 +02:00
5ca472050c Typo fix 2017-11-25 20:16:37 +02:00
dcab855d2c Fix PyLint 2017-11-25 19:59:03 +02:00
0c9c6d1092 Remove debug code 2017-11-25 19:25:07 +02:00
301b8dc649 Bump version to 3.5.0b5 2017-11-25 19:22:47 +02:00
547e983a86 Improved handling of library dependencies defined as VCS or SemVer in platformio.ini // Resolve #1155 2017-11-25 19:22:00 +02:00
9b514ba194 Remove temporary hook for Arrow deps 2017-11-25 19:06:38 +02:00
37a2ccedbd Temporary fix for Arrow with a missing deps to backports.functools-lru-cache 2017-11-25 15:11:06 +02:00
a983f60fa0 Bump version to 3.5.0b4 2017-11-25 01:12:49 +02:00
fc96806e68 Update docs for ESP32 with custom options 2017-11-25 01:02:27 +02:00
53b37216cc Improve support for VCS packages 2017-11-25 00:31:16 +02:00
d07833e010 Include TizenRT to docs 2017-11-24 20:04:18 +02:00
5b5387d97b Sync docs with the latest added hardware/software 2017-11-24 15:36:37 +02:00
1c20efe9d1 Improve support for dependency with scp-like syntax 2017-11-22 21:38:14 +02:00
8b4104bf5b YAPF 2017-11-22 21:09:16 +02:00
448e0f27b6 Merge branch 'feature/debug-blackmagic' into develop 2017-11-08 11:34:22 +02:00
02db510048 Check serial device description when looking for GDB port 2017-11-08 11:22:44 +02:00
ce9c563c9f Bump version to 3.5.0b3 2017-11-08 00:39:25 +02:00
4c170b7934 Ensure real dev/platform name before build process // Resolve #1170 2017-11-08 00:38:19 +02:00
d1a2dba68c Integration with Jenkins CI 2017-11-07 23:47:23 +02:00
5d2867d8a9 Automatically detect BlackMagic probe GDB port 2017-11-07 00:10:48 +02:00
4504a65b92 Add Black Magic Probe rules 2017-11-04 00:38:49 +02:00
25f52917ef Override VSCode IntelliSense mode with clang-x64 2017-11-03 23:38:09 +02:00
75770bcedf Bump version to 3.5.0b2 2017-11-03 23:11:44 +02:00
1c9fe4561a Terminate PIO Home servers when upgrade PIO Core // Issue #1132 2017-11-03 23:10:39 +02:00
909b773f6d Bump version to 3.5.0b1 2017-11-03 00:51:28 +02:00
0343dc0785 Drop flake8 2017-11-03 00:47:00 +02:00
b670ab4888 Initial support for non-ascii locales 2017-11-02 23:14:32 +02:00
f85202d64c Bump version to 3.5.0a17 2017-11-01 14:14:03 +02:00
e5e5ebb7db YAPF formatter 2017-11-01 14:10:32 +02:00
86de58b9e1 Fix missing toolchain include paths for project generator // Resolve #1154 2017-11-01 14:09:06 +02:00
675cd456b6 New development platform - Samsung ARTIK 2017-09-27 19:28:53 +03:00
9fe581e425 Update release notes 2017-09-27 19:03:04 +03:00
a0626ac958 Hint user to delete file manually when exception is raised 2017-09-24 01:28:41 +03:00
1fab2a5bec Bump version to 3.5.0a16 2017-09-24 00:33:35 +03:00
d9ae367281 Improve archive unpacker 2017-09-24 00:33:12 +03:00
837b040761 Bump version to 3.5.0a15 2017-09-22 01:22:41 +03:00
71afea8d80 Expand user folder for lib_extra_dirs 2017-09-22 01:22:21 +03:00
7c9989d999 Fix tests for "platform" command 2017-09-21 23:57:55 +03:00
2e2b1fda9c Bump version to 3.5.0a14 2017-09-21 21:58:37 +03:00
25da978fee Add support for "author" field in library.json manifest // Resolve #1055 2017-09-21 15:07:38 +03:00
c677f24d8e Sync docs 2017-09-20 18:49:19 +03:00
77fe1e8184 Use -ggdb3 instead of -ggdb by default 2017-09-18 14:06:16 +03:00
377008ee08 New Microchip PIC32 boards 2017-09-17 02:21:59 +03:00
22fb89e56a Fix tests 2017-09-17 02:18:35 +03:00
68c56e042c Bump version to 3.5.0a13 2017-09-17 01:33:29 +03:00
16c242e7fa Better parsing of F_CPU 2017-09-17 01:33:04 +03:00
c9e1ae2548 Bump version to 3.5.0a12 2017-09-16 16:36:09 +03:00
fc7f1c0728 Fix platforms, packages, and libraries updating behind proxy // Resolve #1061 2017-09-16 16:35:35 +03:00
aa1c7609d2 Bump version to 3.5.0a11 2017-09-16 01:00:29 +03:00
998f4ed6e6 Use VCS directly with "platform" option in configuration file 2017-09-16 00:57:36 +03:00
33242a02ce Bump version to 3.5.0a10 2017-09-13 17:39:41 +03:00
7963ce2cdd Do not warn about "custom_" options in configuration file 2017-09-13 17:38:42 +03:00
b4159f9144 Docs: Update instruction how to install Espressif staging version 2017-09-09 23:03:15 +03:00
674aa5c4d8 Decrease API cache timeouts 2017-09-09 20:57:25 +03:00
e176e9922a Sync docs 2017-09-07 20:30:48 +03:00
fd98aa0ff8 Fix PyLint warning 2017-09-06 20:57:56 +03:00
f24e97e933 Skip missing package when checking for updates 2017-09-06 14:37:04 +03:00
a934efa90a Sync docs 2017-09-06 02:04:06 +03:00
a0cae2b1a6 Update docs for PIO IDE for Atom 2017-09-05 19:40:11 +03:00
274c1a40a5 Bump version to 3.5.0a9 2017-09-05 14:42:56 +03:00
059a408e95 Merge branch 'feature/prepend-python-pioplus' into develop 2017-09-05 14:42:02 +03:00
f4c6919800 Don't verify SSL certificates for Python < 2.7.9 2017-09-05 14:23:49 +03:00
7301b9e808 Prepend Python's binary folder before calling PIO Core+ 2017-09-05 14:13:00 +03:00
113746dc74 Introduce "get_all_boards" API to PlatformManager 2017-09-03 22:40:00 +03:00
95aaca5e02 Do not skip fixed packages with custom requirements 2017-09-03 20:58:48 +03:00
ed6b196459 Bump version to 3.5.0a8 2017-09-02 18:33:56 +03:00
34ed4678d7 Moved configuration code to a separate function, re-use it for PIO Core+ 2017-09-02 18:02:24 +03:00
a127251107 Catch click's IOError for VSCode Terminal 2017-09-02 17:58:35 +03:00
b55b80ecc8 Better catching of IOError for VSCode/Colorama 2017-09-02 16:23:24 +03:00
68c75735f4 Bump version to 3.5.0a7 2017-09-02 15:39:53 +03:00
9b66abf5ef Fix issue with "IOError" in VSCode when processing a project 2017-09-02 15:39:32 +03:00
ccd650dda0 Fix invalid params order when installing PIO Core without PIP Cache 2017-09-02 14:43:08 +03:00
3afac476e5 Docs: Remove Crisp chat 2017-09-01 20:27:24 +03:00
8f7483cddf Update VSCode docs 2017-09-01 14:31:11 +03:00
3b5c73b1a3 Bump version to 3.5.0a6 2017-09-01 00:39:17 +03:00
04ec65df3e Minor fixes 2017-08-31 23:12:02 +03:00
49244072c4 Improve fetching of logical disks 2017-08-31 20:56:25 +03:00
3fe9ea1b01 Bump version to 3.5.0a5 2017-08-31 18:35:15 +03:00
a55ccb2b28 Docs: Add CI for GitLab 2017-08-31 18:33:17 +03:00
01a6ae656f Depend on new PIO Home 0.2.0 2017-08-31 18:32:52 +03:00
2b7b852a68 Update VSCode docs 2017-08-29 14:16:30 +03:00
b12c4d171e Sync docs 2017-08-26 16:51:27 +03:00
3ce7104542 Fix broken links 2017-08-23 21:46:31 +03:00
297c173418 Docs: Fix invalid hotkey for VSCode Tasks 2017-08-23 17:05:11 +03:00
22733ea110 Docs: Minor fix 2017-08-22 19:52:12 +03:00
845991f1d3 J-Link as debugger and uploader 2017-08-18 22:41:11 +03:00
e6faed5dd9 Update history 2017-08-18 01:26:31 +03:00
44909f9ce8 Switch to "develop" version of PIO Core Installer while it isn't merged to "master" // Resolve #1017 2017-08-18 01:23:15 +03:00
4ff1d640b3 Minor fixes 2017-08-17 23:55:42 +03:00
743de42484 Add "test_ignore" to known options list 2017-08-17 17:18:23 +03:00
04c381d440 Sync docs and examples 2017-08-17 15:33:24 +03:00
bda4b5d264 Docs: Create Advanced Scripting section for platformio.ini 2017-08-16 15:33:36 +03:00
3f13821c43 Update history 2017-08-16 15:12:45 +03:00
e60e076d16 Better explanation about lib_extra_dirs 2017-08-16 15:10:56 +03:00
541993c06b Implement throttle for API calls 2017-08-15 22:57:20 +03:00
3d5114655f Docs: Embedded Testing with PlatformIO - Part 2 2017-08-15 19:33:35 +03:00
3229933ed0 Minor improvements 2017-08-14 23:58:12 +03:00
d7d66fd4a6 Improve fetching logical disks 2017-08-14 15:27:12 +03:00
4a7cd5be6a Update docs for VSCode 2017-08-13 00:08:49 +03:00
fd56e5cec9 Docs: New boards, typo fixes 2017-08-12 19:16:36 +03:00
2cb7fcca9a Bump version to 3.5.0a4 2017-08-10 16:04:51 +03:00
9b2e7bf927 Fix broken installer script 2017-08-09 23:43:31 +03:00
d913fb5600 Call pip as module 2017-08-09 23:02:33 +03:00
6bf42f90ed Docs: Short titles in menu 2017-08-09 17:59:28 +03:00
51ff2b65f4 Bump version to 3.5.0a3 2017-08-08 14:44:25 +03:00
c05e1f7c9b Ignore missed packages in new development platform 2017-08-07 19:33:13 +03:00
4700419590 Bump version to 3.5.0a2 2017-08-07 17:38:21 +03:00
5f320cc5c8 Introduce PIO Home 2017-08-07 17:38:05 +03:00
351aaa3974 Sync submodules 2017-08-05 19:19:43 +03:00
327d42d02d Sync docs 2017-08-03 16:56:25 +03:00
bbcc79208c Bump version to 3.5.0a1 2017-08-02 22:17:21 +03:00
578dfa40aa Ignore only C/C++ properties for VSCode extension 2017-08-02 22:16:41 +03:00
a43c6c6b9e Merge branch 'release/v3.4.1' into develop 2017-08-02 16:51:46 +03:00
5f99dd620d Merge branch 'release/v3.4.1' 2017-08-02 16:51:45 +03:00
e959710d6d Version bump to 3.4.1 (issues #891, #982, #993, #1000, #1001, #1003 ) 2017-08-02 16:51:19 +03:00
f0f1d0a61a Bump version to 3.4.1rc1 2017-08-02 01:08:07 +03:00
7f63928d21 New lib_archive option to control library archiving and linking behaviour // Resolve #993 2017-08-02 01:06:06 +03:00
b929e452b0 Add "inc" folder automatically to CPPPATH when "src" is available (works for project and library) // Resolve #1003 2017-08-01 14:45:42 +03:00
b4f927a84d Sync docs: add new boards 2017-08-01 01:45:48 +03:00
fe4a72edd0 Bump version to 3.4.1b1 2017-08-01 00:35:16 +03:00
5f4a10086f Merge branch 'feature/samba-due-issue' into develop 2017-08-01 00:34:01 +03:00
d5baa153a5 Fix an issue when can not upload firmware to SAM-BA based board (Due) 2017-08-01 00:33:51 +03:00
3f96530c32 Sync docs: Add example how to build a custom HEX from ELF 2017-08-01 00:21:57 +03:00
861659e890 Wait for 400ms after touching serial port (fix SAM-BA issue) 2017-08-01 00:12:05 +03:00
cd5b88dd1f Automatically update PIO Core packages when it is possible 2017-07-31 19:38:42 +03:00
06b49ec3ec Some improvements 2017-07-31 19:05:03 +03:00
4944731dc6 Sync docs: Split build flags into multiple lines 2017-07-31 18:25:57 +03:00
5d31d6825b Export board's connectivity 2017-07-28 00:56:02 +03:00
0099b037f3 Refactor docs for Unit Testing 2017-07-27 19:07:46 +03:00
9994ed8b5e Check context arguments before comparison // Resolve #1000 2017-07-27 15:50:54 +03:00
954357bdd2 Update links to ESP8266 docs 2017-07-25 20:00:27 +03:00
c7f5629f82 Fix links in docs 2017-07-25 19:19:52 +03:00
dfe769c92e Add support for Controllino PLC 2017-07-25 13:22:55 +03:00
53017b24d1 VSCode configuration 2017-07-24 17:37:16 +03:00
f13537cabb YAPF 2017-07-24 17:35:41 +03:00
16ea8f29a1 Update docs with new boards 2017-07-21 22:07:11 +03:00
e708b74507 Document Task Runner for VSCode 2017-07-20 13:36:13 +03:00
f61c7f6030 Sync examples 2017-07-19 13:53:58 +03:00
1260859c42 Sync examples 2017-07-18 23:15:09 +03:00
ec9324d77f Sync examples with mbed 5.5 2017-07-18 22:47:39 +03:00
d66b1780ce Bump version to 3.4.1a6 2017-07-17 13:13:42 +03:00
35cab82605 Remove static tasks for VSCode 2017-07-16 21:28:54 +03:00
12222c0f42 Improve docs for advanced scripting 2017-07-14 23:56:45 +03:00
12ec11c7e2 Sync docs 2017-07-14 14:22:38 +03:00
c926ca389c Sync examples 2017-07-14 14:05:38 +03:00
e01c0a1eff Sync docs 2017-07-14 02:10:12 +03:00
8008f87ffa Manage project libraries with "--storage-dir" option 2017-07-13 00:51:04 +03:00
91d3a8ffad Improve docs for PIO Debugger 2017-07-10 01:28:19 +03:00
309d3a45d6 New "forceUploadAndMonitor" option for PlatformIO IDE for VSCode 2017-07-05 21:22:33 +03:00
ebe0d41b77 Bump version to 3.4.1a5 2017-07-05 20:38:55 +03:00
6403cf0c8b New task "PlatformIO: Monitor" for VSCode 2017-07-05 20:38:28 +03:00
7964aed453 New boards by RushUp 2017-07-04 19:30:39 +03:00
97866cf44d Correct default values for auto_update_libraries/platforms 2017-07-04 14:24:40 +03:00
4eb92ff2e3 Refactor pioNav for docs 2017-07-04 01:17:56 +03:00
0e8fb1ba83 Bump version to 3.4.1a4 2017-07-03 13:36:51 +03:00
8741f37831 Minor improvements 2017-07-03 13:35:39 +03:00
68ccabda56 Update history 2017-07-01 22:17:37 +03:00
a0cd0bc189 Fix an issue with a custom unit testing transport 2017-07-01 22:00:25 +03:00
aadb186054 Escape spaces in task command for VSCode Task Runner 2017-07-01 21:54:04 +03:00
2c232f2f3f Standalone IDEs Integration 2017-07-01 20:34:34 +03:00
f85c894b52 Move Pricing before Docs 2017-07-01 20:24:03 +03:00
fb432da26b Bump version to 3.4.1a3 2017-07-01 19:24:41 +03:00
e8da7b4673 Depend on PIO Core Plus v0.9.1 2017-07-01 19:24:10 +03:00
53906c49cb Refactor PIO Account docs 2017-07-01 14:16:26 +03:00
b774bd6a55 Improve platformio.ini example 2017-06-30 22:07:04 +03:00
cefc2fa21c Cosmetic improvements 2017-06-30 01:35:54 +03:00
546993b12c Fix PyLint Warning 2017-06-30 01:23:52 +03:00
08ab80187c Mode PIO Core Dev installation on upper level 2017-06-30 00:24:35 +03:00
bf48643865 Bump version to 3.4.1a2 2017-06-30 00:20:27 +03:00
35a91dbd57 Pre/Post extra scripting for advanced control of PIO Build System // Resolve #891 2017-06-30 00:15:49 +03:00
7a56ec614c Added monitor_* options to white-list for Project Configuration File “platformio.ini” // Resolve #982 2017-06-29 21:27:38 +03:00
7d2728845e Use a root of library when filtering source code using library.json and srcFilter field 2017-06-29 21:23:06 +03:00
94a834ecc4 Use a root of library when filtering source code using library.json and srcFilter field 2017-06-29 21:22:44 +03:00
46774466db Fix contact url 2017-06-29 19:32:38 +03:00
671eff5012 Library Manager in PlatformIO IDE for Atom 2017-06-29 01:13:20 +03:00
a3e7535db5 Simplify index page of docs 2017-06-28 19:33:53 +03:00
f7ee7e2e8c Add Changelog for PIO IDE for Atom and VSCode 2017-06-28 18:29:56 +03:00
7a04061d6d Typo fix 2017-06-28 14:05:28 +03:00
7827994791 Do not ask for board ID when initialize project for desktop platform 2017-06-28 01:38:20 +03:00
dae290ad2d Bump version to 3.4.1a1 2017-06-28 01:01:27 +03:00
61fc7d8589 Fix issue when can not load broken PIO Core state 2017-06-28 01:01:03 +03:00
0deb623ad5 Add link to PIO IDE packages 2017-06-27 01:56:03 +03:00
ef8aeeb5f0 Add support for Adafruit Feather M0 Express & Metro M0 Expresss boards 2017-06-27 01:17:34 +03:00
2695c985a4 Remove platforms related history from the Core 2017-06-27 01:03:26 +03:00
fcfdc5c206 Sync docs 2017-06-27 00:05:23 +03:00
3a96b460df Merge branch 'release/v3.4.0' 2017-06-26 19:58:30 +03:00
78616bf06f Merge branch 'release/v3.4.0' into develop 2017-06-26 19:58:30 +03:00
43ebff2a84 Bump version to 3.4.0 2017-06-26 19:58:21 +03:00
7afbbadef1 Fix URL for PIO Unified Debugger 2017-06-26 19:53:51 +03:00
e26372075d Update README 2017-06-26 19:51:57 +03:00
d0f6c69135 Minor cleanups 2017-06-26 19:18:41 +03:00
b1780c54db Depend on PIO Core+ v0.9 2017-06-26 19:16:44 +03:00
7cc51035aa Add "Upload and Monitor" task for VSCode 2017-06-26 18:13:09 +03:00
820efaeb21 Switch to stable PlatformIO 2017-06-26 18:04:40 +03:00
1ee53137ec Update udev rules guide 2017-06-26 17:51:11 +03:00
01afcb1c9e New monitor target which allows to launch Serial Monitor automatically after successful “build” or “upload” operations // Resolve #788 2017-06-26 17:14:38 +03:00
574bbd1692 Update custom J-Link debug configuration 2017-06-24 19:45:47 +03:00
0c06982d75 Filter PIO Unit Testing tests using a new test_filter option in "platformio.ini" or platformio test –filter command // Resolve #934 2017-06-24 18:40:30 +03:00
8f4c09a600 Better escaping for package file names 2017-06-24 16:07:40 +03:00
1c5b08de59 Fixed cloning a package (library) from a private Git repository with custom user name and SSH port // Resolve #925 2017-06-24 15:45:48 +03:00
d8a0272bec Escape non-valid file name characters when installing a new package (library) // Resolve #985 2017-06-24 15:20:33 +03:00
f6960a0f98 Update docs for Segger J-Link Tool 2017-06-24 14:26:14 +03:00
2849d78ece Add requirements for Python and PIO Core+ 2017-06-24 02:13:03 +03:00
954ff8dca0 Bump version to 3.4.0rc1 2017-06-24 01:32:05 +03:00
93db0fa064 Improve WaitForNewSerialPort for atmega32u4 based boards 2017-06-24 01:29:53 +03:00
839fe8e02f Integrate PIO Unified Debugger with Sublime Text 2017-06-24 00:06:58 +03:00
60b668342f Integrate PIO Unified Debugger with Eclipse 2017-06-23 22:00:58 +03:00
178cf35a43 Improve docs for CLion 2017-06-23 16:06:22 +03:00
adf30f3640 Reorganize Tutorials and Demo for PIO Core 2017-06-23 15:38:24 +03:00
2793059c70 Refactor library manager navigation 2017-06-23 14:48:01 +03:00
6e7de3a01c Sort platforms and frameworks by name 2017-06-23 14:08:46 +03:00
77a14f3c7b Note about "dialout" group for Ubuntu/Debian users; udev rule for USBasp V2.0 // Resolve #979 2017-06-23 13:53:36 +03:00
a9543037b2 Add default environment to each example 2017-06-23 00:14:16 +03:00
902b8e0a52 Add example with using pyOCD for CMSIS-DAP based boards 2017-06-22 23:23:44 +03:00
613d92c32f Add source code to STM32Cube tutorial 2017-06-22 14:23:09 +03:00
ebf9607c99 Cosmetic changes 2017-06-22 01:26:24 +03:00
89dc767a1c Introduce Tutorials 2017-06-22 01:14:23 +03:00
cb54910529 Add configuration section for Unit Testing 2017-06-21 01:03:09 +03:00
f78837d467 Custom transport for Unit Testing 2017-06-20 18:48:52 +03:00
6ad1ce5239 Improve docs for Platforms and Framworks 2017-06-20 16:57:47 +03:00
707384aeed Cosmetic updates for "Contents" 2017-06-20 15:41:43 +03:00
e3b976e189 Split docs for Project Configuration File into multiple subpages 2017-06-20 15:24:20 +03:00
8c7fa61f62 Fix broken image for VSCode installation 2017-06-19 11:39:31 +03:00
0bdb877fe1 Temporary use development version of PIO Core 3.4 2017-06-14 19:55:44 +03:00
fddcc3c965 Fix SSL SNI issue for Python < 2.7.9 2017-06-14 19:41:36 +03:00
8dde7e2efb Cosmetic changes to icons 2017-06-14 19:03:52 +03:00
2f40f32988 Remove Project IDE examples 2017-06-14 14:34:15 +03:00
bb0063d5cf Fix url for logo in docs 2017-06-13 21:07:58 +03:00
dcdd552856 Fix tests after examples reorganization 2017-06-13 21:01:23 +03:00
c4f23be1dc Fix tests after examples reorganization 2017-06-13 20:39:21 +03:00
571fe4dc04 Reorganize examples 2017-06-13 16:25:55 +03:00
1827223b1c Update docs for Atom/VSCode; other improvements 2017-06-11 01:57:58 +03:00
b2c37311b9 Minor updates 2017-06-09 11:45:42 +03:00
70e4181b17 Bump version to 3.4.0b12 2017-06-09 01:40:50 +03:00
e8d7aae53c Use Terminal Runner for VSCode 2017-06-09 01:40:23 +03:00
41312ef86d Bump version to 3.4.0b11 2017-06-07 02:33:37 +03:00
b04fc327c0 Configure Serial Port Monitor from platformio.ini // Resolve #787 2017-06-07 02:32:25 +03:00
a37eb9868f Skip broken PySerial 3.3 2017-06-06 21:06:05 +03:00
4d1a135d76 Apply YAPF 2017-06-05 16:05:05 +03:00
45e75f7473 Copyright (c) 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.
2017-06-05 16:02:39 +03:00
8127e8b2ff Update docs for VSCode 2017-06-05 01:46:31 +03:00
d30b8fffa1 Bump version to 3.4.0b10 2017-06-02 02:34:52 +03:00
52f0e556e2 Do not overwrite workspace settings for VSCode 2017-06-02 02:34:10 +03:00
0376a92ebb FAQ: UnicodeDecodeError: Non-ASCII characters found in build environment 2017-06-01 21:35:26 +03:00
5da5bd43e4 Ensure that package exists 2017-06-01 19:53:05 +03:00
e2811a4a28 Check PIO download storage for "Internet ON" 2017-06-01 19:47:50 +03:00
a53a38b5dd FAQ: ‘platformio’ is not recognized as an internal or external command 2017-06-01 19:21:32 +03:00
6502cf5552 Fix issue with INO to CPP converter and multiline strings 2017-06-01 15:14:52 +03:00
aed6d9a91b Nordic nRF52 & Maxim Integrated development platforms 2017-05-31 22:21:25 +03:00
ff6353a1ea VSCoe task as external program 2017-05-31 00:56:05 +03:00
b6f9220f3f Minor improvements to docs 2017-05-30 22:11:09 +03:00
0c9e6ef577 Close serial port after verification 2017-05-30 19:42:32 +03:00
198dadc209 Verify that serial port is ready for connection before uploading 2017-05-30 14:06:25 +03:00
f6a3d9f474 Add link to PIO IDE for VSCode extension in marketplace 2017-05-29 20:23:12 +03:00
232a735dde Improve VSCode docs 2017-05-29 20:17:22 +03:00
2ea9af8151 Update VSCode main picture 2017-05-29 19:00:18 +03:00
1e14792ea0 Update docs for VSCode 2017-05-29 15:59:02 +03:00
908f0ba833 Bump 3.4.0b9 2017-05-29 15:41:56 +03:00
466d1b1c14 Remove C_CPP settings from VSCode 2017-05-29 13:07:25 +03:00
68d7630b44 Better path escaping 2017-05-28 13:12:59 +03:00
641c981c4b Add VSCode to PlatformIO IDE section 2017-05-28 02:59:43 +03:00
50ec9e48bf Specify particular platform for c_cpp configuration 2017-05-28 02:34:32 +03:00
801ac28c11 Update docs for VSCode 2017-05-28 02:24:14 +03:00
7637e1ad69 Normalize Windows PATHs for VSCode 2017-05-28 02:06:58 +03:00
fa24d61680 Project generator for VSCode IDE // Issue #619 Resolve #960 2017-05-28 00:30:23 +03:00
1bd159e60d Notify about multiple installations of PIO Core // Resolve #961 2017-05-27 18:43:56 +03:00
959dab4dc2 Remove requests.packages.urllib3 tracks 2017-05-27 13:20:54 +03:00
20086b0816 Note about Clang 3.9 2017-05-27 13:14:54 +03:00
e21b8a841b Merge branch 'hotfix/v3.3.1' into develop
# Conflicts:
#	HISTORY.rst
#	platformio/__init__.py
2017-05-27 12:59:06 +03:00
a045469584 Merge branch 'hotfix/v3.3.1' 2017-05-27 12:56:42 +03:00
228db871b4 Bump version to 3.3.1 2017-05-27 12:56:14 +03:00
49b2e7303e * Hotfix for recently updated Python Requests package (2.16.0) 2017-05-27 12:55:46 +03:00
074e262e66 Use BinTray when checking Internet connection // Resolve #968 2017-05-27 02:35:48 +03:00
021f0323cb Bump version to 3.4.0b5 2017-05-27 01:21:56 +03:00
bb55e5bc58 Add chat button to docs 2017-05-27 01:20:32 +03:00
5d6d49f7e1 Implement “debug_load_cmd” 2017-05-27 01:10:07 +03:00
548d0692ba Bump version to 3.4.0b4 2017-05-26 01:25:46 +03:00
5d87fc3461 Project generator for VIM 2017-05-26 01:25:03 +03:00
0a254c52c0 Updated mbed framework to 5.4.5/142 2017-05-26 01:24:23 +03:00
eafa586fdc Implement a delete functionality for State & ContentCache 2017-05-26 00:45:56 +03:00
1e36731076 Update top navigation 2017-05-24 17:24:19 +03:00
d5d3bb19de Typo fix 2017-05-22 21:14:05 +03:00
d367f726ba New boards 2017-05-21 01:54:47 +03:00
cb241b703a Preload debugging firmware before debug session 2017-05-20 02:17:00 +03:00
c02d180e11 Update custom J-Link GDB example 2017-05-20 01:18:49 +03:00
90fc207bf2 Add missed “debug_tool” options 2017-05-18 21:59:42 +03:00
41f1806009 Bump version to 3.4.0b3 2017-05-18 21:52:22 +03:00
6941b822b6 Custom debugging configuration 2017-05-18 21:51:38 +03:00
5eb2fc67e5 Skip network driver when searching for mbed disk 2017-05-11 14:49:44 +03:00
c14ba16297 Fix linke to images 2017-05-10 02:06:09 +03:00
861e68ab3c Depend on a new PIO Core+ 2017-05-08 16:39:06 +03:00
4beecd62a8 Update PIO IDE main picture with Unified Debugger 2017-05-07 21:00:21 +03:00
1e2e409e8d Add info about PIO Unified Debugger 2017-05-07 20:48:38 +03:00
90cefe4809 Bump version to 3.4.0b2 2017-05-07 00:43:39 +03:00
866b3e915a Add link to PIO Unified Debugger to PIO Account page 2017-05-06 14:43:08 +03:00
2827e7dc3a Fixed issue when debugger fails with a space in path to a project // Resolve #954 2017-05-05 19:45:54 +03:00
a8da7dcfd3 Fix PyLint warning 2017-05-05 13:02:20 +03:00
70df106f57 Bump version to 3.4.0b1 2017-05-04 21:02:59 +03:00
d37c6fcdce Use root directory for PIO Home when path contains non-ascii characters // Resolve #951 Resolve #952 2017-05-04 21:02:32 +03:00
f3f8374253 A few updates for PIO Unified Debugger and PIO Account 2017-05-04 19:06:38 +03:00
a5973043b1 Allow to change account password with passed options 2017-05-04 12:31:03 +03:00
d3d87a0bfb Update history 2017-05-04 01:17:28 +03:00
c69269ea3d Offline mode for PIO Account Show command 2017-05-04 00:36:52 +03:00
30ff491a34 Remove extra delay before waiting for serial port 2017-05-03 20:33:37 +03:00
56d4d545c1 Don’t raise error when cache item has been deleted from another thread 2017-05-01 01:33:51 +03:00
884859324d User Guide (CLI) for PIO Unified Debugger 2017-04-30 01:52:06 +03:00
7d92bcdf58 Debugging tools/probes 2017-04-30 01:14:57 +03:00
ba545bfa29 Docs for “debug_tool” option 2017-04-29 02:16:11 +03:00
7c31a9c9b8 Some correction for debug options 2017-04-29 01:58:35 +03:00
13cd09d161 PIO Unified Debugger 2017-04-29 01:42:23 +03:00
d55f28e3d7 Bump version to 3.4.0a8 2017-04-28 19:00:12 +03:00
1e5df747cd Handle `env_default` in "platformio.ini" when re-initializing a project // Resolve #950 2017-04-28 18:10:37 +03:00
46e82e08ce Bump version to 3.4.0a7 2017-04-28 01:39:29 +03:00
9658bcdb73 The Unified Debugger 2017-04-28 01:38:25 +03:00
81c96808b6 Don’t override LED_BUILTIN with macro; sometime it is defined as static variable // Resolve #933 2017-04-27 20:53:54 +03:00
969e72c4a4 Fix issue when Library Dependency Finder (LDF) does not handle custom “src_dir” // Resolve #942 2017-04-27 20:01:17 +03:00
3d2df9f9a9 Fix linter error "unity.h does not exist" for Unit Testing // Resolve #947 2017-04-27 18:39:57 +03:00
384c3c45e4 Add “boards_dir” to known [platformio] option // Resolve #949 2017-04-27 18:30:40 +03:00
6b0467ead5 Use internal context to fetch IDE data 2017-04-27 18:28:50 +03:00
1344ab5bb6 Typo fix with account register command 2017-04-25 19:53:21 +03:00
ae3aeeca69 Update history 2017-04-24 16:25:01 +03:00
e976c617f7 Note about LDF and Dependency Finder Mode 2017-04-24 13:35:08 +03:00
a63592894c Bump 3.4.0a6 2017-04-15 21:28:23 +03:00
bd4636c98f Fix installing package from archive 2017-04-15 21:28:01 +03:00
dff3c7d093 Bump 3.4.0a5 2017-04-15 21:02:47 +03:00
d0f2aa38ca Fixed infinite dependency installing when repository consists of multiple libraries // Resolve #935 2017-04-15 20:32:11 +03:00
abb2fb7045 Add support for “.*cc” extension // Resolve #939 2017-04-15 16:51:15 +03:00
44be1dc1c7 Some fixes for new PyLint 2017-04-15 16:36:59 +03:00
64ed76762e Update Git-submodules for development platforms and libraries which were installed from repository 2017-04-15 16:19:41 +03:00
f194a1a572 Fix debug port auto-detecting 2017-04-15 12:55:34 +03:00
c7249aadf3 Generate “SRC_FILTER” on-the-fly for a custom library 2017-04-14 23:16:52 +03:00
d16fd73b05 Better detecting of mbed-enabled media disk 2017-04-14 18:05:15 +03:00
59b65ba668 Check mbed html page before uploading 2017-04-13 20:02:08 +03:00
ba17c57026 Update history 2017-04-12 20:25:43 +03:00
b5217682fd Fix multi line items for lib_deps // Resolve #931 2017-04-02 21:58:38 +03:00
a60792d20e Add temporary link to community forum for debugging discussion 2017-04-01 23:26:02 +03:00
f4c9d09020 Typo fix 2017-04-01 19:19:37 +03:00
97185fffb8 Bump 3.4.0a3 2017-04-01 15:40:52 +03:00
48ed0a508c Correct path in debug configuration 2017-04-01 14:51:57 +03:00
73f4bce99a Rename “debug_link” option to “debug_tool” 2017-04-01 14:35:55 +03:00
8055c84087 Add OpenOCD dev rules 2017-04-01 01:13:28 +03:00
7a8aff47e9 Be silent when upper level asks 2017-03-31 20:20:07 +03:00
62e755ce60 Quick fix when board doesn’t have debug configuration 2017-03-31 19:50:26 +03:00
75e1173f80 Initial support for debugging // Resolve #514 2017-03-31 18:55:19 +03:00
fe7c93d004 Multi-line support for the different options in “platformio.ini” // Resolve #889 2017-03-29 17:49:01 +03:00
d77dea5fe1 Describe how to remove registry records by Atom on Windows 2017-03-28 21:47:54 +03:00
df226df87d Merge branch 'release/v3.3.0' 2017-03-27 14:39:43 +03:00
dca2e10570 Merge branch 'release/v3.3.0' into develop 2017-03-27 14:39:43 +03:00
aedbda8d7a Bump version to 3.3.0 2017-03-27 14:39:20 +03:00
3721a8f039 Move Python installation to FAQ 2017-03-27 14:33:51 +03:00
e736b08a49 Allow to update only the PIO Core packages 2017-03-27 14:14:29 +03:00
b7a61f12e8 Don’t use global install history when check circle dependencies 2017-03-26 21:32:54 +03:00
ac245ad0a4 Handle circle dependencies for package // Resolve #919 2017-03-26 21:04:16 +03:00
64eaa1516b Add information about VSCode integration // Resolve #619 2017-03-26 20:45:08 +03:00
4e5f34ec19 Allow installing package by framework name 2017-03-26 19:43:00 +03:00
bb124ce681 Update history 2017-03-26 00:43:11 +02:00
d3679671ac Increase exception description length for report 2017-03-23 22:11:48 +02:00
571a52b432 Move core packages to the one place; Bump to 3.0.0a17 2017-03-11 23:28:55 +02:00
a20434ace5 New boards: Generic ATTiny2313 and ATTiny4313 2017-03-11 13:41:25 +02:00
31715e937b Check that PIO Plus could be updated before do update 2017-03-11 13:12:41 +02:00
f39cda041c Fix issue when check updates for VCS repository // Resolve #917 2017-03-11 13:11:58 +02:00
09e15f6d2a Fix Upgrade for 3.0.0b1 2017-03-10 01:18:33 +02:00
23ac02bea1 Note about Antivirus when can’t install a package // Resolve #916 2017-03-10 00:38:04 +02:00
2cd3592a49 Fix issue with an update operation for package manager 2017-03-10 00:29:22 +02:00
f8b2902c91 Don’t update development platforms after PIO upgrade 2017-03-09 23:24:50 +02:00
36d6421312 Bump version to 3.3.0a14 2017-03-08 20:00:00 +02:00
8c283dc8a0 Inform about broken manifest while loading it // Resolve #899 2017-03-08 19:55:56 +02:00
d994da9d53 Check outdated packages for development platform 2017-03-08 19:52:11 +02:00
2fe4b7c0ec Change manifests order for Library Manager 2017-03-08 17:33:25 +02:00
58942c3f38 Significantly improve Package Manager // Resolve #913
* Handle dependencies when installing non-registry package/library (VCS, archive, local folder)
2017-03-08 17:24:58 +02:00
41cea76603 New section for “platformio.ini” Dynamic build flag 2017-03-06 17:45:38 +02:00
a235c532e4 Add example how to get VCS revision "on-the-fly" for the Windows // Resolve #901 2017-03-06 17:08:05 +02:00
5e5c9d3bcf Generate valid directory name when move package 2017-03-05 00:14:05 +02:00
93ce65b28b Unfix installed package when the latest version is uninstalled 2017-03-04 18:37:03 +02:00
3c10e84def Skip projects examples from test on macOS 2017-03-04 17:36:21 +02:00
20d6b2ebbb Fix duplicate explicit target name: "issue #865 in history 2017-03-03 23:40:35 +02:00
cb927c276c Improve JSON support for pio platform sub-commands 2017-03-03 23:29:17 +02:00
3adc3eace3 Switch to new Packages API 2017-03-02 17:09:32 +02:00
fe1846c2e1 YAPF formatting 2017-03-02 17:09:22 +02:00
cfd1f03023 Switch to new Packages API 2017-03-02 16:11:23 +02:00
ba750f0eee Add warning about “.gcc-flags.json” file and custom flags 2017-02-28 19:25:48 +02:00
a119fdfc48 temporary use “develop” version of script 2017-02-28 00:26:28 +02:00
2e6d66fcd4 Sort boards by name 2017-02-26 23:47:04 +02:00
c0c8368905 Code cleanup 2017-02-26 19:37:26 +02:00
8f79d865aa List supported frameworks, SDKs with a new pio platform frameworks command 2017-02-26 17:53:41 +02:00
8f5e23ae95 Update PIO IDE installation guide 2017-02-25 21:28:35 +02:00
30f698ddf0 Typo fix in RST 2017-02-25 14:04:09 +02:00
d4cd3dd600 A few notes about PIO remote Cloud IDE integration 2017-02-25 13:12:52 +02:00
8e0ad02249 New article by Bastiaan Vise 2017-02-23 19:00:26 +02:00
2f6c594ee6 Fix PIO IDE uninstallation steps for macOS 2017-02-23 16:49:26 +02:00
570b72f4c2 Remove PlatformIO title from navbar 2017-02-22 23:41:36 +02:00
024d830621 New ESP IDF examples: BLE, Coap Server, Peripherals UART, Storage SDCard 2017-02-22 16:58:28 +02:00
a817ec19ed Improve docs for PIO Remote 2017-02-22 15:50:23 +02:00
bcb265b42d Update history 2017-02-21 11:54:04 +02:00
2467d5a5d0 Do not overwrite project configuration variables when system environment variables are set 2017-02-18 18:28:05 +02:00
c098b8bbca Fix incorrect example with library dependencies using GIT url and branch/tag/commit // Resolve #902 2017-02-18 17:38:45 +02:00
ea6bf48b3d Fix Shippable link in a history 2017-02-18 15:15:36 +02:00
6ede03f880 Explain how to uninstall Atom with PlatformIO IDE 2017-02-10 12:50:42 +02:00
e180f1cf45 Add example with “lib_extra_dirs” for Windows to platformio.ini 2017-02-04 17:14:42 +02:00
b3ee14bf55 Add example with ignoring mbed-fs 2017-02-02 17:39:08 +02:00
ec88b719f6 Add info about ability to ignore built-in mbed libraries 2017-02-02 17:35:05 +02:00
c03d7bd1c4 Cleanup check only on update command 2017-02-02 13:44:52 +02:00
84d5fbcfe5 Don’t lock cache directory while cleaning 2017-02-02 02:52:07 +02:00
20d9f7dae7 Don’t return something when can’t retrieve latest version 2017-02-01 19:07:53 +02:00
50dc608456 Cleanup cache on platform update 2017-02-01 14:52:32 +02:00
3d6dab39ca Minor fixes for content cacher 2017-02-01 02:49:25 +02:00
ba58b4ba8a Skip bad requests 2017-02-01 00:58:12 +02:00
cbb46fe7b6 Fix PEP to SemVer converting 2017-01-31 01:58:10 +02:00
d99ae7b1a3 Bump new alpha 10 2017-01-31 01:02:41 +02:00
b5482db581 Don’t check for updates tagged VCS repo 2017-01-30 23:54:55 +02:00
916f4b071c Don’t check packages when check platform version 2017-01-30 22:36:25 +02:00
1143012216 Improve Package Manager when check for updates // Resolve #892 2017-01-30 20:21:16 +02:00
1d1c677c81 Update Quick Start for PIO Remote 2017-01-30 15:03:08 +02:00
34eab69e85 “pio lib update” and “pio platform update” in JSON format 2017-01-30 01:04:06 +02:00
c1e14b671c Temporary use develop version of get-pio script 2017-01-28 21:20:59 +02:00
8a7d255361 Handle libraries without manifests 2017-01-28 17:06:20 +02:00
a4d8749e44 Don’t warn about known built-in libraries while building a project 2017-01-28 15:48:36 +02:00
4d566b81d1 Using Arduino Framework with Staging version for ESP32 2017-01-27 23:52:00 +02:00
65db6ce497 Add new boards to docs 2017-01-27 21:49:10 +02:00
054b5cca6b * Added support for EnviroDIY Mayfly board 2017-01-27 21:08:15 +02:00
6123d055f9 Update Blink example for PIO IDE with default value for “LED_BUILTIN” 2017-01-27 13:36:33 +02:00
9cf242ad89 Check manifest engines field for PIO Core version 2017-01-25 15:33:40 +02:00
162caf61a2 Handle requirements for package defined in platform manifest 2017-01-25 02:08:20 +02:00
d64f4778df Package version as "Repository URL" in manifest of development version 2017-01-24 22:07:45 +02:00
a874db38be Apply YAPF 2017-01-24 21:54:50 +02:00
92b2782af8 Fix package installing with VCS branch for Python 2.7.3 // Resolve #885 2017-01-24 17:36:34 +02:00
682f1cb798 Return “False” for unknown outdated package 2017-01-24 16:14:31 +02:00
d31c09f786 Typo fix 2017-01-24 01:37:50 +02:00
5d8a17ba6d Fix issue with empty CPPPATH when processing a library 2017-01-23 14:24:34 +02:00
8314e05a71 Add tip about chat for PIO Plus 2017-01-23 00:30:23 +02:00
ce066417e9 Add new options `--monitor-rts and --monitor-dtr to pio test` command 2017-01-23 00:13:58 +02:00
9405ca3dff Update Arduino SAM & SAMD Core to 1.6.11 2017-01-22 00:10:39 +02:00
b5ddf380ca Add new option “--no-reset” to “pio test” command 2017-01-21 19:58:20 +02:00
06209c17b5 Update Arduino Core for AVR to 1.6.17 2017-01-20 23:47:28 +02:00
ddd07138dd Escape project path when Glob matching is used 2017-01-19 19:02:37 +02:00
20246a3481 Update TIVA C Energia Core to 1.0.2 2017-01-19 13:59:02 +02:00
101ceb538b Update history 2017-01-18 21:54:04 +02:00
6c111959b4 Fix platform installation from VCS // Resolve #878 2017-01-18 15:19:46 +02:00
369aff9113 Fix indent level for Options 2017-01-15 00:19:25 +02:00
b8de4b26b0 List built-in libraries based on development platforms with pio lib builtin command 2017-01-15 00:12:41 +02:00
a9400f5a9c New article by Tiest van Gool 2017-01-13 14:20:18 +02:00
fb2f1d3553 Use C++11 by default for CLion IDE based projects // Resolve #873 2017-01-12 20:07:28 +02:00
87f3cbdda7 Add “Fuses” section to Atmel AVR development platform // Resolve #865 2017-01-07 17:57:40 +02:00
ff5fac251e Custom action before building SPIFFS image. For example, compress HTML, etc. 2017-01-03 20:15:52 +02:00
72e94398bf Improve output of pio lib list and pio lib search commands 2016-12-29 01:31:44 +02:00
1df89525e6 Fix test for pio lib show command 2016-12-28 16:51:28 +02:00
82662d0a09 Move library manager user guide to upper level 2016-12-28 16:00:19 +02:00
e7cc94c27e Show detailed info about a library using pio lib show command // Resolve #430 2016-12-28 15:55:08 +02:00
b6e09c5da4 Fix direct access to non-existing ContentCache data 2016-12-26 14:44:19 +02:00
b6de719f2b Add support for Pumbaa Framework 2016-12-24 16:59:31 +02:00
6cad7c01a7 New docs: Extra Linker Flags without `-Wl,` prefix 2016-12-24 14:55:00 +02:00
c504001f04 PlatformIO Library Registry statistics with new pio lib stats 2016-12-23 21:57:11 +02:00
ede581182c Fix RST for history 2016-12-22 14:13:56 +02:00
80f67df3fa Update history 2016-12-22 13:10:48 +02:00
c7fba32229 Fix CLA link 2016-12-22 02:15:51 +02:00
1a4c5df14d Added support for templated methods in InoToCPPConverter (#858)
* Added support for templated methods in InoToCPPConverter
2016-12-22 02:15:01 +02:00
7f38c85738 Update history and docs 2016-12-18 20:46:35 +02:00
2521a2420d Sync docs and examples 2016-12-16 22:41:53 +02:00
8c47814d8d Add support for Samsung ARTIK boards (520, 710, 1020) and ARTIK SDK // Resolve #353 2016-12-16 21:33:17 +02:00
539ad4b5ee New article by Dr. Patrick Mineault; Add Unit Testing example with Labmet Weather Station 2016-12-15 21:23:46 +02:00
99c7473208 Specify default LED_BUILTIN for Quick Start example and wiring-blink 2016-12-15 13:17:52 +02:00
403da8e22b Allow framework without package 2016-12-15 13:05:55 +02:00
e9f15ba034 Add example with media disk for upload_port 2016-12-14 14:01:12 +02:00
0d52147005 Update ISSUE_TEMPLATE.md 2016-12-14 13:14:40 +02:00
bd7d41ed37 Typo fix in docs 2016-12-13 19:51:56 +02:00
8869680302 Make workpiece to dump all platform packages 2016-12-12 23:26:42 +02:00
f1e06da156 Update examples with ArduinoJson library 2016-12-12 17:58:01 +02:00
4a6e644b2f New article by Cuong Tran Viet 2016-12-12 17:13:24 +02:00
d2b3ce55e5 New board Node32s; Update ESP32 Core for Arduino 2016-12-10 18:06:05 +02:00
65e83af982 New board Node32s; Update ESP32 Core for Arduino 2016-12-10 17:49:20 +02:00
36c0c123d3 Update links and data 2016-12-08 20:46:09 +02:00
0286567df8 Fix RST warning 2016-12-08 14:43:15 +02:00
4cf542c6f6 Use stable version of get-platformio.py 2016-12-08 14:37:24 +02:00
7dcddb295e Use stable version of PIO Core 2016-12-08 14:19:47 +02:00
ee086ff580 Produce less noisy output when “-s/—silent” options are used for run and init commands // Resolve #850 2016-12-08 14:15:13 +02:00
c71e15ca10 Merge branch 'release/v3.2.1' 2016-12-07 23:49:54 +02:00
a1ed5c6262 Merge branch 'release/v3.2.1' into develop 2016-12-07 23:49:54 +02:00
c09649c996 Change default LDF Mode from “chain+” to “chain” 2016-12-07 23:49:38 +02:00
0c04d4a435 Merge branch 'release/v3.2.0' into develop 2016-12-07 22:08:45 +02:00
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
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
589 changed files with 18574 additions and 35535 deletions

28
.appveyor.yml Normal file
View File

@ -0,0 +1,28 @@
build: off
platform:
- x64
environment:
matrix:
- TOXENV: "py27"
PLATFORMIO_BUILD_CACHE_DIR: C:/Temp/PIO_Build_Cache_P2_{build}
- TOXENV: "py36"
PLATFORMIO_BUILD_CACHE_DIR: C:/Temp/PIO_Build_Cache_P3_{build}
install:
- cmd: git submodule update --init --recursive
- cmd: SET PATH=C:\MinGW\bin;%PATH%
- cmd: pip install --force-reinstall 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

View File

@ -1,4 +1,4 @@
# Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
# Copyright (c) 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.
@ -12,18 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
from platformio.platforms.base import BasePlatform
class NativePlatform(BasePlatform):
"""
Native development platform is intended to be used for desktop OS.
This platform uses built-in tool chains (preferable based on GCC),
frameworks, libs from particular OS where it will be run.
http://platformio.org/#!/platforms/native
"""
PACKAGES = {
}
[report]
# Regexes for lines to exclude from consideration
exclude_lines =
pragma: no cover
def __repr__
raise AssertionError
raise NotImplementedError

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
custom: https://platformio.org/donate

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

@ -0,0 +1,64 @@
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 [Community Forums](https://community.platformio.org) or [Premium Support](https://platformio.org/support)
- [ ] **PlatformIO IDE**.
All issues related to PlatformIO IDE should be reported to appropriate repository:
[PlatformIO IDE for Atom](https://github.com/platformio/platformio-atom-ide/issues) or
[PlatformIO IDE for VSCode](https://github.com/platformio/platformio-vscode-ide/issues)
- [ ] **Development Platform or Board**.
All issues (building, uploading, adding new boards, etc.) related to PlatformIO development platforms
should be reported to appropriate repository related to your hardware
https://github.com/topics/platformio-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

7
.gitignore vendored
View File

@ -2,6 +2,11 @@
*.pyc
.pioenvs
.tox
.sconsign.dblite
docs/_build
dist
build
.cache
coverage.xml
.coverage
htmlcov
.pytest_cache

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=bottle,click,lockfile,pytest,requests,serial,SCons
known_third_party=bottle,click,pytest,requests,SCons,semantic_version,serial,twisted,autobahn,jsonrpc,tabulate

View File

@ -1,23 +1,12 @@
[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.
#enable=
# Disable the message, report, category or checker with the given id(s). You
# can either give multiple identifiers separated by comma (,) or put this
# option multiple times (only on the command line, not in the configuration
# file where it should appear only once).You can also use "--disable=all" to
# disable everything first and then reenable specific checks. For example, if
# you want to run only the similarities checker, you can use "--disable=all
# --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=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
disable=locally-disabled,missing-docstring,invalid-name,too-few-public-methods,redefined-variable-type,import-error,similarities,unsupported-membership-test,unsubscriptable-object,ungrouped-imports
disable=
missing-docstring,
ungrouped-imports,
invalid-name,
cyclic-import,
duplicate-code,
superfluous-parens,
too-few-public-methods,
useless-object-inheritance,
useless-import-alias,
fixme

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,15 +1,39 @@
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: required
python: 2.7
env: TOX_ENV=py27 PLATFORMIO_BUILD_CACHE_DIR=$(mktemp -d)
- os: linux
sudo: required
python: 3.6
env: TOX_ENV=py36 PLATFORMIO_BUILD_CACHE_DIR=$(mktemp -d)
- os: osx
language: generic
env: TOX_ENV=skipexamples
install:
- pip install -U pip setuptools tox
- git submodule update --init --recursive
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -fsSL https://bootstrap.pypa.io/get-pip.py | sudo python; fi
- pip install -U tox
# ChipKIT issue: install 32-bit support for GCC PIC32
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get install libc6-i386; fi
script:
- tox -e $TOX_ENV
- tox -e $TOX_ENV
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-core">sign the Contributor License Agreement</a>.
1. Fork the repository on GitHub.
2. Clone repository `git clone --recursive https://github.com/YourGithubUsername/platformio-core.git`
3. Run `pip install tox`
4. Go to the root of project where is located `tox.ini` and run `tox -e py27`
5. Activate current development environment:
* Windows: `.tox\py27\Scripts\activate`
* Bash/ZSH: `source .tox/py27/bin/activate`
* Fish: `source .tox/py27/bin/activate.fish`
6. Make changes to code, documentation, etc.
7. Lint source code `make lint`
8. Run the tests `make test`
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

33
Makefile Normal file
View File

@ -0,0 +1,33 @@
lint:
pylint --rcfile=./.pylintrc ./platformio
isort:
isort -rc ./platformio
isort -rc ./tests
yapf:
yapf --recursive --in-place platformio/
test:
py.test --verbose --capture=no --exitfirst -n 3 --dist=loadscope tests --ignore tests/test_examples.py --ignore tests/test_pkgmanifest.py
before-commit: isort yapf lint test
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
profile:
# Usage $ > make PIOARGS="boards" profile
python -m cProfile -o .tox/.tmp/cprofile.prof $(shell which platformio) ${PIOARGS}
snakeviz .tox/.tmp/cprofile.prof
publish:
python setup.py sdist upload

View File

@ -1,183 +1,146 @@
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://circleci.com/gh/platformio/platformio/tree/develop.svg?style=svg
:target: https://circleci.com/gh/platformio/platformio/tree/develop
:alt: Circle.CI Build Status
.. 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://img.shields.io/pypi/l/platformio.svg
.. image:: https://img.shields.io/badge/license-Apache%202.0-blue.svg
:target: https://pypi.python.org/pypi/platformio/
:alt: License
.. image:: https://img.shields.io/pypi/dm/platformio.svg
:target: https://pypi.python.org/pypi/platformio/
:alt: PyPi Downloads
.. image:: https://img.shields.io/sourceforge/dm/platformio-storage.svg
:target: https://sourceforge.net/projects/platformio-storage/
:alt: Packages Downloads
.. 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/badge/PlatformIO-Community-orange.svg
:alt: Community Forums
:target: https://community.platformio.org?utm_source=github&utm_medium=core
`Home & Demo <http://platformio.org>`_ |
`Project Examples <https://github.com/platformio/platformio/tree/develop/examples>`_ |
`Source Code <https://github.com/platformio>`_ |
`Documentation <http://docs.platformio.org>`_ |
`Blog <http://www.ikravets.com/category/computer-life/platformio>`_ |
`Twitter <https://twitter.com/PlatformIO_Org>`_ |
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
**Quick Links:** `Web <https://platformio.org?utm_source=github&utm_medium=core>`_ |
`PlatformIO IDE <https://platformio.org/platformio-ide?utm_source=github&utm_medium=core>`_ |
`Project Examples <https://github.com/platformio/platformio-examples/>`__ |
`Docs <https://docs.platformio.org?utm_source=github&utm_medium=core>`_ |
`Donate <https://platformio.org/donate?utm_source=github&utm_medium=core>`_ |
`Contact Us <https://platformio.org/contact?utm_source=github&utm_medium=core>`_
**Social:** `Twitter <https://twitter.com/PlatformIO_Org>`_ |
`LinkedIn <https://www.linkedin.com/company/platformio/>`_ |
`Facebook <https://www.facebook.com/platformio>`_ |
`Reddit <http://www.reddit.com/r/platformio/>`_
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
`Bintray <https://bintray.com/platformio>`_ |
`Community <https://community.platformio.org?utm_source=github&utm_medium=core>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-logo.png
:target: http://platformio.org
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-ide-laptop.png
:target: https://platformio.org?utm_source=github&utm_medium=core
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
development. Cross-platform code builder and library manager. Continuous and
IDE integration. Arduino and MBED compatible. Ready for Cloud compiling.
`PlatformIO <https://platformio.org?utm_source=github&utm_medium=core>`_ is an open source ecosystem for IoT
development. Cross-platform IDE and unified debugger. Remote unit testing and
firmware updates.
* **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
Get Started
-----------
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
libOpenCM3, etc.*
* `What is PlatformIO? <https://docs.platformio.org/en/latest/what-is-platformio.html?utm_source=github&utm_medium=core>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-demo-wiring.gif
:target: http://platformio.org
Open Source
-----------
* `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 <https://platformio.org/platformio-ide?utm_source=github&utm_medium=core>`_
* `PlatformIO Core (CLI) <https://docs.platformio.org/en/latest/core.html?utm_source=github&utm_medium=core>`_
* `Library Management <https://docs.platformio.org/page/librarymanager/index.html?utm_source=github&utm_medium=core>`_
* `Project Examples <https://github.com/platformio/platformio-examples?utm_source=github&utm_medium=core>`__
* `Desktop IDEs Integration <https://docs.platformio.org/page/ide.html?utm_source=github&utm_medium=core>`_
* `Continuous Integration <https://docs.platformio.org/page/ci/index.html?utm_source=github&utm_medium=core>`_
* `Advanced Scripting API <https://docs.platformio.org/page/projectconf/advanced_scripting.html?utm_source=github&utm_medium=core>`_
Use whenever. *Run everywhere.*
-------------------------------
*PlatformIO* is written in pure *Python* and **doesn't depend** on any
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>`_,
`CubieBoard <http://cubieboard.org>`_).
PIO Plus
--------
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>`_.
* `PIO Remote <https://docs.platformio.org/page/plus/pio-remote.html?utm_source=github&utm_medium=core>`_
* `PIO Unified Debugger <https://docs.platformio.org/page/plus/debugging.html?utm_source=github&utm_medium=core>`_
* `PIO Unit Testing <https://docs.platformio.org/en/latest/plus/unit-testing.html?utm_source=github&utm_medium=core>`_
* `Cloud IDEs Integration <https://docs.platformio.org/en/latest/ide.html?utm_source=github&utm_medium=core#solution-pio-delivery>`_
* `Integration Services <https://platformio.org/pricing?utm_source=github&utm_medium=core#enterprise-features>`_
* Colourful `command-line output <https://raw.githubusercontent.com/platformio/platformio/develop/examples/platformio-examples.png>`_
* `IDE Integration <http://docs.platformio.org/en/latest/ide.html>`_ with
*Arduino, Eclipse, Energia, Qt Creator, Sublime Text, Vim, Visual Studio*
* Cloud compiling and `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html>`_
with *AppVeyor, Circle CI, Drone, Shippable, Travis CI*
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/latest/userguide/cmd_serialports.html#platformio-serialports-monitor>`_ and configurable
`build -flags/-options <http://docs.platformio.org/en/latest/projectconf.html#build-flags>`_
* Automatic **firmware uploading**
* Pre-built tool chains, frameworks for the popular `Hardware Platforms <http://platformio.org/#!/platforms>`_
Registry
--------
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-embedded-development.png
:target: http://platformio.org
:alt: PlatformIO Embedded Development Process
* `Libraries <https://platformio.org/lib?utm_source=github&utm_medium=core>`_
* `Development Platforms <https://platformio.org/platforms?utm_source=github&utm_medium=core>`_
* `Frameworks <https://platformio.org/frameworks?utm_source=github&utm_medium=core>`_
* `Embedded Boards <https://platformio.org/boards?utm_source=github&utm_medium=core>`_
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.
Development Platforms
---------------------
* Friendly `Command-Line Interface <http://docs.platformio.org/en/latest/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>`_
specification
* Library **dependency management**
* Automatic library updating
* `Aceinna IMU <https://platformio.org/platforms/aceinna_imu?utm_source=github&utm_medium=core>`_
* `Atmel AVR <https://platformio.org/platforms/atmelavr?utm_source=github&utm_medium=core>`_
* `Atmel SAM <https://platformio.org/platforms/atmelsam?utm_source=github&utm_medium=core>`_
* `Espressif 32 <https://platformio.org/platforms/espressif32?utm_source=github&utm_medium=core>`_
* `Espressif 8266 <https://platformio.org/platforms/espressif8266?utm_source=github&utm_medium=core>`_
* `Freescale Kinetis <https://platformio.org/platforms/freescalekinetis?utm_source=github&utm_medium=core>`_
* `Infineon XMC <https://platformio.org/platforms/infineonxmc?utm_source=github&utm_medium=core>`_
* `Intel ARC32 <https://platformio.org/platforms/intel_arc32?utm_source=github&utm_medium=core>`_
* `Intel MCS-51 (8051) <https://platformio.org/platforms/intel_mcs51?utm_source=github&utm_medium=core>`_
* `Kendryte K210 <https://platformio.org/platforms/kendryte210?utm_source=github&utm_medium=core>`_
* `Lattice iCE40 <https://platformio.org/platforms/lattice_ice40?utm_source=github&utm_medium=core>`_
* `Maxim 32 <https://platformio.org/platforms/maxim32?utm_source=github&utm_medium=core>`_
* `Microchip PIC32 <https://platformio.org/platforms/microchippic32?utm_source=github&utm_medium=core>`_
* `Nordic nRF51 <https://platformio.org/platforms/nordicnrf51?utm_source=github&utm_medium=core>`_
* `Nordic nRF52 <https://platformio.org/platforms/nordicnrf52?utm_source=github&utm_medium=core>`_
* `NXP LPC <https://platformio.org/platforms/nxplpc?utm_source=github&utm_medium=core>`_
* `RISC-V <https://platformio.org/platforms/riscv?utm_source=github&utm_medium=core>`_
* `RISC-V GAP <https://platformio.org/platforms/riscv_gap?utm_source=github&utm_medium=core>`_
* `Samsung ARTIK <https://platformio.org/platforms/samsung_artik?utm_source=github&utm_medium=core>`_
* `Silicon Labs EFM32 <https://platformio.org/platforms/siliconlabsefm32?utm_source=github&utm_medium=core>`_
* `ST STM32 <https://platformio.org/platforms/ststm32?utm_source=github&utm_medium=core>`_
* `ST STM8 <https://platformio.org/platforms/ststm8?utm_source=github&utm_medium=core>`_
* `Teensy <https://platformio.org/platforms/teensy?utm_source=github&utm_medium=core>`_
* `TI MSP430 <https://platformio.org/platforms/timsp430?utm_source=github&utm_medium=core>`_
* `TI Tiva <https://platformio.org/platforms/titiva?utm_source=github&utm_medium=core>`_
* `WIZNet W7500 <https://platformio.org/platforms/wiznet7500?utm_source=github&utm_medium=core>`_
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-library-manager.png
:target: http://platformio.org
:alt: PlatformIO Library Manager Architecture
Frameworks
----------
Smart Code Builder. *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,
cross-platform substitute for the classic *Make* utility.
* `Arduino <https://platformio.org/frameworks/arduino?utm_source=github&utm_medium=core>`_
* `ARTIK SDK <https://platformio.org/frameworks/artik-sdk?utm_source=github&utm_medium=core>`_
* `CMSIS <https://platformio.org/frameworks/cmsis?utm_source=github&utm_medium=core>`_
* `Energia <https://platformio.org/frameworks/energia?utm_source=github&utm_medium=core>`_
* `ESP-IDF <https://platformio.org/frameworks/espidf?utm_source=github&utm_medium=core>`_
* `ESP8266 Non-OS SDK <https://platformio.org/frameworks/esp8266-nonos-sdk?utm_source=github&utm_medium=core>`_
* `ESP8266 RTOS SDK <https://platformio.org/frameworks/esp8266-rtos-sdk?utm_source=github&utm_medium=core>`_
* `Freedom E SDK <https://platformio.org/frameworks/freedom-e-sdk?utm_source=github&utm_medium=core>`_
* `Kendryte Standalone SDK <https://platformio.org/frameworks/kendryte-standalone-sdk?utm_source=github&utm_medium=core>`_
* `libOpenCM3 <https://platformio.org/frameworks/libopencm3?utm_source=github&utm_medium=core>`_
* `mbed <https://platformio.org/frameworks/mbed?utm_source=github&utm_medium=core>`_
* `PULP OS <https://platformio.org/frameworks/pulp-os?utm_source=github&utm_medium=core>`_
* `Pumbaa <https://platformio.org/frameworks/pumbaa?utm_source=github&utm_medium=core>`_
* `Simba <https://platformio.org/frameworks/simba?utm_source=github&utm_medium=core>`_
* `SPL <https://platformio.org/frameworks/spl?utm_source=github&utm_medium=core>`_
* `STM32Cube <https://platformio.org/frameworks/stm32cube?utm_source=github&utm_medium=core>`_
* `Tizen RT <https://platformio.org/frameworks/tizenrt?utm_source=github&utm_medium=core>`_
* `WiringPi <https://platformio.org/frameworks/wiringpi?utm_source=github&utm_medium=core>`_
* Reliable, automatic *dependency analysis*
* 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>`_
Contributing
------------
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png
:target: http://platformio.org
:alt: PlatformIO Code Builder Architecture
See `contributing guidelines <https://github.com/platformio/platformio/blob/develop/CONTRIBUTING.md>`_.
Single source code. *Multiple platforms.*
-----------------------------------------
*PlatformIO* allows the developer to compile the same code with different
development platforms using only *One Command*
`platformio run <http://docs.platformio.org/en/latest/userguide/cmd_run.html>`_.
This happens due to
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/latest/projectconf.html>`_
where you can setup different environments with specific options (platform
type, firmware uploading settings, pre-built framework, build flags and many
more).
Telemetry / Privacy Policy
--------------------------
It has support for the most popular embedded platforms:
Share minimal diagnostics and usage information to help us make PlatformIO better.
It is enabled by default. For more information see:
* `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>`_
* `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>`_
* `Telemetry Setting <https://docs.platformio.org/en/latest/userguide/cmd_settings.html?utm_source=github&utm_medium=core#enable-telemetry>`_
* `SSL Setting <https://docs.platformio.org/en/latest/userguide/cmd_settings.html?utm_source=github&utm_medium=core#strict-ssl>`_
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>`_
For further details, please refer to `What is PlatformIO? <http://docs.platformio.org/en/latest/faq.html#what-is-platformio>`_
Licence
License
-------
Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
Copyright (c) 2014-present PlatformIO <contact@platformio.org>
The PlatformIO is licensed under the permissive Apache 2.0 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,27 +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"
before_test:
- cmd: SET PATH=%PATH%;C:\MinGW\bin
test_script:
- "%PYTHON_HOME%\\Scripts\\tox --version"
- "%PYTHON_HOME%\\Scripts\\pip --version"
- "%WITH_COMPILER% %PYTHON_HOME%\\Scripts\\tox"

View File

@ -1,16 +0,0 @@
machine:
python:
version: 2.7
checkout:
post:
- git submodule update --init
- pip install -U pip setuptools virtualenv
dependencies:
pre:
- pip install tox
test:
override:
- tox -e py27

1
docs Submodule

Submodule docs added at 3f5d12ca25

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: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

254
docs/_static/extra.css vendored
View File

@ -1,254 +0,0 @@
/**
* Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
*
* 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.
*/
header,
nav {
display: block;
}
#pionav {
display: none;
}
.container {
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
@media (min-width: 768px) {
#pionav {
display: block !important;
}
body {
padding-top: 50px;
}
.wy-nav-side {
top: 50px;
}
.container {
width: 750px;
}
}
@media (min-width: 992px) {
.container {
width: 970px;
}
}
@media (min-width: 1200px) {
.container {
width: 1170px;
}
}
.container-fluid {
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after {
display: table;
content: " ";
}
.container:after,
.container-fluid:after,
.nav:after,
.navbar:after,
.navbar-header:after {
clear: both;
}
.nav {
padding-left: 0;
margin-bottom: 0;
list-style: none;
}
.nav > li {
position: relative;
display: block;
}
.nav > li > a {
position: relative;
display: block;
padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
text-decoration: none;
background-color: #eee;
}
.nav > li > a > img {
max-width: none;
}
.navbar {
position: relative;
min-height: 50px;
margin-bottom: 20px;
border: 1px solid transparent;
}
@media (min-width: 768px) {
.navbar {
border-radius: 4px;
}
}
@media (min-width: 768px) {
.navbar-header {
float: left;
}
}
@media (min-width: 768px) {
.navbar-fixed-top {
padding-right: 0;
padding-left: 0;
}
}
.navbar-fixed-top {
max-height: 340px;
}
.container > .navbar-header,
.container-fluid > .navbar-header {
margin-right: -15px;
margin-left: -15px;
}
@media (min-width: 768px) {
.container > .navbar-header,
.container-fluid > .navbar-header {
margin-right: 0;
margin-left: 0;
}
}
.navbar-fixed-top {
position: fixed;
right: 0;
left: 0;
z-index: 1030;
}
@media (min-width: 768px) {
.navbar-fixed-top {
border-radius: 0;
}
}
.navbar-fixed-top {
top: 0;
border-width: 0 0 1px;
}
.navbar-fixed-bottom {
bottom: 0;
margin-bottom: 0;
border-width: 1px 0 0;
}
.navbar-brand {
float: left;
height: 50px;
padding: 15px 15px;
font-size: 18px;
line-height: 20px;
}
.navbar-brand:hover,
.navbar-brand:focus {
text-decoration: none;
}
.navbar-brand > img {
display: block;
}
@media (min-width: 768px) {
.navbar > .container .navbar-brand,
.navbar > .container-fluid .navbar-brand {
margin-left: -15px;
}
}
.navbar-nav {
margin: 7.5px -15px;
}
.navbar-nav > li > a {
padding-top: 10px;
padding-bottom: 10px;
line-height: 20px;
}
@media (min-width: 768px) {
.navbar-nav {
float: left;
margin: 0;
}
.navbar-nav > li {
float: left;
}
.navbar-nav > li > a {
padding-top: 15px;
padding-bottom: 15px;
}
}
@media (min-width: 768px) {
.navbar-left {
float: left !important;
}
.navbar-right {
float: right !important;
margin-right: -15px;
}
.navbar-right ~ .navbar-right {
margin-right: 0;
}
}
.navbar-inverse {
background-color: #222;
border-color: #080808;
}
.navbar-inverse .navbar-brand {
color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-text {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
color: #fff;
background-color: #080808;
}
.navbar-header .navbar-brand {
color: #e0e0e0;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 292 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: 192 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 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: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 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: 2.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 569 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

View File

@ -1,56 +0,0 @@
{% extends "!footer.html" %}
{% block extrafooter %}
<link rel="stylesheet" href="{{ pathto('_static/extra.css', 1) }}" type="text/css" />
<header id="pionav" class="navbar navbar-inverse navbar-fixed-top">
<div class="container container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="http://platformio.org/"></i> PlatformIO</a>
</div>
<nav role="navigation">
<div>
<ul class="nav navbar-nav">
<li><a href="http://platformio.org/#!/get-started"><i class="fa fa-rocket fa-lg"></i> Get Started</a></li>
<li><a href="http://platformio.org/#!/platforms"><i class="fa fa-laptop fa-lg"></i> Platforms</a></li>
<li><a href="http://platformio.org/#!/frameworks"><i class="fa fa-cogs fa-lg"></i> Frameworks</a></li>
<li><a href="http://platformio.org/#!/boards"><i class="fa fa-gamepad fa-lg"></i> Boards</a></li>
<li ><a href="http://platformio.org/#!/lib"><i class="fa fa-code fa-lg"></i> Libraries</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="http://platformio.org/#!/who-uses"><i class="fa fa-heart-o fa-lg"></i> Who uses</a></li>
<li class="active"><a href="http://docs.platformio.org/"><i class="fa fa-book fa-lg"></i> Docs</a></li>
</ul>
</div>
</nav>
</div>
</header>
<script>
(function() {
var runMyCode = function($) {
$(window).ready(function() {
if ($('#pionav').css('display') !== 'block') {
return;
}
function fixScroll() {
$(window).scrollTop($(window).scrollTop() - 50);
}
window.setTimeout(fixScroll, 50);
$(window).on('hashchange', function(e){fixScroll();});
});
};
var timer = function() {
if (window.jQuery) {
runMyCode(window.jQuery);
} else {
window.setTimeout(timer, 50);
}
};
timer();
})();
</script>
{{ super() }}
{% endblock %}

View File

@ -1,58 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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:
2015
^^^^
* Dec 01, 2015 - **JetBrains CLion Blog** - `C++ Annotated: Fall 2015. Arduino Support in CLion using PlatformIO <http://blog.jetbrains.com/clion/2015/12/cpp-annotated-fall-2015/>`_
* Dec 01, 2015 - **Tateno Yuichi** - `ESP8266 を CUI で開発する (Develop a ESP8266 in CUI, Japanese) <http://jaywiggins.com/platformio/arduino/avr/es8266/2015/09/30/platformio-investigation/>`_
* Nov 29, 2015 - **Keith Hughes** - `Using PlatformIO for Embedded Projects <http://smartspacestuff.blogspot.com/2015/11/using-platformio-for-embedded-projects.html>`_
* Nov 22, 2015 - **Michał Seroczyński** - `Using PlatformIO to get started with Arduino in CLion IDE <http://www.ches.pl/using-platformio-get-started-arduino-clion-ide/>`_
* Nov 09, 2015 - **ÁLvaro García Gómez** - `Programar con Arduino "The good way" (Programming with Arduino "The good way", Spanish) <http://congdegnu.es/2015/11/09/programar-con-arduino-the-good-way/>`_
* Nov 06, 2015 - **nocd5** - `PlatformIOでmbedをオフラインビルドしSTM32 Nucleoボードでmrubyを使う (Use mruby in the offline build for STM32 Nucleo board with mbed and PlatformIO, Japanese) <http://qiita.com/nocd5/items/d5fda776240f7e7c17eb>`_
* Oct 21, 2015 - **Vittorio Zaccaria** - `Using a cheap STM32 Nucleo to teach remote sensor monitoring <http://www.vittoriozaccaria.net/blog/2015/10/21/using-a-cheap-stm32-nucleo-to-teach-remote-sensor-monitoring.html>`_
* Oct 18, 2015 - **Nico Coetzee** - `First Arduino I2C Experience with PlatformIO <https://electronicventurer.wordpress.com/2015/10/18/first-arduino-i2c-experience/>`_
* Oct 01, 2015 - **Mistan** - `Compile and Upload Arduino Sketch with PlatformIO for Raspberry Pi Running Arch Linux <http://tech.memoryimprintstudio.com/code-building-for-arduino-with-platformio-for-raspberry-pi-with-arch-linux/>`_
* Sep 30, 2015 - **Jay Wiggins** - `PlatformIO Investigation <http://jaywiggins.com/platformio/arduino/avr/es8266/2015/09/30/platformio-investigation/>`_
* Sep 01, 2015 - **Thomas P. Weldon, Ph.D.** - `Improvised MBED FRDM-K64F Eclipse/PlatformIO Setup and Software Installation <http://thomasweldon.com/tpw/courses/embeddsp/p00pcFrdmK64_eclipsePlatformioSetup.html>`_
* Aug 08, 2015 - **Josh Glendenning** - `Armstrap Eagle and PlatformIO <http://isobit.io/2015/08/08/armstrap.html>`_
* Aug 01, 2015 - **Russell Davis** - `PlatformIO on the Raspberry Pi <http://www.russelldavis.org/2015/08/01/platformio-on-the-raspberry-pi/>`_
* Jul 25, 2015 - **DinoTools** - `Erste Schritte mit PlatformIO (Getting Started with PlatformIO, German) <https://www.dinotools.de/2015/07/25/erste-schritte-mit-platformio/>`_
* Jul 20, 2015 - **Eli Fatsi** - `Arduino Development in Atom Editor <http://viget.com/extend/arduino-development-in-atom-editor>`_
* Jul 14, 2015 - **ElbinarIO** - `Programar para Arduino y otros microcontroladores desde la linea de comandos (Program Arguino and other microcontrollers from the command line, Spanish) <http://elbinario.net/2015/07/14/programar-para-arduino-y-otros-microcontroladores-desde-la-linea-de-comandos/>`_
* Jul 11, 2015 - **TrojanC** - `Learning Arduino GitHub Repository <http://www.trojanc.co.za/2015/07/11/learning-arduino-github-repository/>`_
* Jul 07, 2015 - **Sho Hashimoto** - `PlatformIOでArduino開発する(Arduino development in PlatformIO, Japanese) <http://shokai.org/blog/archives/10250>`_
* Jun 02, 2015 - **Alejandro Guirao Rodríguez** - `Discovering PlatformIO: The RaspberryPi / Arduino combo kit is a winner option when prototyping an IoT-style project <http://lekum.org/posts/discovering-platformio/index.html>`_
* May 17, 2015 - **S.S** - `コマンドラインでArduino開発 : vim + platformio (Arduino development at the command line: VIM + PlatformIO, Japanese) <http://qiita.com/caad1229/items/7b5fb47f034ae6e0baf2>`_
* 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/>`_
* February 25, 2015 - **Hendrik Putzek** - `Use your favourite IDE together with Arduino <http://blog.putzek.com/2015/02/your-favourite-ide-with-arduino.html>`_
2014
^^^^
* October 7, 2014 - **Ivan Kravets, Ph.D.** - `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, Ph.D.** - `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, Ph.D.** - `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 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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`.
.. contents::
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) {
$python_path = $python_home + "/python.exe"
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
}
function InstallPackage ($python_home, $pkg) {
$pip_path = $python_home + "/Scripts/pip.exe"
& $pip_path install -U $pkg
}
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
}
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,205 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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`.
.. contents::
Integration
-----------
Please make sure to read Circle CI `Getting Started <https://circleci.com/docs/getting-started>`_
guide first.
.. code-block:: yaml
dependencies:
pre:
# Install the latest stable PlatformIO
- sudo pip install -U platformio
test:
override:
- platformio ci path/to/test/file.c --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
- platformio ci examples/file.ino --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
- platformio ci path/to/test/directory --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
For more details as for PlatformIO build process please look into :ref:`cmd_ci`.
Project as a library
~~~~~~~~~~~~~~~~~~~~
When project is written as a library (where own examples or testing code use
it), please use ``--lib="."`` option for :ref:`cmd_ci` command
.. code-block:: yaml
script:
- platformio ci --lib="." --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Library dependecies
~~~~~~~~~~~~~~~~~~~
There 2 options to test source code with dependent libraries:
Install dependent library using :ref:`librarymanager`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
dependencies:
pre:
# Install the latest stable PlatformIO
- sudo pip install -U platformio
# OneWire Library with ID=1 http://platformio.org/#!/lib/show/1/OneWire
- platformio lib install 1
test:
override:
- platformio ci path/to/test/file.c --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Manually download dependent library and include in build process via ``--lib`` option
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
dependencies:
pre:
# Install the latest stable PlatformIO
- sudo pip install -U platformio
# download library to the temporary directory
- wget https://github.com/PaulStoffregen/OneWire/archive/master.zip -O /tmp/onewire_source.zip
- unzip /tmp/onewire_source.zip -d /tmp/
test:
override:
- platformio ci path/to/test/file.c --lib="/tmp/OneWire-master" --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Custom Build Flags
~~~~~~~~~~~~~~~~~~
PlatformIO allows to specify own build flags using :envvar:`PLATFORMIO_BUILD_FLAGS` environment
.. code-block:: yaml
machine:
environment:
PLATFORMIO_BUILD_FLAGS: -D SPECIFIC_MACROS -I/extra/inc
For the more details, please follow to
:ref:`available build flags/options <projectconf_build_flags>`.
Advanced configuration
~~~~~~~~~~~~~~~~~~~~~~
PlatformIO allows to configure multiple build environments for the single
source code using :ref:`projectconf`.
Instead of ``--board`` option, please use :option:`platformio ci --project-conf`
.. code-block:: yaml
test:
override:
- platformio ci path/to/test/file.c --project-conf=/path/to/platoformio.ini
Examples
--------
1. Custom build flags
.. code-block:: yaml
dependencies:
cache_directories:
- "~/.platformio"
pre:
- sudo pip install -U platformio
# pre-install PlatformIO development platforms, they will be cached
- platformio platforms install atmelavr atmelsam teensy
#
# Libraries from PlatformIO Library Registry:
#
# http://platformio.org/#!/lib/show/416/TinyGPS
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
- platformio lib install 416 417
test:
override:
- platformio ci examples/acm/acm_terminal --board=uno --board=teensy31 --board=due --lib="."
- platformio ci examples/adk/adk_barcode --board=uno --board=teensy31 --board=due --lib="."
- platformio ci examples/adk/ArduinoBlinkLED --board=uno --board=teensy31 --board=due --lib="."
- platformio ci examples/adk/demokit_20 --board=uno --board=teensy31 --board=due --lib="."
# ...
- platformio ci examples/Xbox/XBOXUSB --board=uno --board=teensy31 --board=due --lib="."
* Configuration file: https://github.com/ivankravets/USB_Host_Shield_2.0/blob/master/circle.yml
* Build History: https://circleci.com/gh/ivankravets/USB_Host_Shield_2.0/tree/master
2. Dependency on external libraries
.. code-block:: yaml
dependencies:
pre:
# Install the latest stable PlatformIO
- sudo pip install -U platformio
# download dependent libraries
- wget https://github.com/jcw/jeelib/archive/master.zip -O /tmp/jeelib.zip
- unzip /tmp/jeelib.zip -d /tmp
- wget https://github.com/Rodot/Gamebuino/archive/master.zip -O /tmp/gamebuino.zip
- unzip /tmp/gamebuino.zip -d /tmp
test:
override:
- platformio ci examples/backSoon/backSoon.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/etherNode/etherNode.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/getDHCPandDNS/getDHCPandDNS.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/getStaticIP/getStaticIP.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
# ...
- platformio ci examples/twitter/twitter.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/udpClientSendOnly/udpClientSendOnly.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/udpListener/udpListener.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
- platformio ci examples/webClient/webClient.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
* Configuration file: hhttps://github.com/ivankravets/ethercard/blob/master/circle.yaml
* Build History: https://circleci.com/gh/ivankravets/ethercard/tree/master

View File

@ -1,83 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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`.
.. contents::
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,35 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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,89 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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`.
.. contents::
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,270 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _ci_travis:
Travis CI
=========
.. image:: ../_static/ci-travis-logo.png
:target: https://docs.travis-ci.com/user/integration/platformio/
**Travis CI** `officially supports <https://docs.travis-ci.com/user/integration/platformio/>`_
**PlatformIO for Embedded Builds.**
`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`.
.. contents::
Integration
-----------
Please make sure to read Travis CI `Getting Started <http://docs.travis-ci.com/user/getting-started/>`_
and `general build configuration <http://docs.travis-ci.com/user/customizing-the-build/>`_
guides first.
PlatformIO is written in Python and is recommended to be run within
`Travis CI Python isolated environment <http://docs.travis-ci.com/user/languages/python/#Travis-CI-Uses-Isolated-virtualenvs>`_:
.. code-block:: yaml
language: python
python:
- "2.7"
# Cache PlatformIO packages using Travis CI container-based infrastructure
sudo: false
cache:
directories:
- "~/.platformio"
env:
- PLATFORMIO_CI_SRC=path/to/test/file.c
- PLATFORMIO_CI_SRC=examples/file.ino
- PLATFORMIO_CI_SRC=path/to/test/directory
install:
- pip install -U platformio
script:
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Then perform steps 1, 2 and 4 from http://docs.travis-ci.com/user/getting-started/
For more details as for PlatformIO build process please look into :ref:`cmd_ci`.
Project as a library
~~~~~~~~~~~~~~~~~~~~
When project is written as a library (where own examples or testing code use
it), please use ``--lib="."`` option for :ref:`cmd_ci` command
.. code-block:: yaml
script:
- platformio ci --lib="." --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Library dependecies
~~~~~~~~~~~~~~~~~~~
There 2 options to test source code with dependent libraries:
Install dependent library using :ref:`librarymanager`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
install:
- pip install -U platformio
#
# Libraries from PlatformIO Library Registry:
#
# http://platformio.org/#!/lib/show/1/OneWire
platformio lib install 1
Manually download dependent library and include in build process via ``--lib`` option
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: yaml
install:
- pip install -U platformio
# download library to the temporary directory
wget https://github.com/PaulStoffregen/OneWire/archive/master.zip -O /tmp/onewire_source.zip
unzip /tmp/onewire_source.zip -d /tmp/
script:
- platformio ci --lib="/tmp/OneWire-master" --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
Custom Build Flags
~~~~~~~~~~~~~~~~~~
PlatformIO allows to specify own build flags using :envvar:`PLATFORMIO_BUILD_FLAGS` environment
.. code-block:: yaml
env:
- PLATFORMIO_CI_SRC=path/to/test/file.c PLATFORMIO_BUILD_FLAGS="-D SPECIFIC_MACROS_PER_TEST_ENV -I/extra/inc"
- PLATFORMIO_CI_SRC=examples/file.ino
- PLATFORMIO_CI_SRC=path/to/test/directory
install:
- pip install -U platformio
export PLATFORMIO_BUILD_FLAGS=-D GLOBAL_MACROS_FOR_ALL_TEST_ENV
For the more details, please follow to
:ref:`available build flags/options <projectconf_build_flags>`.
Advanced configuration
~~~~~~~~~~~~~~~~~~~~~~
PlatformIO allows to configure multiple build environments for the single
source code using :ref:`projectconf`.
Instead of ``--board`` option, please use :option:`platformio ci --project-conf`
.. code-block:: yaml
script:
- platformio ci --project-conf=/path/to/platoformio.ini
Examples
--------
1. Custom build flags
.. code-block:: yaml
language: python
python:
- "2.7"
# Cache PlatformIO packages using Travis CI container-based infrastructure
sudo: false
cache:
directories:
- "~/.platformio"
env:
- PLATFORMIO_CI_SRC=examples/acm/acm_terminal
- PLATFORMIO_CI_SRC=examples/Bluetooth/WiiIRCamera PLATFORMIO_BUILD_FLAGS="-DWIICAMERA"
- PLATFORMIO_CI_SRC=examples/ftdi/USBFTDILoopback
- PLATFORMIO_CI_SRC=examples/Xbox/XBOXUSB
# - ...
install:
- pip install -U platformio
#
# Libraries from PlatformIO Library Registry:
#
# http://platformio.org/#!/lib/show/416/TinyGPS
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
- platformio lib install 416 417
script:
- platformio ci --board=uno --board=teensy31 --board=due --lib="."
* Configuration file: https://github.com/felis/USB_Host_Shield_2.0/blob/master/.travis.yml
* Build History: https://travis-ci.org/felis/USB_Host_Shield_2.0
2. Dependency on external libraries
.. code-block:: yaml
language: python
python:
- "2.7"
# Cache PlatformIO packages using Travis CI container-based infrastructure
sudo: false
cache:
directories:
- "~/.platformio"
env:
- PLATFORMIO_CI_SRC=examples/backSoon/backSoon.ino
- PLATFORMIO_CI_SRC=examples/etherNode/etherNode.ino
# -
install:
- pip install -U platformio
- wget https://github.com/jcw/jeelib/archive/master.zip -O /tmp/jeelib.zip
- unzip /tmp/jeelib.zip -d /tmp
- wget https://github.com/Rodot/Gamebuino/archive/master.zip -O /tmp/gamebuino.zip
- unzip /tmp/gamebuino.zip -d /tmp
script:
- platformio ci --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
* Configuration file: https://github.com/jcw/ethercard/blob/master/.travis.yml
* Build History: https://travis-ci.org/jcw/ethercard
3. Dynamic testing of the boards
.. code-block:: yaml
language: python
python:
- "2.7"
# Cache PlatformIO packages using Travis CI container-based infrastructure
sudo: false
cache:
directories:
- "~/.platformio"
env:
- PLATFORMIO_CI_SRC=examples/TimeArduinoDue PLATFORMIO_CI_BOARDS_ARGS="--board=due"
- PLATFORMIO_CI_SRC=examples/TimeGPS
- PLATFORMIO_CI_SRC=examples/TimeNTP
- PLATFORMIO_CI_SRC=examples/TimeTeensy3 PLATFORMIO_CI_BOARDS_ARGS="--board=teensy31"
# - ...
install:
- pip install -U platformio
- rm -rf ./linux
#
# Libraries from PlatformIO Library Registry:
#
# http://platformio.org/#!/lib/show/416/TinyGPS
- platformio lib install 416 421 422
script:
- if [[ $PLATFORMIO_CI_BOARDS_ARGS ]]; then bash -c 'platformio ci --lib="." $PLATFORMIO_CI_BOARDS_ARGS'; else bash -c 'platformio ci --lib="." --board=uno --board=teensy20pp'; fi
* Configuration file: https://github.com/ivankravets/Time/blob/master/.travis.yml
* Build History: https://travis-ci.org/ivankravets/Time

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', '**/*_extra.rst']
# 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 = '_static/platformio-logo.png'
# 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 = '_static/favicon.ico'
# 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,66 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _demo:
Demo & Projects
===============
.. contents::
Project Examples
----------------
Preconfigured demo projects are located in `PlatformIO GitHub <https://github.com/platformio/platformio/tree/develop/examples>`_ repository.
Wiring Blink
------------
.. image:: _static/platformio-demo-wiring.gif
Used in demo
~~~~~~~~~~~~
1. Source code of `Wiring Blink Example <https://github.com/platformio/platformio/tree/develop/examples/wiring-blink>`_
2. :ref:`cmd_run` command
3. :ref:`platformio run -t upload <cmd_run>` command.
Platform Manager
----------------
.. image:: _static/platformio-demo-platforms.gif
Used in demo
~~~~~~~~~~~~
1. :ref:`userguide_platforms`
2. :ref:`cmd_platforms_list` command
3. :ref:`platformio platforms search avr <cmd_platforms_search>` command
4. :ref:`platformio platforms show teensy <cmd_platforms_show>` command
5. :ref:`cmd_platforms_update` command.
Library Manager
---------------
.. image:: _static/platformio-demo-lib.gif
Used in demo
~~~~~~~~~~~~
1. :ref:`userguide_lib`
2. :ref:`platformio lib search 1-wire <cmd_lib_search>` command
3. :ref:`platformio lib install 54 <cmd_lib_install>` command
4. :ref:`platformio lib search -f mbed <cmd_lib_search>` command
5. :ref:`platformio lib search -k rf <cmd_lib_search>` command
6. :ref:`platformio lib search radiohead <cmd_lib_search>` command
7. :ref:`platformio lib install 124 --version "1.40" <cmd_lib_install>` command
8. :ref:`platformio lib show 124 <cmd_lib_show>` command
9. :ref:`cmd_lib_update` command.

View File

@ -1,111 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
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
:envvar:`PLATFORMIO_SETTING_ENABLE_PROMPTS=false <PLATFORMIO_SETTING_ENABLE_PROMPTS>`.
.. envvar:: PLATFORMIO_HOME_DIR
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_home_dir`.
.. envvar:: PLATFORMIO_LIB_DIR
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_lib_dir`.
.. envvar:: PLATFORMIO_SRC_DIR
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_src_dir`.
.. envvar:: PLATFORMIO_ENVS_DIR
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_envs_dir`.
Builder
-------
.. envvar:: PLATFORMIO_BUILD_FLAGS
Allows to set :ref:`projectconf` option :ref:`projectconf_build_flags`.
.. envvar:: PLATFORMIO_SRC_BUILD_FLAGS
Allows to set :ref:`projectconf` option :ref:`projectconf_src_build_flags`.
.. envvar:: PLATFORMIO_SRC_FILTER
Allows to set :ref:`projectconf` option :ref:`projectconf_src_filter`.
.. envvar:: PLATFORMIO_EXTRA_SCRIPT
Allows to set :ref:`projectconf` option :ref:`projectconf_extra_script`.
Settings
--------
Allows to override PlatformIO settings. You can manage them via
:ref:`cmd_settings` command.
.. envvar:: PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES
Allows to override setting :ref:`setting_auto_update_libraries`.
.. envvar:: PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS
Allows to override setting :ref:`setting_auto_update_platforms`.
.. envvar:: PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL
Allows to override setting :ref:`setting_check_libraries_interval`.
.. envvar:: PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL
Allows to override setting :ref:`setting_check_platformio_interval`.
.. envvar:: PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL
Allows to override setting :ref:`setting_check_platforms_interval`.
.. envvar:: PLATFORMIO_SETTING_ENABLE_PROMPTS
Allows to override setting :ref:`setting_enable_prompts`.
.. envvar:: PLATFORMIO_SETTING_ENABLE_TELEMETRY
Allows to override setting :ref:`setting_enable_telemetry`.

View File

@ -1,252 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _faq:
Frequently Asked Questions
==========================
.. contents::
General
-------
.. _faq_what_is_platformio:
What is PlatformIO?
~~~~~~~~~~~~~~~~~~~
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
development.
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_atom`,
:ref:`ide_clion`, :ref:`ide_eclipse`, :ref:`ide_qtcreator`,
:ref:`ide_sublimetext`, :ref:`ide_vim`, :ref:`ide_visualstudio`, 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 150+
`Embedded Boards <http://platformio.org/#!/boards>`_ 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.
Command completion in Terminal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bash completion
'''''''''''''''
Bash completion support will complete subcommands and parameters. To enable
Bash completion for `platformio` subcommands you need to put into your `.bashrc`:
.. code-block:: bash
eval "$(_PLATFORMIO_COMPLETE=source platformio)"
ZSH completion
''''''''''''''
To enable ``zsh`` completion please run these commands:
.. code-block:: bash
autoload bashcompinit && bashcompinit
eval "$(_PLATFORMIO_COMPLETE=source platformio)"
.. note::
For permanent command completion you need to place commands above to
``~/.bashrc`` or ``~/.zshrc`` file.
.. _faq_troubleshooting:
Troubleshooting
---------------
Installation
~~~~~~~~~~~~
PlatformIO and ``SCons`` aren't installed properly
''''''''''''''''''''''''''''''''''''''''''''''''''
PlatformIO depends on awesome and irreplaceable software construction tool
named `SCons <http://www.scons.org>`_. PlatformIO Code Builder uses it to build
single source code for the multiple embedded platforms.
When you install PlatformIO it tries to find ``scons`` program in your OS. If
SCons is installed in your system, then PlatformIO will use it. Otherwise,
PlatformIO tries to install it automatically using ``pip install scons``. So, if
you are here, then it means that PlatformIO could not install it for you.
Let fix it manually.
1. Need to cleanup all previous SCons installations using `pip <https://pip.pypa.io>`_
.. code-block:: bash
[sudo] pip uninstall scons
2. Try to install it manually
.. code-block:: bash
[sudo] pip install scons
# If you have errors:
# * error: option --single-version-externally-managed not recognized
# * OSError: [Errno 1] Operation not permitted: '/System/Library/Frameworks/Python.framework/Versions/2.7/man'
[sudo] pip install --egg scons --install-option="--no-install-man"
3. If it didn't help you, try system OS package manager
* **Mac OS X** using `brew <http://brew.sh>`_ run ``brew install scons``
* **Linux** using ``apt`` run ``[sudo] apt-get install scons``
To identify that SCons is installed in your system run ``scons -v``.
.. _faq_troubleshooting_sconssingverextmanaged:
PIP & SCons Error: option --single-version-externally-managed not recognized
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Answered in `issue #279 <https://github.com/platformio/platformio/issues/279>`_.
[Errno 1] Operation not permitted
'''''''''''''''''''''''''''''''''
Answered in `issue #295 <https://github.com/platformio/platformio/issues/295#issuecomment-143772005>`_.
Windows AttributeError: 'module' object has no attribute 'packages'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Answered in `issue #252 <https://github.com/platformio/platformio/issues/252#issuecomment-127072039>`_.
.. _faq_troubleshooting_pionotfoundinpath:
Program "platformio" not found in PATH
''''''''''''''''''''''''''''''''''''''
Where is ``platformio`` binary installed? Run this command in Terminal
.. code-block:: bash
# for Unix
which platformio
echo $PATH
# for Windows OS
where platformio
echo %PATH%
For example, ``which platformio`` is equal to ``/usr/local/bin/platformio``,
then `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_
should contain ``/usr/local/bin`` directory.
**Unix Users**: You can make "symlinks" from ``platformio`` and ``scons``
programs to the ``bin`` directory which is included in ``$PATH``. For example,
see `issue #272 <https://github.com/platformio/platformio/issues/272#issuecomment-133626112>`_.
Windows UnicodeDecodeError: 'ascii' codec can't decode byte
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Answered in `issue #143 <https://github.com/platformio/platformio/issues/143#issuecomment-88060906>`_.
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
Miscellaneous
~~~~~~~~~~~~~
.. _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 :envvar:`PLATFORMIO_SETTING_ENABLE_PROMPTS=No <PLATFORMIO_SETTING_ENABLE_PROMPTS>`
- disable global setting ``enable_prompts`` via :ref:`cmd_settings` command
- masking under Continuous Integration system via environment variable
:envvar:`CI=true <CI>`.
Serial does not work with panStampAVR board
'''''''''''''''''''''''''''''''''''''''''''
Answered in `issue #144 <https://github.com/platformio/platformio/issues/144#issuecomment-87388038>`_.
Building
~~~~~~~~
Can not compile a library that compiles without issue with Arduino IDE
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
* `#298: Unable to use Souliss library <https://github.com/platformio/platformio/issues/298>`_
* `#331: Unable to use MySensors library <https://github.com/platformio/platformio/issues/331>`_
ARM toolchain: cc1plus: error while loading shared libraries
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
See related answers for
`error while loading shared libraries <https://github.com/platformio/platformio/issues?utf8=✓&q=error+while+loading+shared+libraries>`_.
Archlinux: libncurses.so.5: cannot open shared object file
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Answered in `issue #291 <https://github.com/platformio/platformio/issues/291>`_.
Monitoring a serial port breaks upload
''''''''''''''''''''''''''''''''''''''
Answered in `issue #384 <https://github.com/platformio/platformio/issues/384>`_.

File diff suppressed because it is too large Load Diff

View File

@ -1,114 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
* - ``nucleo_f401re``
- `ST Nucleo F401RE <https://developer.mbed.org/platforms/ST-Nucleo-F401RE/>`_
- STM32F401RET6
- 84 MHz
- 512 Kb
- 96 Kb

View File

@ -1,125 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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,26 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _frameworks:
Frameworks
==========
.. toctree::
:maxdepth: 2
arduino
cmsis
energia
libopencm3
mbed
spl
wiringpi

View File

@ -1,117 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
* - ``nucleo_f103rb``
- `ST Nucleo F103RB <https://developer.mbed.org/platforms/ST-Nucleo-F103RB/>`_
- STM32F103RBT6
- 72 MHz
- 128 Kb
- 20 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,743 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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_siliconlabsefm32`
- Silicon Labs EFM32 Gecko 32-bit microcontroller (MCU) family includes devices that offer flash memory configurations up to 256 kB, 32 kB of RAM and CPU speeds up to 48 MHz. Based on the powerful ARM Cortex-M core, the Gecko family features innovative low energy techniques, short wake-up time from energy saving modes and a wide selection of peripherals, making it ideal for battery operated applications and other systems requiring high performance and low-energy consumption.
* - :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_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.
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.
Atmel
~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``samd21_xpro``
- `Atmel SAMD21-XPRO <https://developer.mbed.org/platforms/SAMD21-XPRO/>`_
- ATSAMD21J18A
- 48 MHz
- 256 Kb
- 32 Kb
* - ``saml21_xpro_b``
- `Atmel SAML21-XPRO-B <https://developer.mbed.org/platforms/SAML21-XPRO/>`_
- ATSAML21J18B
- 48 MHz
- 256 Kb
- 32 Kb
* - ``samr21_xpro``
- `Atmel ATSAMR21-XPRO <https://developer.mbed.org/platforms/SAMR21-XPRO/>`_
- ATSAMR21G18A
- 48 MHz
- 256 Kb
- 32 Kb
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
Delta
~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``dfcm_nnn40``
- `Delta DFCM-NNN40 <https://developer.mbed.org/platforms/Delta-DFCM-NNN40/>`_
- NRF51822
- 32 MHz
- 256 Kb
- 32 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/en/catalog/tools/PF260318>`_
- STM32F334C8T6
- 72 MHz
- 64 Kb
- 12 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_f469ni``
- `ST 32F469IDISCOVERY <http://www.st.com/web/catalog/tools/FM116/CL1620/SC959/SS1532/LN1848/PF262395>`_
- STM32F469NIH6
- 180 MHz
- 1024 Kb
- 384 Kb
* - ``disco_l053c8``
- `ST 32L0538DISCOVERY <http://www.st.com/web/en/catalog/tools/PF260319>`_
- STM32L053C8T6
- 32 MHz
- 64 Kb
- 8 Kb
* - ``disco_l476vg``
- `ST 32L476GDISCOVERY <http://www.st.com/web/catalog/tools/FM116/CL1620/SC959/SS1532/LN1848/PF261635>`_
- STM32L476VGT6
- 80 MHz
- 1024 Kb
- 128 Kb
* - ``nucleo_f030r8``
- `ST Nucleo F030R8 <https://developer.mbed.org/platforms/ST-Nucleo-F030R8/>`_
- STM32F030R8T6
- 48 MHz
- 64 Kb
- 8 Kb
* - ``nucleo_f031k6``
- `ST Nucleo F031K6 <https://developer.mbed.org/platforms/ST-Nucleo-F031K6/>`_
- STM32F031K6T6
- 48 MHz
- 32 Kb
- 4 Kb
* - ``nucleo_f042k6``
- `ST Nucleo F042K6 <https://developer.mbed.org/platforms/ST-Nucleo-F042K6/>`_
- STM32F042K6T6
- 48 MHz
- 32 Kb
- 6 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_f303k8``
- `ST Nucleo F303K8 <https://developer.mbed.org/platforms/ST-Nucleo-F303K8/>`_
- STM32F303K8T6
- 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_f446re``
- `ST Nucleo F446RE <https://developer.mbed.org/platforms/ST-Nucleo-F446RE/>`_
- STM32F446RET6
- 180 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
* - ``nucleo_l476rg``
- `ST Nucleo L476RG <https://developer.mbed.org/platforms/ST-Nucleo-L476RG/>`_
- STM32L476RGT6
- 80 MHz
- 1024 Kb
- 128 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
Silicon Labs
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``efm32gg_stk3700``
- `Silicon Labs EFM32GG-STK3700 (Giant Gecko) <https://developer.mbed.org/platforms/EFM32-Giant-Gecko/>`_
- EFM32GG990F1024
- 48 MHz
- 1024 Kb
- 128 Kb
* - ``efm32hg_stk3400``
- `Silicon Labs SLSTK3400A USB-enabled (Happy Gecko) <https://developer.mbed.org/platforms/EFM32-Happy-Gecko/>`_
- EFM32HG322F64
- 24 MHz
- 64 Kb
- 8 Kb
* - ``efm32lg_stk3600``
- `Silicon Labs EFM32LG-STK3600 (Leopard Gecko) <https://developer.mbed.org/platforms/EFM32-Leopard-Gecko/>`_
- EFM32LG990F256
- 48 MHz
- 256 Kb
- 32 Kb
* - ``efm32wg_stk3800``
- `Silicon Labs EFM32WG-STK3800 (Wonder Gecko) <https://developer.mbed.org/platforms/EFM32-Wonder-Gecko/>`_
- EFM32WG990F256
- 48 MHz
- 256 Kb
- 32 Kb
* - ``efm32zg_stk3200``
- `Silicon Labs EFM32ZG-STK3200 (Zero Gecko) <https://developer.mbed.org/platforms/EFM32-Zero-Gecko/>`_
- EFM2ZG222F32
- 24 MHz
- 32 Kb
- 4 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,107 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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,73 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _framework_wiringpi:
Framework ``wiringpi``
======================
WiringPi is a GPIO access library written in C for the BCM2835 used in the Raspberry Pi. It's designed to be familiar to people who have used the Arduino "wiring" system.
For more detailed information please visit `vendor site <http://wiringpi.com>`_.
.. contents::
Platforms
---------
.. list-table::
:header-rows: 1
* - Name
- Description
* - :ref:`platform_linux_arm`
- Linux ARM is a Unix-like and mostly POSIX-compliant computer operating system (OS) assembled under the model of free and open-source software development and distribution. Using host OS (Mac OS X, Linux ARM) you can build native application for Linux ARM platform.
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.
Raspberry Pi
~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``raspberrypi_1b``
- `Raspberry Pi 1 Model B <https://www.raspberrypi.org>`_
- BCM2835
- 700 MHz
- 524288 Kb
- 524288 Kb
* - ``raspberrypi_2b``
- `Raspberry Pi 2 Model B <https://www.raspberrypi.org>`_
- BCM2836
- 900 MHz
- 1048576 Kb
- 1048576 Kb
* - ``raspberrypi_zero``
- `Raspberry Pi Zero <https://www.raspberrypi.org>`_
- BCM2835
- 1000 MHz
- 524288 Kb
- 524288 Kb

View File

@ -1,12 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. include:: ../HISTORY.rst

View File

@ -1,28 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _ide:
IDE Integration
===============
.. toctree::
:maxdepth: 2
ide/arduino
ide/atom
ide/clion
ide/eclipse
ide/energia
ide/qtcreator
ide/sublimetext
ide/vim
ide/visualstudio

View File

@ -1,50 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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.
.. contents::
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>`_.
Articles / Manuals
------------------
* `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>`_
See the full list with :ref:`articles`.
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,57 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _ide_atom:
Atom
====
`Atom <https://atom.io>`_ is a text editor that's modern, approachable,
yet hackable to the core—a tool you can customize to do anything but also use
productively without ever touching a config file.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `Atom Documentation <https://atom.io/docs>`_
page for more detailed information.
.. contents::
Integration
-----------
Using `Atom Packages <https://atom.io/docs/v1.0.2/using-atom-atom-packages>`_
please install `platomformio <https://atom.io/packages/platomformio>`_ package.
Articles / Manuals
------------------
* `Arduino Development in Atom Editor <http://viget.com/extend/arduino-development-in-atom-editor>`_
See a full list with :ref:`articles`.
Screenshot
----------
Building
^^^^^^^^
.. image:: ../_static/ide-platformio-atom-1.gif
:target: https://atom.io/packages/platomformio
Uploading
^^^^^^^^^
.. image:: ../_static/ide-platformio-atom-2.gif
:target: https://atom.io/packages/platomformio

View File

@ -1,101 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _ide_clion:
CLion
=====
The `CLion <https://www.jetbrains.com/clion/>`_ is a cross-platform C/C++ IDE
for Linux, OS X, and Windows integrated with the CMake build system. The
initial version will support the GCC and Clang compilers and GDB debugger.
Clion includes such features as a smart editor, code quality assurance,
automated refactorings, project manager, integrated version control systems.
This software can be used with:
* all available :ref:`platforms`
* all available :ref:`frameworks`
Refer to the `CDT Documentation <https://www.jetbrains.com/clion/documentation/>`_
page for more detailed information.
.. contents::
Integration
-----------
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate CLion compatible project using
:option:`platformio init --ide` command. Please choose board type using
:ref:`cmd_boards` command and run:
.. code-block:: shell
platformio init --ide clion --board %TYPE%
Then:
1. Import this project via ``Menu: File > Import Project``
and specify root directory where is located :ref:`projectconf`
2. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
3. Build project: ``Menu: Run > Build``.
There are 3 predefined targets for building:
* ``PLATFORMIO_BUILD`` - build project without auto-uploading
* ``PLATFORMIO_UPLOAD`` - build and upload (if no errors)
* ``PLATFORMIO_CLEAN`` - clean compiled objects and etc.
.. warning::
The libraries which are added, installed or used in the project
after generating process wont be reflected in IDE. To fix it you
need to reinitialize project using :ref:`cmd_init` (repeat it).
.. warning::
PlatformIO generates empty project by default and **code auto-completion
will not work!** To enable auto-completion please choose one of:
* Add source files ``*.c, *.cpp, etc`` to ``src`` directory and re-initialize
project with command above
* Manually correct ``add_executable`` command in ``CMakeLists.txt`` file
(will be created in project directory after initialization).
``*.ino`` file isn't acceptable for ``add_executable`` command. You should
convert it manually to ``*.cpp``. See `project example <https://github.com/platformio/platformio/tree/develop/examples/ide/clion>`_.
More info `CLion issue #CPP-3977 <https://youtrack.jetbrains.com/issue/CPP-3977>`_.
Active discussion is located in
`PlatformIO issue #132 <https://github.com/platformio/platformio/issues/132>`_.
Articles / Manuals
------------------
* `Using PlatformIO to get started with Arduino in CLion IDE <http://www.ches.pl/using-platformio-get-started-arduino-clion-ide/>`_
* `Programar con Arduino "The good way" (Programming with Arduino "The good way", Spanish) <http://congdegnu.es/2015/11/09/programar-con-arduino-the-good-way/>`_
See a full list with :ref:`articles`.
Screenshot
----------
.. image:: ../_static/ide-platformio-clion.png
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-clion.png
Examples
--------
"Blink" Project
^^^^^^^^^^^^^^^
Source code of `CLion "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/clion>`_.

View File

@ -1,82 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
-----------
Since PlatformIO 2.0 you can generate Eclipse compatible project using
:option:`platformio init --ide` command. Please choose board type using
:ref:`cmd_boards` command and run:
.. code-block:: shell
platformio init --ide eclipse --board %TYPE%
Then:
1. Import this project via
``Menu: File > Import... > General > Existing Projects into Workspace > Next``
and specify root directory where is located :ref:`projectconf`
2. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
3. Build project: ``Menu: Project > Build Project``.
.. warning::
The libraries which are added, installed or used in the project
after generating process wont be reflected in IDE. To fix it you
need to reinitialize project using :ref:`cmd_init` (repeat it).
Articles / Manuals
------------------
* `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>`_
* `Improvised MBED FRDM-K64F Eclipse/PlatformIO Setup and Software Installation <http://thomasweldon.com/tpw/courses/embeddsp/p00pcFrdmK64_eclipsePlatformioSetup.html>`_
* `Learning Arduino GitHub Repository <http://www.trojanc.co.za/2015/07/11/learning-arduino-github-repository/>`_
See a full list with :ref:`articles`.
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
Examples
--------
"Blink" Project
^^^^^^^^^^^^^^^
Source code of `Eclipse "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/eclipse>`_.

View File

@ -1,50 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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.
.. contents::
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>`_.
Articles / Manuals
------------------
* `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>`_
See the full list with :ref:`articles`.
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,202 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
-----------
.. note::
Please verify that folder where is located ``platformio`` program is added
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Qt Creator compatible project using
:option:`platformio init --ide` command. Please choose board type using
:ref:`cmd_boards` command and run:
.. code-block:: shell
platformio init --ide qtcreator --board %TYPE%
Then:
1. Import project via ``File > Open File or Project`` and select
``platformio.pro`` from the folder where is located :ref:`projectconf`
2. Select default desktop kit and click on ``Configure Project`` (``Projects``
mode, left panel)
3. Set ``General > Build directory`` to the project directory where
is located :ref:`projectconf`
4. Remove all items from ``Build Steps``, click on
``Build Steps > Add Build Step > Custom Process Step`` and set:
* **Command**: ``platformio``
* **Arguments**: ``-f -c qtcreator run``
* **Working directory**: ``%{buildDir}``
5. Remove all items from ``Clean Steps``, click on
``Clean Steps > Add Clean Step > Custom Process Step`` and set:
* **Command**: ``platformio``
* **Arguments**: ``-f -c qtcreator run --target clean``
* **Working directory**: ``%{buildDir}``
6. Update ``PATH`` in ``Build Environment > PATH > EDIT`` with the result of
this command (paste in Terminal):
.. code-block:: shell
# Linux, Mac
echo $PATH
# Windows
echo %PATH%
7. Switch to ``Edit`` mode (left panel) and open source file from ``src``
directory (``*.c, *.cpp, *.ino, etc.``)
8. Build project: ``Menu: Build > Build All``.
.. image:: ../_static/ide-platformio-qtcreator-3.png
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-3.png
.. warning::
The libraries which are added, installed or used in the project
after generating process wont be reflected in IDE. To fix it you
need to reinitialize project using :ref:`cmd_init` (repeat it).
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
:target: http://docs.platformio.org/en/latest/_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 delete default build and clean steps and 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
:target: http://docs.platformio.org/en/latest/_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 += $$(HOME)
}
INCLUDEPATH += "$${HOMEDIR}/.platformio/packages/framework-arduinoavr/cores/arduino"
INCLUDEPATH += "$${HOMEDIR}/.platformio/packages/toolchain-atmelavr/avr/include"
.. image:: ../_static/ide-platformio-qtcreator-4.png
:target: http://docs.platformio.org/en/latest/_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
:target: http://docs.platformio.org/en/latest/_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
:target: http://docs.platformio.org/en/latest/_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``.
Screenshot
----------
.. image:: ../_static/ide-platformio-qtcreator-7.png
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-7.png
Examples
--------
"Blink" Project
^^^^^^^^^^^^^^^
Source code of `Qt Creator "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/qtcreator>`_.

View File

@ -1,179 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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 Sublime Text compatible project using
:option:`platformio init --ide` command. Please choose board type using
:ref:`cmd_boards` command and run:
.. code-block:: shell
platformio init --ide sublimetext --board %TYPE%
Then:
1. Import project via ``Menu: Project > Open Project...`` and select
``platformio.sublime-project`` from the folder where is located :ref:`projectconf`
2. Select PlatformIO as build system: ``Menu: Tools > Build System > PlatformIO``
3. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
4. Build project: ``Menu: Tools > Build``.
Manual Integration
^^^^^^^^^^^^^^^^^^
.. note::
Please verify that folder where is located ``platformio`` program is added
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
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", "-f", "-c", "sublimetext", "run"],
"working_dir": "${project_path:${folder}}",
"variants":
[
{
"name": "Clean",
"cmd": ["platformio", "-f", "-c", "sublimetext", "run", "--target", "clean"]
},
{
"name": "Upload",
"cmd": ["platformio", "-f", "-c", "sublimetext", "run", "--target", "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``.
Screenshot
----------
.. image:: ../_static/ide-sublime-text-platformio-newproject-5.png
Examples
--------
"Blink" Project
^^^^^^^^^^^^^^^
Source code of `Sublime Text "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/sublimetext>`_.

View File

@ -1,75 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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`
.. contents::
Integration
-----------
.. note::
Please verify that folder where is located ``platformio`` program is added
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
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 -f -c vim run --target upload
clean:
platformio -f -c vim run --target 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.
.. note::
If hotkey doesn't work for you, try to add this line
``nnoremap <C-b> :make<CR>`` to ``~/.vimrc``
Articles / Manuals
------------------
* `コマンドラインでArduino開発 : vim + platformio (Arduino development at the command line: VIM + PlatformIO, Japanese) <http://qiita.com/caad1229/items/7b5fb47f034ae6e0baf2>`_
See a full list with :ref:`articles`.
Screenshot
----------
.. image:: ../_static/ide-platformio-vim.png

View File

@ -1,162 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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
-----------
.. note::
Please verify that folder where is located ``platformio`` program is added
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
Project Generator
^^^^^^^^^^^^^^^^^
Since PlatformIO 2.0 you can generate Visual Studio compatible project using
:option:`platformio init --ide` command. Please choose board type using
:ref:`cmd_boards` command and run:
.. code-block:: shell
platformio init --ide visualstudio --board %TYPE%
Then:
1. Import this project via ``Menu: File > Open > Project/Solution``
and specify root directory where is located :ref:`projectconf`
2. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
3. Build project: ``Menu: Build > Build Solution``.
.. warning::
The libraries which are added, installed or used in the project
after generating process wont be reflected in IDE. To fix it you
need to reinitialize project using :ref:`cmd_init` (repeat it).
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``.
Screenshot
----------
.. image:: ../_static/ide-vs-platformio-newproject-8.png
:target: http://docs.platformio.org/en/latest/_static/ide-vs-platformio-newproject-8.png
Examples
--------
"Blink" Project
^^^^^^^^^^^^^^^
Source code of `Visual Studio "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/visualstudio>`_.

View File

@ -1,125 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
PlatformIO is an open source ecosystem for IoT development
==========================================================
**Cross-platform code builder and library manager. Continuous and IDE
integration. Arduino and MBED compatible. Ready for Cloud compiling.**
* **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
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
libOpenCM3, etc.**
* `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>`_ |
`Twitter <https://twitter.com/PlatformIO_Org>`_ |
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
`Facebook <https://www.facebook.com/platformio>`_ |
`Reddit <http://www.reddit.com/r/platformio/>`_
Embedded Development. *Easier Than Ever.*
-----------------------------------------
* Colourful command-line output
* :ref:`IDE Integration <ide>` with *Arduino, Eclipse, Energia, Qt Creator,
Sublime Text, Vim, Visual Studio*
* Cloud compiling and :ref:`ci` with *AppVeyor, Circle CI, Drone, Shippable, Travis CI*
* Built-in :ref:`Serial Port Monitor <cmd_serialports_monitor>` and
configurable build :ref:`-flags/-options <projectconf_build_flags>`
* Pre-built tool chains, :ref:`frameworks` for the
:ref:`Development Platforms <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).
For further details, please refer to
:ref:`What is PlatformIO? How does it work? <faq_what_is_platformio>`
Contents
--------
.. toctree::
:caption: Getting Started
:maxdepth: 2
demo
installation
quickstart
userguide/index
.. toctree::
:caption: Configuration
:maxdepth: 2
projectconf
envvars
.. toctree::
:caption: Instruments
:maxdepth: 3
Platforms & Boards <platforms/index>
frameworks/index
.. toctree::
:caption: Library Manager
:maxdepth: 2
Quickstart <librarymanager/index>
User Guide <userguide/lib/index.rst>
librarymanager/config
librarymanager/creating
.. toctree::
:caption: Integration
:maxdepth: 2
ci/index
ide
.. toctree::
:caption: Miscellaneous
:maxdepth: 2
articles
FAQ <faq>
history

View File

@ -1,189 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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.x or Python 2.7.x(recommended)
All commands below should be executed in
`Command-line <http://en.wikipedia.org/wiki/Command-line_interface>`_
application (Terminal):
* Mac OS X / Linux *Terminal* application
* Windows ``cmd.exe`` application.
Installation Methods
--------------------
.. warning::
**Windows OS**: Please `Download the latest Python 2.7.x
<https://www.python.org/downloads/>`_ and install it.
**DON'T FORGET** to select ``Add python.exe to Path`` feature on the
"Customize" stage.
Please *choose ONE of* the following methods:
a) Python Package Manager
~~~~~~~~~~~~~~~~~~~~~~~~~
The latest stable version of PlatformIO may be installed or upgraded via
`pip <https://pip.pypa.io>`_ as follows:
.. code-block:: bash
# update package installer
pip install -U pip setuptools
# install or upgrade PlatformIO
pip install -U platformio
Note that you may run into permissions issues running these commands. You have
a few options here:
* Run with ``sudo`` to install PlatformIO and dependencies globally
* Run the command in a `virtualenv <https://virtualenv.pypa.io>`_ local to a
specific project working set.
.. _installation_installer_script:
b) Installer Script
~~~~~~~~~~~~~~~~~~~
Super-Quick (Mac / Linux)
'''''''''''''''''''''''''
To install or upgrade *PlatformIO* paste that at a *Terminal* prompt
(**MAY require** administrator access ``sudo``):
.. code-block:: bash
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
Local Download (Mac / Linux / Windows)
''''''''''''''''''''''''''''''''''''''
To install or upgrade *PlatformIO*, download (save as...)
`get-platformio.py <https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py>`_
script. Then run the following (**MAY require** administrator access ``sudo``):
.. code-block:: bash
# change directory to folder where is located downloaded "get-platformio.py"
cd /path/to/dir/where/is/located/get-platformio.py/script
# run it
python get-platformio.py
On *Windows OS* it may look like:
.. code-block:: bash
# change directory to folder where is located downloaded "get-platformio.py"
cd C:\path\to\dir\where\is\located\get-platformio.py\script
# run it
C:\Python27\python.exe get-platformio.py
c) Full Guide
~~~~~~~~~~~~~
1. Check a ``python`` version (only 2.6-2.7 is supported):
.. code-block:: bash
python --version
*Windows 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. Install a ``platformio`` and related packages:
.. code-block:: bash
# update package installer
pip install -U pip setuptools
# install or upgrade PlatformIO
pip install -U platformio
If your computer does not recognize ``pip`` command, try to install it first
using `these instructions <https://pip.pypa.io/en/latest/installing.html>`_.
For upgrading ``platformio`` to the latest version:
.. code-block:: bash
pip install -U platformio
d) Development Version
~~~~~~~~~~~~~~~~~~~~~~
Install the latest PlatformIO from the ``develop`` branch:
.. code-block:: bash
# update package installer
pip install -U pip setuptools
# install the latest development version of PlatformIO
pip install -U 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 re-install PlatformIO each time if you see the new commits in
`PlatformIO GitHub repository (branch: develop) <https://github.com/platformio/platformio/commits/develop>`_.
To revert to the latest stable version
.. code-block:: bash
pip uninstall platformio
pip install -U platformio
Troubleshooting
---------------
.. 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.
.. note::
**Linux OS**: 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).
**Windows OS**: Please check that you have correctly installed USB driver
from board manufacturer
For further details, frequently questions, known issues, please
refer to :ref:`faq`.

View File

@ -1,347 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. |PIOAPICR| replace:: *PlatformIO Library Registry Crawler*
.. _library_config:
library.json
============
``library.json`` is a manifest file of development library. It allows developers
to keep project in own structure and define:
* location of source code
* examples list
* compatible frameworks and platforms
* library dependencies
PlatformIO Library Crawler uses ``library.json`` manifest to extract
source code from developer's location and keeps cleaned library in own
Libraries Storage.
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.
If the library is compatible with the all frameworks, then you can use ``*``
symbol:
.. code-block:: javascript
"frameworks": "*"
.. _libjson_platforms:
``platforms``
-------------
*Optional* | Type: ``String`` or ``Array``
A list with compatible platforms. The available platform types are
defined in :ref:`platforms` section.
If the library is compatible with the all platforms, then you can use ``*``
symbol:
.. code-block:: javascript
"platforms": "*"
.. _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/*/*.ino",
"[Ee]xamples/*/*.pde"
]

View File

@ -1,148 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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,26 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _librarymanager:
Library Manager
===============
*PlatformIO Library Manager* allows you to organize external embedded libraries.
You can search for new libraries via
* :ref:`Command Line interface <cmd_lib_search>`
* `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.
.. image:: ../_static/platformio-demo-lib.gif

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,905 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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).
**Windows Users:** Please check that you have correctly installed USB driver
from board manufacturer
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
* - ``gemma``
- `Adafruit Gemma <http://www.adafruit.com/products/1222>`_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.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 <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
Punch Through
~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``lightblue-bean``
- `LightBlue Bean <https://punchthrough.com/bean>`_
- 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
Wicked Device
~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``wildfirev2``
- `Wicked Device WildFire V2 <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - ``wildfirev3``
- `Wicked Device WildFire V3 <http://shop.wickeddevice.com/resources/wildfire/>`_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
ubIQio
~~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``ardhat``
- `ubIQio Ardhat <http://ardhat.com>`_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb

View File

@ -1,178 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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).
**Windows Users:** Please check that you have correctly installed USB driver
from board manufacturer
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
Atmel
~~~~~
.. list-table::
:header-rows: 1
* - Type ``board``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - ``samd21_xpro``
- `Atmel SAMD21-XPRO <https://developer.mbed.org/platforms/SAMD21-XPRO/>`_
- ATSAMD21J18A
- 48 MHz
- 256 Kb
- 32 Kb
* - ``saml21_xpro_b``
- `Atmel SAML21-XPRO-B <https://developer.mbed.org/platforms/SAML21-XPRO/>`_
- ATSAML21J18B
- 48 MHz
- 256 Kb
- 32 Kb
* - ``samr21_xpro``
- `Atmel ATSAMR21-XPRO <https://developer.mbed.org/platforms/SAMR21-XPRO/>`_
- ATSAMR21G18A
- 48 MHz
- 256 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,73 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _board_creating:
Custom Board
============
*PlatformIO* has pre-built settings for the most popular embedded boards. This
list is available:
* `Embedded Boards Explorer <http://platformio.org/#!/boards>`_ (Web)
* :ref:`cmd_boards` (CLI command)
Nevertheless, PlatformIO allows to create own board or override existing
board's settings. All data is declared using
`JSON-style <http://en.wikipedia.org/wiki/JSON>`_ via
`associative array <http://en.wikipedia.org/wiki/Associative_array>`_
(name/value pairs).
.. contents::
JSON Structure
--------------
The key fields:
* ``build`` data will be used by :ref:`Platforms <platforms>` and
:ref:`frameworks` builders
* ``frameworks`` is the list with supported :ref:`frameworks`
* ``platform`` main type of :ref:`Platforms <platforms>`
* ``upload`` upload settings which depend on the ``platform``
.. code-block:: json
{
"myboard": {
"build": {},
"frameworks": ["%LIST_WITH_SUPPORTED_FRAMEWORKS%"],
"name": "My test board",
"platform": "%PLATFORM_TYPE_HERE%",
"upload": {},
"url": "http://example.com",
"vendor": "My Company Ltd."
}
}
Installation
------------
1. Create ``boards`` directory in :ref:`projectconf_pio_home_dir` if it
doesn't exist.
2. Create ``my_own_boards.json`` file and put to ``boards`` directory.
3. Search available boards via :ref:`cmd_boards` command. You should see
``myboard`` board.
Now, you can use ``myboard`` for the :ref:`projectconf_env_board` option in
:ref:`projectconf`.
Examples
--------
For the examples, please look into built-in ``*.json`` files with boards
settings: https://github.com/platformio/platformio/tree/develop/platformio/boards.

View File

@ -1,446 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _platform_creating:
Custom 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>`_
* - ``framework-wiringpi``
- `GPIO Interface library for the Raspberry Pi <http://wiringpi.com>`_
* - ``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-gccarmlinuxgnueabi``
- `GCC for Linux ARM GNU EABI <https://gcc.gnu.org>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``toolchain-gccarmnoneeabi``
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
* - ``toolchain-gcclinux32``
- `GCC for Linux i686 <https://gcc.gnu.org>`_
* - ``toolchain-gcclinux64``
- `GCC for Linux x86_64 <https://gcc.gnu.org>`_
* - ``toolchain-gccmingw32``
- `MinGW <http://www.mingw.org>`_
* - ``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
import os
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.BuildProgram`` 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.BuildProgram()
#
# 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 exist.
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.BuildProgram()
#
# 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,158 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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).
**Windows Users:** Please check that you have correctly installed USB driver
from board manufacturer
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
* - ``d1``
- `WeMos D1 <http://www.wemos.cc/wiki/doku.php?id=en:d1>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``d1_mini``
- `WeMos D1 mini <http://www.wemos.cc/wiki/doku.php?id=en:d1_mini>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``esp01``
- `Espressif Generic ESP8266 ESP-01 <https://nurdspace.nl/ESP8266>`_
- ESP8266
- 80 MHz
- 512 Kb
- 80 Kb
* - ``esp12e``
- `Espressif ESP8266 ESP-12E <https://nurdspace.nl/ESP8266>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``esp210``
- `SweetPea ESP-210 <http://wiki.sweetpeas.se/index.php?title=ESP-210>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``espino``
- `ESPino <http://www.espino.io>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``huzzah``
- `Adafruit HUZZAH ESP8266 <https://www.adafruit.com/products/2471>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``modwifi``
- `Olimex MOD-WIFI-ESP8266(-DEV) <https://www.olimex.com/Products/IoT/MOD-WIFI-ESP8266-DEV/open-source-hardware>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``nodemcu``
- `NodeMCU 0.9 & 1.0 <http://www.nodemcu.com/>`_
- ESP8266
- 80 MHz
- 1024 Kb
- 80 Kb
* - ``thing``
- `SparkFun ESP8266 Thing <https://www.sparkfun.com/products/13231>`_
- ESP8266
- 80 MHz
- 512 Kb
- 80 Kb
.. include:: espressif_extra.rst

View File

@ -1,131 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
OTA update
----------
There are 2 options:
* Directly specify :option:`platformio run --upload-port` in command line
.. code-block:: bash
platformio run --target upload --upload-port IP_ADDRESS_HERE
* Specify ``upload_port`` option in :ref:`projectconf`
.. code-block:: ini
[env:myenv]
...
upload_port = IP_ADDRESS_HERE
Authentication and upload options
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can pass additional options/flags to OTA uploader using
``upload_flags`` option in :ref:`projectconf`
.. code-block:: ini
[env:myenv]
upload_flags = --port=8266
Available flags
* ``--port=ESP_PORT`` ESP8266 ota Port. Default 8266
* ``--auth=AUTH`` Set authentication password
* ``--spiffs`` Use this option to transmit a SPIFFS image and do not flash
the module
For the full list with available options please run
.. code-block:: bash
~/.platformio/packages/framework-arduinoespressif/tools/espota.py -h
Usage: espota.py [options]
Transmit image over the air to the esp8266 module with OTA support.
Options:
-h, --help show this help message and exit
Destination:
-i ESP_IP, --ip=ESP_IP
ESP8266 IP Address.
-p ESP_PORT, --port=ESP_PORT
ESP8266 ota Port. Default 8266
Authentication:
-a AUTH, --auth=AUTH
Set authentication password.
Image:
-f FILE, --file=FILE
Image file.
-s, --spiffs Use this option to transmit a SPIFFS image and do not
flash the module.
Output:
-d, --debug Show debug output. And override loglevel with debug.
-r, --progress Show progress output. Does not work for ArduinoIDE
Custom CPU Frequency and Upload Speed
-------------------------------------
See :ref:`projectconf_board_f_cpu` and :ref:`projectconf_upload_speed` options
from :ref:`projectconf`
.. code-block:: ini
[env:myenv]
# set frequency to 40MHz
board_f_cpu = 40000000L
upload_speed = 9600
Custom Flash Size
-----------------
The list with preconfigured LD scripts is located in public repository
`platformio-pkg-ldscripts <https://github.com/platformio/platformio-pkg-ldscripts>`_.
* ``esp8266.flash.512k0.ld`` 512K (no SPIFFS)
* ``esp8266.flash.512k64.ld`` 512K (64K SPIFFS)
* ``esp8266.flash.1m64.ld`` 1M (64K SPIFFS)
* ``esp8266.flash.1m128.ld`` 1M (128K SPIFFS)
* ``esp8266.flash.1m256.ld`` 1M (256K SPIFFS)
* ``esp8266.flash.1m512.ld`` 1M (512K SPIFFS)
* ``esp8266.flash.2m.ld`` 2M (1M SPIFFS)
* ``esp8266.flash.4m1.ld`` 4M (1M SPIFFS)
* ``esp8266.flash.4m.ld`` 4M (3M SPIFFS)
* ``esp8266.flash.8m.ld`` 8M (7M SPIFFS)
* ``esp8266.flash.16m.ld`` 16M (15M SPIFFS)
To override default LD script please use :ref:`projectconf_build_flags` from
:ref:`projectconf`.
.. code-block:: ini
[env:myenv]
build_flags = -Wl,-Tesp8266.flash.4m.ld
Examples
--------
All project examples are located in PlatformIO repository
`Examples for Espressif platform <https://github.com/platformio/platformio/tree/develop/examples/espressif>`_.
* `Native SDK <https://github.com/platformio/platformio/tree/develop/examples/espressif/esp8266-native>`_
* `WebServer <https://github.com/platformio/platformio/tree/develop/examples/espressif/esp8266-webserver>`_
* `WiFiScan <https://github.com/platformio/platformio/tree/develop/examples/espressif/esp8266-wifiscan>`_

View File

@ -1,126 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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).
**Windows Users:** Please check that you have correctly installed USB driver
from board manufacturer
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,62 +0,0 @@
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
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.
.. _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.
Embedded
--------
.. toctree::
:maxdepth: 2
atmelavr
atmelsam
espressif
freescalekinetis
nordicnrf51
nxplpc
siliconlabsefm32
ststm32
teensy
timsp430
titiva
Desktop
-------
.. toctree::
:maxdepth: 2
native
linux_arm
linux_i686
linux_x86_64
windows_x86
Custom Platform & Board
-----------------------
.. toctree::
:maxdepth: 2
creating_platform
creating_board

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