Compare commits
597 Commits
Author | SHA1 | Date | |
---|---|---|---|
4c35870dff | |||
ac4e8514db | |||
646123f9ab | |||
11ef9dbdcb | |||
f3526b1d95 | |||
45d5159fe3 | |||
439e6b4ccf | |||
fb08322c17 | |||
c815e0fadc | |||
190ffab76d | |||
882bddf77e | |||
4f1e1a38c9 | |||
a9c02c9cbc | |||
331cfb5b54 | |||
0b80ed6c2b | |||
38967eab64 | |||
3ad1ad4ef1 | |||
0c8f469246 | |||
03d9351dec | |||
b3fc6617e5 | |||
1fdc2e3091 | |||
c773c8f5d5 | |||
b188a05b69 | |||
d7ca3f15a4 | |||
406e240de1 | |||
f3689ac157 | |||
ce72ee04f4 | |||
694121d49a | |||
250b39bcc8 | |||
c74a2b4529 | |||
a1e7ce415b | |||
ab15bafc5b | |||
f6014d2e52 | |||
35a602cfef | |||
6ecd86a244 | |||
0cb28f906e | |||
1a305f2dd7 | |||
cd22f5197b | |||
b3d27b42ad | |||
ab3a5331c1 | |||
9cbe12fbb8 | |||
056cc08d68 | |||
69effbfedb | |||
d881dfb63c | |||
d89b2828e3 | |||
75ca6c6e52 | |||
304c8b7184 | |||
3c46c17242 | |||
aca646e6b9 | |||
b587927687 | |||
3edc336f62 | |||
eee6685c59 | |||
76b5434157 | |||
a05f55554f | |||
ea800f35b7 | |||
4c70856505 | |||
cf7a3e377f | |||
03c0033bed | |||
238fa36212 | |||
f42c8f10f3 | |||
0a760ce9a4 | |||
a77cbe5c16 | |||
475a521d0f | |||
6a387359c3 | |||
7498791520 | |||
f80b378a7b | |||
9b86fdcfb0 | |||
4e2e8b9f07 | |||
69d6529f7e | |||
4f0b48174b | |||
0cf78c4297 | |||
4c80a022c7 | |||
f5f9421894 | |||
f7a0374d2b | |||
ab48a2a8ff | |||
8411769b0a | |||
9a9e177c41 | |||
e98cc7e500 | |||
3529e9083d | |||
2cd12f30a4 | |||
d6d8e7ec74 | |||
b410eed57d | |||
53e5c483f7 | |||
7b131ebdde | |||
7a0ad497da | |||
4b6fc94f94 | |||
ad9ae4c0af | |||
fc96e6a145 | |||
b317e7227a | |||
ab5d7f3313 | |||
a7c0e2e944 | |||
2264141879 | |||
d5b41fe617 | |||
b036a82203 | |||
eaf325b003 | |||
3519cc1a75 | |||
2f58b9c7d2 | |||
24ef799de7 | |||
2682e8db8a | |||
00b76e6fb5 | |||
b70858261f | |||
360024af38 | |||
bfdc425e7c | |||
7b14182083 | |||
7c760da618 | |||
262307608c | |||
879efeffd5 | |||
a1ba9d542f | |||
c77e1a9ae8 | |||
c5d961e27e | |||
ffdec11db4 | |||
b51d95aba5 | |||
f3e8cd9707 | |||
19a4ccee8c | |||
f7be8ad666 | |||
d01d40d33c | |||
0dd134c338 | |||
b2aa46bf62 | |||
d1f4f82897 | |||
12ef1b26bf | |||
1872ecff16 | |||
7cb21dd981 | |||
565ca05366 | |||
db0dbe6d8c | |||
a821e5b553 | |||
0fdccddd88 | |||
9ff22f802a | |||
a2d08c6d9c | |||
da2946f45c | |||
52bfe10ed5 | |||
fb8c2c705c | |||
f75358f561 | |||
a6ac5ad19b | |||
728ef7f1b7 | |||
c1c9b1b219 | |||
2cac6796ff | |||
05a52003d0 | |||
f559d31363 | |||
b0b84560b1 | |||
2884c8b641 | |||
7e9929a310 | |||
92ffc112b8 | |||
9c15accbbb | |||
582a1f744e | |||
05277af5a7 | |||
c7880b6736 | |||
6356e49fdd | |||
669561782b | |||
fe08e1f3f9 | |||
530868a1fe | |||
9b95d68475 | |||
93f9603043 | |||
2c45f18fa1 | |||
e3b3ea53be | |||
3a0ef70249 | |||
a5b064eb26 | |||
5ceae22f5f | |||
da7ee2c86f | |||
bc3d8d26d0 | |||
b67acfec9c | |||
b5366f9d2f | |||
dbeea7ec4f | |||
9a850d4c61 | |||
9c545dc67b | |||
61256c53fe | |||
5be9b0e120 | |||
44c0575e9b | |||
14da22f5ab | |||
e50121e013 | |||
b169f2e252 | |||
d83b1280ed | |||
2d684d36e8 | |||
4023d5e558 | |||
0091ceecae | |||
9a6d15cfe6 | |||
b39dcb11ee | |||
ac4387328f | |||
5e4fcf0ed5 | |||
ea5a0ae75c | |||
657345fa7a | |||
2862c97958 | |||
b958960512 | |||
c327cd5c3f | |||
4256d6b6a3 | |||
b34b00eed2 | |||
ec2305bb10 | |||
553b91460a | |||
32e1ce219a | |||
86ddf628b1 | |||
1af462ff66 | |||
9d50803b0c | |||
08d38b0b79 | |||
edb2a50100 | |||
3011c6dd3f | |||
74a9483286 | |||
3f68eab9bc | |||
7dc80af70a | |||
83698dbdc0 | |||
e231b664fe | |||
c8c1c28054 | |||
85ad1a1f29 | |||
f412abf137 | |||
97487b617a | |||
3ce17fbcb6 | |||
af499876ff | |||
3487a21795 | |||
757df8c8ab | |||
034f431ab1 | |||
fa30a50d20 | |||
6523445185 | |||
8d22591914 | |||
a9bd45bbc8 | |||
605a5da65a | |||
739cfb2182 | |||
6005eaa9bc | |||
14f80975fa | |||
ea13e084ed | |||
f9cb31a2f3 | |||
85a5409e85 | |||
99abd8c090 | |||
f633dde50c | |||
26566282ee | |||
44fc5163e7 | |||
c231f0e41e | |||
6ee9c06285 | |||
4063cd6abd | |||
325c50e924 | |||
efd1896825 | |||
4f61a05c9e | |||
26bfd74a3c | |||
ee088f3aea | |||
c162988868 | |||
213938a9f8 | |||
d091d4f000 | |||
f74f79eed0 | |||
4c4682f457 | |||
614a736eff | |||
1332413f63 | |||
1e3e3dd999 | |||
888967eb61 | |||
7e0ccd0712 | |||
6a0cd46da7 | |||
288eb4df25 | |||
8388359b36 | |||
c9505b3acc | |||
72cb2f1240 | |||
9473e51e40 | |||
8cf3765b30 | |||
a1441b3e73 | |||
98026d83b6 | |||
b0ba8ae5e3 | |||
6190f1aa8f | |||
fdff0afd89 | |||
52bbe9af33 | |||
6d2130444d | |||
ce2bef7d26 | |||
2c4fbda5e3 | |||
f6f4366030 | |||
e6c1e35e75 | |||
bcb40fb2f9 | |||
8baf163684 | |||
99ddea6906 | |||
1c481e0840 | |||
ff08416307 | |||
d7e97731d8 | |||
0263691f8d | |||
2b2fe46772 | |||
10ad8ec987 | |||
fed45e5453 | |||
1f1dc9c5e6 | |||
caa0efd265 | |||
76c8ac4e6c | |||
3e52c194ca | |||
3f8d89f34a | |||
17796de60d | |||
66713021de | |||
d3f03f3fc8 | |||
17c9e8ddc1 | |||
87bc6a7e8c | |||
2faa2e003a | |||
a965d0ea6f | |||
90382e0f0d | |||
62d226c8a3 | |||
d7c49b72a9 | |||
779798c622 | |||
fbdcda720d | |||
321640bd71 | |||
5107d767ee | |||
dc007dd136 | |||
50294274c3 | |||
63902c8215 | |||
69836be1ca | |||
851f7db825 | |||
3484c41b64 | |||
d0d292b80f | |||
7e5f6fe22a | |||
45efc0e0d6 | |||
6baf6568d2 | |||
1a4d1c7d40 | |||
afe80072c6 | |||
b17acd7605 | |||
45096c3137 | |||
c3f78d1977 | |||
8dfd6ac3bb | |||
8a2789fe3f | |||
40729c38eb | |||
6c2df7d0e1 | |||
223a055e8b | |||
96c7ef36c2 | |||
21b52031e7 | |||
b44c75a3c1 | |||
1f95b6be25 | |||
848c50c55c | |||
0c4e0327e3 | |||
3eb3ba4ee0 | |||
631fd707fe | |||
8a269b1d24 | |||
131f1eb943 | |||
c036bde86c | |||
9102a70e04 | |||
c9616ed0fa | |||
dce2f2594a | |||
8c0bcc6ad9 | |||
edf19a8cac | |||
41f2adc1f6 | |||
2b55a2fd05 | |||
45e8379d99 | |||
73041b71a4 | |||
f8419c9184 | |||
aebba5f1c1 | |||
a446386cc9 | |||
2be2a4ebf3 | |||
d20eca3f09 | |||
3bc5cb0d27 | |||
e6745de8d8 | |||
04cd772f0d | |||
d44d757985 | |||
df8fda5b69 | |||
c74f122426 | |||
c20b6af1ec | |||
de43166257 | |||
5c2ba90edf | |||
503decdf2e | |||
ec19341e05 | |||
477f387bd7 | |||
9ede9d3c6d | |||
34d5358eaa | |||
9db5a7e004 | |||
e5f3dee470 | |||
63911f5192 | |||
8824c14768 | |||
17d68652cf | |||
559c46beb0 | |||
380d6eb4be | |||
d2f3b76132 | |||
07b69e9f59 | |||
3ce32e54b2 | |||
7cce906e55 | |||
a3911eda3b | |||
3ac72e4b8c | |||
456e0109cd | |||
1a2ed160cd | |||
9b49b80051 | |||
8a55e65388 | |||
0cecd955c5 | |||
a0d3a180e4 | |||
e257eeff0a | |||
8bc54b0179 | |||
59a97bff3d | |||
870b306b86 | |||
c29399944e | |||
21834b0832 | |||
5535529903 | |||
1ae2e189dd | |||
5e8bfe5ef2 | |||
6bd7129c80 | |||
a41cf3dd48 | |||
1829952b1e | |||
d658363b53 | |||
cc1dec39cf | |||
3035d4eeec | |||
c55204cc50 | |||
c48ffc0089 | |||
257f4b1c5b | |||
7f386126cb | |||
b1e9dea790 | |||
88fe8f2129 | |||
52ceb64758 | |||
1b85a3ddd3 | |||
9ba493bcee | |||
54f2f4ce45 | |||
2d42f944cd | |||
2f9b61aee4 | |||
e2d9d0a5d8 | |||
b60eb059c3 | |||
516887c050 | |||
8a85d7ef1c | |||
fa51860268 | |||
3d0aad6df8 | |||
4e2370e0a0 | |||
5634419513 | |||
5552460b2f | |||
038b641a4d | |||
b397748f53 | |||
cd1440adb2 | |||
4097c34db8 | |||
fcf50a80ac | |||
010a8d15cd | |||
29174e343d | |||
9dde962add | |||
5c9bfdac00 | |||
a9464d7878 | |||
33543d6d8f | |||
df099e15c0 | |||
7a7fa845fe | |||
0751a2cef9 | |||
917c0e3388 | |||
13ba785400 | |||
6bc7404d3a | |||
44f0fc9720 | |||
7184d70f0c | |||
5ecf952934 | |||
39839e919e | |||
363249f165 | |||
5d74e8ae6e | |||
db50043972 | |||
fdff35e31c | |||
4d2daa9da4 | |||
7d9cd1c2ae | |||
77c192050a | |||
6be39120ae | |||
b1de8d119d | |||
f29a06e3f3 | |||
678791bd09 | |||
b408f8f0bf | |||
e101b02ccb | |||
628c54e0c6 | |||
af85f76f9a | |||
19f1ccd0df | |||
5c1c1da5f0 | |||
5272f184cf | |||
4bd507713c | |||
6aaca7d33d | |||
6e02ba17e3 | |||
b588823799 | |||
4d3a6c9791 | |||
3f19f51937 | |||
08ba6cc51c | |||
be049bfac2 | |||
b7ecdf631b | |||
02480730bb | |||
4d8265bee2 | |||
aff525e763 | |||
8d6aee3178 | |||
d139225ffb | |||
56c5ba6fbb | |||
7a91683ca6 | |||
f2cad66d79 | |||
98ec2237b7 | |||
27a555b99a | |||
680c3867db | |||
121102beef | |||
4f8138fe1f | |||
044486d46f | |||
2d2ce0661f | |||
e88ef48e18 | |||
2dd2dd4f0d | |||
38d9f0f5bc | |||
14aed800a2 | |||
621393138f | |||
a959ff767d | |||
11986354d9 | |||
5ea7ec470a | |||
a0bcb4d4f0 | |||
ed68878592 | |||
3121ca5669 | |||
5abb21c3f9 | |||
b9a87b3d54 | |||
cd1259613a | |||
023a3487e0 | |||
2c4c3a12ea | |||
cae5f1f553 | |||
d7673b69e2 | |||
85f0877d32 | |||
e152155a58 | |||
ce93e6013f | |||
bee51aadcb | |||
956633847d | |||
918deb41a4 | |||
1b7b2ca0a2 | |||
1b84078541 | |||
f7311eb94d | |||
9312ca7f0d | |||
533720218a | |||
d2088e7444 | |||
9006b8b618 | |||
b9f926d13b | |||
319636f017 | |||
4c665a292a | |||
72f93cd563 | |||
2e38b156dd | |||
a9a50f79da | |||
4b922b9de2 | |||
36912c0fe6 | |||
dfe39f386d | |||
943d16bcf8 | |||
6d0b1a8106 | |||
663a3b1aec | |||
131f6504ca | |||
94cdc9b69e | |||
1c1cd2509e | |||
abdc76aef8 | |||
9b058c3958 | |||
d91261412e | |||
2e26b5d31d | |||
3266d3b211 | |||
c2072e3e62 | |||
5266f4810b | |||
6e83b4b093 | |||
7b1b908779 | |||
7a95a201b5 | |||
70c86525cc | |||
618d32b872 | |||
66ca204697 | |||
54d650aa40 | |||
851b452c17 | |||
0ff795e798 | |||
43b50e5b9f | |||
18d68bafd0 | |||
feb951c35e | |||
41c2164755 | |||
ee87b55947 | |||
7119bb9084 | |||
132c769766 | |||
e4dbcd50cc | |||
62d5f66ae2 | |||
cfa3f1b520 | |||
0951d53f52 | |||
186580d794 | |||
1a47cfc938 | |||
edc06f12b5 | |||
3830e98c1d | |||
3cbbecb413 | |||
f0abd353ae | |||
84cbbe437d | |||
34a5d366d5 | |||
d3b7fc7ddb | |||
3d413743e4 | |||
b3d5ced193 | |||
1e38db8cae | |||
b073760711 | |||
f778bdb741 | |||
2afbe2a64b | |||
a5878c5544 | |||
997cfbf488 | |||
3afc8c7908 | |||
1e21d6e05b | |||
8eebd39426 | |||
7e985219ad | |||
7ce780bcc6 | |||
62b41e0994 | |||
4c65093a66 | |||
cb4c4e13a3 | |||
3b7de598d3 | |||
a85bf32700 | |||
004125a2ca | |||
d4e4ab07a6 | |||
94bb0dc43e | |||
becec986ea | |||
9eae55f03c | |||
4e90a2fd42 | |||
c4d5960eb6 | |||
3595c2cc88 | |||
73cc3e3ac8 | |||
1541537d0d | |||
abf4376d20 | |||
faf2839a08 | |||
15224e3c02 | |||
093176b2ee | |||
dffc8ef940 | |||
21c64b2fe1 | |||
7868566a78 | |||
f793ff1a86 | |||
e702e1eb27 | |||
5b2fac95ce | |||
2baf14f900 | |||
cc1eb4bad6 | |||
fbd2c61f40 | |||
9cc9912ef2 | |||
e69bc34678 | |||
9d01d86652 | |||
2c301ca422 | |||
c42561de45 | |||
cc46fa34e8 | |||
b94cc655c2 | |||
1c5d34cb5f | |||
ace9ae0b24 |
53
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,53 @@
|
||||
What kind of issue is this?
|
||||
|
||||
- [ ] Question. This issue tracker is not the place for questions. If you want to ask how to do
|
||||
something, or to understand why something isn't working the way you expect it to, use
|
||||
our Community Forums https://community.platformio.org
|
||||
|
||||
- [ ] Feature Request. Start by telling us what problem you’re trying to solve. Often a solution
|
||||
already exists! Don’t 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 IDE. All issues related to PlatformIO IDE should be reported to appropriate repository
|
||||
https://github.com/platformio/platformio-atom-ide/issues
|
||||
|
||||
- [ ] Bug report. If you’ve found a bug, please provide 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
|
2
.gitignore
vendored
@ -2,6 +2,6 @@
|
||||
*.pyc
|
||||
.pioenvs
|
||||
.tox
|
||||
.sconsign.dblite
|
||||
docs/_build
|
||||
dist
|
||||
build
|
||||
|
9
.gitmodules
vendored
@ -1,6 +1,3 @@
|
||||
[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
|
||||
|
22
.travis.yml
@ -1,15 +1,23 @@
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
- "2.7"
|
||||
|
||||
env:
|
||||
- TOX_ENV=docs
|
||||
- TOX_ENV=lint
|
||||
- TOX_ENV=py26
|
||||
- TOX_ENV=py27
|
||||
- TOX_ENV=docs
|
||||
- TOX_ENV=lint
|
||||
- TOX_ENV=py26
|
||||
- TOX_ENV=py27
|
||||
|
||||
install:
|
||||
- pip install -U pip setuptools tox
|
||||
- git submodule update --init --recursive
|
||||
- pip install -U pip setuptools tox
|
||||
- sudo apt-get install -qq lib32z1 lib32ncurses5 lib32bz2-1.0 # temporarily
|
||||
|
||||
script:
|
||||
- tox -e $TOX_ENV
|
||||
- tox -e $TOX_ENV
|
||||
|
||||
notifications:
|
||||
slack:
|
||||
secure: ksQmXOP5NVsf8IgoDuxD68Q/YNwDpZuwq0V29h2dxYCr38oYdAkq/Os4LSCs0X6P0cQFf6nC1hM/d+cAvU+SmzcHGxEceHNEGCg3/TAj+68KIwooPU93Lfq1zwdfteZWxANjKlCQy4+wZliHLhL8fvCYgfJww/6qKmqSYleBNM=
|
||||
on_failure: always
|
||||
on_success: change
|
||||
|
360
HISTORY.rst
@ -1,9 +1,351 @@
|
||||
Release History
|
||||
===============
|
||||
Release Notes
|
||||
=============
|
||||
|
||||
PlatformIO 2.0
|
||||
--------------
|
||||
|
||||
2.9.3 (2016-06-03)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Added support for Arduboy, the game system the size of a credit card
|
||||
* Updated `99-platformio-udev.rules <https://github.com/platformio/platformio/blob/develop/scripts/99-platformio-udev.rules>`__ for Linux OS
|
||||
* Refactored firmware uploading to the embedded boards with SAM-BA bootloader
|
||||
|
||||
2.9.2 (2016-06-02)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Simplified `Continuous Integration with AppVeyor <http://docs.platformio.org/en/latest/ci/appveyor.html>`__
|
||||
(`issue #671 <https://github.com/platformio/platformio/issues/671>`_)
|
||||
* Automatically add source directory to ``CPPPATH`` of Build System
|
||||
* Added support for Silicon Labs SLSTK3401A (Pearl Gecko) and
|
||||
MultiTech mDot F411 ARM mbed based boards
|
||||
* Added support for MightyCore ATmega8535 board
|
||||
(`issue #585 <https://github.com/platformio/platformio/issues/585>`_)
|
||||
* Added ``stlink`` as the default uploader for STM32 Discovery boards
|
||||
(`issue #665 <https://github.com/platformio/platformio/issues/665>`_)
|
||||
* Use HTTP mirror for Package Manager in a case with SSL errors
|
||||
(`issue #645 <https://github.com/platformio/platformio/issues/645>`_)
|
||||
* Improved firmware uploading to Arduino Leonardo/Due based boards
|
||||
* Fixed bug with ``env_default`` when ``pio run -e`` is used
|
||||
* Fixed issue with ``src_filter`` option for Windows OS
|
||||
(`issue #652 <https://github.com/platformio/platformio/issues/652>`_)
|
||||
* Fixed configuration data for TI LaunchPads based on msp430fr4133 and
|
||||
msp430fr6989 MCUs
|
||||
(`issue #676 <https://github.com/platformio/platformio/issues/676>`_)
|
||||
* Fixed issue with ARM mbed framework and multiple definition errors
|
||||
on FRDM-KL46Z board
|
||||
(`issue #641 <https://github.com/platformio/platformio/issues/641>`_)
|
||||
* Fixed issue with ARM mbed framework when abstract class breaks compile
|
||||
for LPC1768
|
||||
(`issue #666 <https://github.com/platformio/platformio/issues/666>`_)
|
||||
|
||||
2.9.1 (2016-04-30)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Handle prototype pointers while converting ``*.ino`` to ``.cpp``
|
||||
(`issue #639 <https://github.com/platformio/platformio/issues/639>`_)
|
||||
|
||||
2.9.0 (2016-04-28)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Project generator for `CodeBlocks IDE <http://docs.platformio.org/en/latest/ide/codeblocks.html>`__
|
||||
(`issue #600 <https://github.com/platformio/platformio/issues/600>`_)
|
||||
* New `Lattice iCE40 FPGA <http://docs.platformio.org/en/latest/platforms/lattice_ice40.html>`__
|
||||
development platform with support for Lattice iCEstick FPGA Evaluation
|
||||
Kit and BQ IceZUM Alhambra FPGA
|
||||
(`issue #480 <https://github.com/platformio/platformio/issues/480>`_)
|
||||
* New `Intel ARC 32-bit <http://docs.platformio.org/en/latest/platforms/intel_arc32.html>`_
|
||||
development platform with support for Arduino/Genuino 101 board
|
||||
(`issue #535 <https://github.com/platformio/platformio/issues/535>`_)
|
||||
* New `Microchip PIC32 <http://docs.platformio.org/en/latest/platforms/microchippic32.html>`__
|
||||
development platform with support for 20+ different PIC32 based boards
|
||||
(`issue #438 <https://github.com/platformio/platformio/issues/438>`_)
|
||||
* New RTOS and build Framework named `Simba <http://docs.platformio.org/en/latest/frameworks/simba.html>`__
|
||||
(`issue #412 <https://github.com/platformio/platformio/issues/412>`_)
|
||||
* New boards for `ARM mbed <http://docs.platformio.org/en/latest/frameworks/mbed.html>`__
|
||||
framework: ST Nucleo F410RB, ST Nucleo L073RZ and BBC micro:bit
|
||||
* Added support for Arduino.Org boards: Arduino Leonardo ETH, Arduino Yun Mini,
|
||||
Arduino Industrial 101 and Linino One
|
||||
(`issue #472 <https://github.com/platformio/platformio/issues/472>`_)
|
||||
* Added support for Generic ATTiny boards: ATTiny13, ATTiny24, ATTiny25,
|
||||
ATTiny45 and ATTiny85
|
||||
(`issue #636 <https://github.com/platformio/platformio/issues/636>`_)
|
||||
* Added support for MightyCore boards: ATmega1284, ATmega644, ATmega324,
|
||||
ATmega164, ATmega32, ATmega16 and ATmega8535
|
||||
(`issue #585 <https://github.com/platformio/platformio/issues/585>`_)
|
||||
* Added support for `TI MSP430 <http://docs.platformio.org/en/latest/platforms/timsp430.html>`__
|
||||
boards: TI LaunchPad w/ msp430fr4133 and TI LaunchPad w/ msp430fr6989
|
||||
* Updated Arduino core for Espressif platform to 2.2.0
|
||||
(`issue #627 <https://github.com/platformio/platformio/issues/627>`_)
|
||||
* Updated native SDK for ESP8266 to 1.5
|
||||
(`issue #366 <https://github.com/platformio/platformio/issues/366>`_)
|
||||
* PlatformIO Library Registry in JSON format! Implemented
|
||||
``--json-output`` and ``--page`` options for
|
||||
`platformio lib search <http://docs.platformio.org/en/latest/userguide/lib/cmd_search.html>`__
|
||||
command
|
||||
(`issue #604 <https://github.com/platformio/platformio/issues/604>`_)
|
||||
* Allowed to specify default environments `env_default <http://docs.platformio.org/en/latest/projectconf.html#env-default>`__
|
||||
which should be processed by default with ``platformio run`` command
|
||||
(`issue #576 <https://github.com/platformio/platformio/issues/576>`_)
|
||||
* Allowed to unflag(remove) base/initial flags using
|
||||
`build_unflags <http://docs.platformio.org/en/latest/projectconf.html#build-unflags>`__
|
||||
option
|
||||
(`issue #559 <https://github.com/platformio/platformio/issues/559>`_)
|
||||
* Allowed multiple VID/PID pairs when detecting serial ports
|
||||
(`issue #632 <https://github.com/platformio/platformio/issues/632>`_)
|
||||
* Automatically add ``-DUSB_MANUFACTURER`` with vendor's name
|
||||
(`issue #631 <https://github.com/platformio/platformio/issues/631>`_)
|
||||
* Automatically reboot Teensy board after upload when Teensy Loader GUI is used
|
||||
(`issue #609 <https://github.com/platformio/platformio/issues/609>`_)
|
||||
* Refactored source code converter from ``*.ino`` to ``*.cpp``
|
||||
(`issue #610 <https://github.com/platformio/platformio/issues/610>`_)
|
||||
* Forced ``-std=gnu++11`` for Atmel SAM development platform
|
||||
(`issue #601 <https://github.com/platformio/platformio/issues/601>`_)
|
||||
* Don't check OS type for ARM mbed-enabled boards and ST STM32 development
|
||||
platform before uploading to disk
|
||||
(`issue #596 <https://github.com/platformio/platformio/issues/596>`_)
|
||||
* Fixed broken compilation for Atmel SAMD based boards except Arduino Due
|
||||
(`issue #598 <https://github.com/platformio/platformio/issues/598>`_)
|
||||
* Fixed firmware uploading using serial port with spaces in the path
|
||||
* Fixed cache system when project's root directory is used as ``src_dir``
|
||||
(`issue #635 <https://github.com/platformio/platformio/issues/635>`_)
|
||||
|
||||
2.8.6 (2016-03-22)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Launched `PlatformIO Community Forums <https://community.platformio.org>`_
|
||||
(`issue #530 <https://github.com/platformio/platformio/issues/530>`_)
|
||||
* Added support for ARM mbed-enabled board Seed Arch Max (STM32F407VET6)
|
||||
(`issue #572 <https://github.com/platformio/platformio/issues/572>`_)
|
||||
* Improved DNS lookup for PlatformIO API
|
||||
* Updated Arduino Wiring-based framework to the latest version for
|
||||
Atmel AVR/SAM development platforms
|
||||
* Updated "Teensy Loader CLI" and fixed uploading of large .hex files
|
||||
(`issue #568 <https://github.com/platformio/platformio/issues/568>`_)
|
||||
* Updated the support for Sanguino Boards
|
||||
(`issue #586 <https://github.com/platformio/platformio/issues/586>`_)
|
||||
* Better handling of used boards when re-initialize/update project
|
||||
* Improved support for non-Unicode user profiles for Windows OS
|
||||
* Disabled progress bar for download operations when prompts are disabled
|
||||
* Fixed multiple definition errors for ST STM32 development platform and
|
||||
ARM mbed framework
|
||||
(`issue #571 <https://github.com/platformio/platformio/issues/571>`_)
|
||||
* Fixed invalid board parameters (reset method and baudrate) for a few
|
||||
ESP8266 based boards
|
||||
* Fixed "KeyError: 'content-length'" in PlatformIO Download Manager
|
||||
(`issue #591 <https://github.com/platformio/platformio/issues/591>`_)
|
||||
|
||||
|
||||
2.8.5 (2016-03-07)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Project generator for `NetBeans IDE <http://docs.platformio.org/en/latest/ide/netbeans.html>`__
|
||||
(`issue #541 <https://github.com/platformio/platformio/issues/541>`_)
|
||||
* Created package for Homebrew Mac OS X Package Manager: ``brew install
|
||||
platformio``
|
||||
(`issue #395 <https://github.com/platformio/platformio/issues/395>`_)
|
||||
* Updated Arduino core for Espressif platform to 2.1.0
|
||||
(`issue #544 <https://github.com/platformio/platformio/issues/544>`_)
|
||||
* Added support for the ESP8266 ESP-07 board to
|
||||
`Espressif <http://docs.platformio.org/en/latest/platforms/espressif.html>`__
|
||||
(`issue #527 <https://github.com/platformio/platformio/issues/527>`_)
|
||||
* Improved handling of String-based ``CPPDEFINES`` passed to extra ``build_flags``
|
||||
(`issue #526 <https://github.com/platformio/platformio/issues/526>`_)
|
||||
* Generate appropriate project for CLion IDE and CVS
|
||||
(`issue #523 <https://github.com/platformio/platformio/issues/523>`_)
|
||||
* Use ``src_dir`` directory from `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||
when initializing project otherwise create base ``src`` directory
|
||||
(`issue #536 <https://github.com/platformio/platformio/issues/536>`_)
|
||||
* Fixed issue with incorrect handling of user's build flags where the base flags
|
||||
were passed after user's flags to GCC compiler
|
||||
(`issue #528 <https://github.com/platformio/platformio/issues/528>`_)
|
||||
* Fixed issue with Project Generator when optional build flags were passed using
|
||||
system environment variables: `PLATFORMIO_BUILD_FLAGS <http://docs.platformio.org/en/latest/envvars.html#platformio-build-flags>`__
|
||||
or `PLATFORMIO_BUILD_SRC_FLAGS <http://docs.platformio.org/en/latest/envvars.html#platformio-build-src-flags>`__
|
||||
* Fixed invalid detecting of compiler type
|
||||
(`issue #550 <https://github.com/platformio/platformio/issues/550>`_)
|
||||
* Fixed issue with updating package which was deleted manually by user
|
||||
(`issue #555 <https://github.com/platformio/platformio/issues/555>`_)
|
||||
* Fixed incorrect parsing of GCC ``-include`` flag
|
||||
(`issue #552 <https://github.com/platformio/platformio/issues/552>`_)
|
||||
|
||||
2.8.4 (2016-02-17)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Added 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 <http://docs.platformio.org/en/latest/platforms/espressif.html>`__
|
||||
development platform
|
||||
* Added ``board_f_flash`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||
which allows to specify `custom flash chip frequency <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-flash-frequency>`_
|
||||
for Espressif development platform
|
||||
(`issue #501 <https://github.com/platformio/platformio/issues/501>`_)
|
||||
* Added ``board_flash_mode`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||
which allows to specify `custom flash chip mode <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-flash-mode>`_
|
||||
for Espressif development platform
|
||||
* Handle new environment variables
|
||||
`PLATFORMIO_UPLOAD_PORT <http://docs.platformio.org/en/latest/envvars.html#platformio-upload-port>`_
|
||||
and `PLATFORMIO_UPLOAD_FLAGS <http://docs.platformio.org/en/latest/envvars.html#platformio-upload-flags>`_
|
||||
(`issue #518 <https://github.com/platformio/platformio/issues/518>`_)
|
||||
* Fixed issue with ``CPPDEFINES`` which contain space and break PlatformIO
|
||||
IDE Linter
|
||||
(`IDE issue #34 <https://github.com/platformio/platformio-atom-ide/issues/34>`_)
|
||||
* Fixed unable to link C++ standard library to Espressif platform build
|
||||
(`issue #503 <https://github.com/platformio/platformio/issues/503>`_)
|
||||
* Fixed issue with pointer (``char* myfunc()``) while converting from ``*.ino``
|
||||
to ``*.cpp``
|
||||
(`issue #506 <https://github.com/platformio/platformio/issues/506>`_)
|
||||
|
||||
2.8.3 (2016-02-02)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Better integration of PlatformIO Builder with PlatformIO IDE Linter
|
||||
* Fixed issue with removing temporary file while converting ``*.ino`` to
|
||||
``*.cpp``
|
||||
* Fixed missing dependency (mbed framework) for Atmel SAM development platform
|
||||
(`issue #487 <https://github.com/platformio/platformio/issues/487>`_)
|
||||
|
||||
2.8.2 (2016-01-29)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Corrected RAM size for NXP LPC1768 based boards
|
||||
(`issue #484 <https://github.com/platformio/platformio/issues/484>`_)
|
||||
* Exclude only ``test`` and ``tests`` folders from build process
|
||||
* Reverted ``-Wl,-whole-archive`` hook for ST STM32 and mbed
|
||||
|
||||
2.8.1 (2016-01-29)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Fixed a bug with Project Initialization in PlatformIO IDE
|
||||
|
||||
2.8.0 (2016-01-29)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* `PlatformIO IDE <http://docs.platformio.org/en/latest/ide/atom.html>`_ for
|
||||
Atom
|
||||
(`issue #470 <https://github.com/platformio/platformio/issues/470>`_)
|
||||
* Added ``pio`` command line alias for ``platformio`` command
|
||||
(`issue #447 <https://github.com/platformio/platformio/issues/447>`_)
|
||||
* Added SPL-Framework support for Nucleo F401RE board
|
||||
(`issue #453 <https://github.com/platformio/platformio/issues/453>`_)
|
||||
* Added ``upload_resetmethod`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||
which allows to specify `custom upload reset method <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-reset-method>`_
|
||||
for Espressif development platform
|
||||
(`issue #444 <https://github.com/platformio/platformio/issues/444>`_)
|
||||
* Allowed to force output of color ANSI-codes or to disable progress bar even
|
||||
if the output is a ``pipe`` (not a ``tty``) using `Environment variables <http://docs.platformio.org/en/latest/envvars.html>`__
|
||||
(`issue #465 <https://github.com/platformio/platformio/issues/465>`_)
|
||||
* Set 1Mb SPIFFS for Espressif boards by default
|
||||
(`issue #458 <https://github.com/platformio/platformio/issues/458>`_)
|
||||
* Exclude ``test*`` folder by default from build process
|
||||
* Generate project for IDEs with information about installed libraries
|
||||
* Fixed builder for mbed framework and ST STM32 platform
|
||||
|
||||
|
||||
2.7.1 (2016-01-06)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Initial support for Arduino Zero board
|
||||
(`issue #356 <https://github.com/platformio/platformio/issues/356>`_)
|
||||
* Added support for completions to Atom text editor using ``.clang_complete``
|
||||
* Generate default targets for `supported IDE <http://docs.platformio.org/en/latest/ide.html>`__
|
||||
(CLion, Eclipse IDE, Emacs, Sublime Text, VIM): Build,
|
||||
Clean, Upload, Upload SPIFFS image, Upload using Programmer, Update installed
|
||||
platforms and libraries
|
||||
(`issue #427 <https://github.com/platformio/platformio/issues/427>`_)
|
||||
* Updated Teensy Arduino Framework to 1.27
|
||||
(`issue #434 <https://github.com/platformio/platformio/issues/434>`_)
|
||||
* Fixed uploading of EEPROM data using ``uploadeep`` target for Atmel AVR
|
||||
development platform
|
||||
* Fixed project generator for CLion IDE
|
||||
(`issue #422 <https://github.com/platformio/platformio/issues/422>`_)
|
||||
* Fixed package ``shasum`` validation on Mac OS X 10.11.2
|
||||
(`issue #429 <https://github.com/platformio/platformio/issues/429>`_)
|
||||
* Fixed CMakeLists.txt ``add_executable`` has only one source file
|
||||
(`issue #421 <https://github.com/platformio/platformio/issues/421>`_)
|
||||
|
||||
2.7.0 (2015-12-30)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
**Happy New Year!**
|
||||
|
||||
* 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!
|
||||
* Implemented uploading files to file system of ESP8266 SPIFFS (including OTA)
|
||||
(`issue #382 <https://github.com/platformio/platformio/issues/382>`_)
|
||||
* Added support for the new Adafruit boards Bluefruit Micro and Feather
|
||||
(`issue #403 <https://github.com/platformio/platformio/issues/403>`_)
|
||||
* Added support for RFDuino
|
||||
(`issue #319 <https://github.com/platformio/platformio/issues/319>`_)
|
||||
* Project generator for `Emacs <http://docs.platformio.org/en/latest/ide/emacs.html>`__
|
||||
text editor
|
||||
(`pull #404 <https://github.com/platformio/platformio/pull/404>`_)
|
||||
* Updated Arduino framework for Atmel AVR development platform to 1.6.7
|
||||
* Documented `firmware uploading for Atmel AVR development platform using
|
||||
Programmers <http://docs.platformio.org/en/latest/platforms/atmelavr.html#upload-using-programmer>`_:
|
||||
AVR ISP, AVRISP mkII, USBtinyISP, USBasp, Parallel Programmer and Arduino as ISP
|
||||
* Fixed issue with current Python interpreter for Python-based tools
|
||||
(`issue #417 <https://github.com/platformio/platformio/issue/417>`_)
|
||||
|
||||
2.6.3 (2015-12-21)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Restored support for Espressif ESP8266 ESP-01 1MB board (ready for OTA)
|
||||
* Fixed invalid ROM size for ESP8266-based boards
|
||||
(`issue #396 <https://github.com/platformio/platformio/issues/396>`_)
|
||||
|
||||
2.6.2 (2015-12-21)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Removed ``SCons`` from requirements list. PlatformIO will try to install it
|
||||
automatically, otherwise users need to install it manually
|
||||
* Fixed ``ChunkedEncodingError`` when SF connection is broken
|
||||
(`issue #356 <https://github.com/platformio/platformio/issues/356>`_)
|
||||
|
||||
2.6.1 (2015-12-18)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Added support for the new ESP8266-based boards (SparkFun ESP8266 Thing,
|
||||
NodeMCU 0.9 & 1.0, Olimex MOD-WIFI-ESP8266(-DEV), Adafruit HUZZAH ESP8266,
|
||||
ESPino, SweetPea ESP-210, WeMos D1, WeMos D1 mini) to
|
||||
`Espressif <http://docs.platformio.org/en/latest/platforms/espressif.html>`__
|
||||
development platform
|
||||
* Created public `platformio-pkg-ldscripts <https://github.com/platformio/platformio-pkg-ldscripts.git>`_
|
||||
repository for LD scripts. Moved common configuration for ESP8266 MCU to
|
||||
``esp8266.flash.common.ld``
|
||||
(`issue #379 <https://github.com/platformio/platformio/issues/379>`_)
|
||||
* Improved documentation for `Espressif <http://docs.platformio.org/en/latest/platforms/espressif.html>`__
|
||||
development platform: OTA update, custom Flash Size, Upload Speed and CPU
|
||||
frequency
|
||||
* Fixed reset method for Espressif NodeMCU (ESP-12E Module)
|
||||
(`issue #380 <https://github.com/platformio/platformio/issues/380>`_)
|
||||
* Fixed issue with code builder when build path contains spaces
|
||||
(`issue #387 <https://github.com/platformio/platformio/issues/387>`_)
|
||||
* Fixed project generator for Eclipse IDE and "duplicate path entries found
|
||||
in project path"
|
||||
(`issue #383 <https://github.com/platformio/platformio/issues/383>`_)
|
||||
|
||||
|
||||
2.6.0 (2015-12-15)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Install only required packages depending on build environment
|
||||
(`issue #308 <https://github.com/platformio/platformio/issues/308>`_)
|
||||
* Added support for Raspberry Pi `WiringPi <http://docs.platformio.org/en/latest/frameworks/wiringpi.html>`__
|
||||
framework
|
||||
(`issue #372 <https://github.com/platformio/platformio/issues/372>`_)
|
||||
* Implemented Over The Air (OTA) upgrades for `Espressif <http://docs.platformio.org/en/latest/platforms/espressif.html>`__
|
||||
development platform.
|
||||
(`issue #365 <https://github.com/platformio/platformio/issues/365>`_)
|
||||
* Updated `CMSIS framework <http://docs.platformio.org/en/latest/frameworks/cmsis.html>`__
|
||||
and added CMSIS support for Nucleo F401RE board
|
||||
(`issue #373 <https://github.com/platformio/platformio/issues/373>`_)
|
||||
* Added support for Espressif ESP8266 ESP-01-1MB board (ready for OTA)
|
||||
* Handle ``upload_flags`` option in `platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||
(`issue #368 <https://github.com/platformio/platformio/issues/368>`_)
|
||||
* Improved PlatformIO installation on the Mac OS X El Capitan
|
||||
|
||||
2.5.0 (2015-12-08)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@ -334,12 +676,12 @@ PlatformIO 1.0
|
||||
1.5.0 (2015-05-15)
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Added support of `Framework mbed <http://platformio.org/#!/frameworks/mbed>`_
|
||||
* Added support of `Framework mbed <http://platformio.org/frameworks/mbed>`_
|
||||
for Teensy 3.1
|
||||
(`issue #183 <https://github.com/platformio/platformio/issues/183>`_)
|
||||
* Added GDB as alternative uploader to `ststm32 <http://docs.platformio.org/en/latest/platforms/ststm32.html>`__ platform
|
||||
(`issue #175 <https://github.com/platformio/platformio/issues/174>`_)
|
||||
* Added `examples <https://github.com/platformio/platformio/tree/develop/examples>`__
|
||||
* Added `examples <https://github.com/platformio/platformio-examples/tree/develop>`__
|
||||
with preconfigured IDE projects
|
||||
(`issue #154 <https://github.com/platformio/platformio/issues/154>`_)
|
||||
* Fixed firmware uploading under Linux OS for Arduino Leonardo board
|
||||
@ -421,7 +763,7 @@ PlatformIO 1.0
|
||||
* Created new `Frameworks <http://docs.platformio.org/en/latest/frameworks/index.html>`__
|
||||
page in documentation and added to `PlatformIO Web Site <http://platformio.org>`_
|
||||
(`issue #115 <https://github.com/platformio/platformio/issues/115>`_)
|
||||
* Introduced online `Embedded Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
* Introduced online `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
* Automatically append define ``-DPLATFORMIO=%version%`` to
|
||||
builder (`issue #105 <https://github.com/platformio/platformio/issues/105>`_)
|
||||
* Renamed ``stm32`` development platform to
|
||||
@ -585,9 +927,9 @@ PlatformIO 0.0
|
||||
* Fixed "*OSError: [Errno 2] No such file or directory*" within
|
||||
`platformio run <http://docs.platformio.org/en/latest/userguide/cmd_run.html>`__
|
||||
command when PlatformIO isn't installed properly
|
||||
* Fixed example for `Eclipse IDE with Tiva board <https://github.com/platformio/platformio/tree/develop/examples/ide/eclipse>`_
|
||||
* Fixed example for `Eclipse IDE with Tiva board <https://github.com/platformio/platformio-examples/tree/develop/ide/eclipse>`_
|
||||
(`issue #32 <https://github.com/platformio/platformio/pull/32>`_)
|
||||
* Upgraded `Eclipse Project Examples <https://github.com/platformio/platformio/tree/develop/examples/ide/eclipse>`_
|
||||
* Upgraded `Eclipse Project Examples <https://github.com/platformio/platformio-examples/tree/develop/ide/eclipse>`_
|
||||
to latest *Luna* and *PlatformIO* releases
|
||||
|
||||
0.9.0 (2014-12-01)
|
||||
@ -655,7 +997,7 @@ PlatformIO 0.0
|
||||
* Disabled default warning flag "-Wall"
|
||||
* Added auto-conversation from \*.ino to valid \*.cpp for Arduino/Energia
|
||||
frameworks (`issue #7 <https://github.com/platformio/platformio/issues/7>`_)
|
||||
* Added `Arduino example <https://github.com/platformio/platformio/tree/develop/examples/>`_
|
||||
* Added `Arduino example <https://github.com/platformio/platformio-examples/tree/develop/>`_
|
||||
with external library (*Adafruit CC3000*)
|
||||
* Implemented `platformio upgrade <http://docs.platformio.org/en/latest/userguide/cmd_upgrade.html>`_
|
||||
command and "auto-check" for the latest
|
||||
@ -704,7 +1046,7 @@ PlatformIO 0.0
|
||||
|
||||
* Resolved `issue #1 "Build referred libraries" <https://github.com/platformio/platformio/issues/1>`_
|
||||
* Renamed project's "libs" directory to "lib"
|
||||
* Added `arduino-internal-library <https://github.com/platformio/platformio/tree/develop/examples/>`_ example
|
||||
* Added `arduino-internal-library <https://github.com/platformio/platformio-examples/tree/develop/>`_ example
|
||||
* Changed to beta status
|
||||
|
||||
|
||||
|
135
README.rst
@ -7,9 +7,6 @@ PlatformIO
|
||||
.. image:: https://ci.appveyor.com/api/projects/status/dku0h2rutfj0ctls/branch/develop?svg=true
|
||||
:target: https://ci.appveyor.com/project/ivankravets/platformio
|
||||
: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
|
||||
@ -19,33 +16,38 @@ PlatformIO
|
||||
.. image:: https://img.shields.io/pypi/l/platformio.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/community/PlatformIO.png
|
||||
:alt: Community Forums
|
||||
:target: https://community.platformio.org
|
||||
.. image:: https://img.shields.io/donate/PlatformIO.png?color=yellow
|
||||
:alt: Donate for PlatformIO.Org
|
||||
:target: http://platformio.org/donate
|
||||
|
||||
`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>`_ |
|
||||
|
||||
`Home <http://platformio.org>`_ |
|
||||
`IDE <http://platformio.org/platformio-ide>`_ |
|
||||
`Project Examples <https://github.com/platformio/platformio-examples/tree/develop>`_ |
|
||||
`Docs <http://docs.platformio.org>`_ |
|
||||
`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/>`_
|
||||
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
|
||||
`Bintray <https://bintray.com/platformio>`_ |
|
||||
`Community <https://community.platformio.org>`_ |
|
||||
`Donate <http://platformio.org/donate>`_ |
|
||||
`Contact Us <http://platformio.org/contact>`_
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-logo.png
|
||||
:target: http://platformio.org
|
||||
|
||||
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
|
||||
development. Cross-platform code builder and library manager. Continuous and
|
||||
development. Cross-platform build system and library manager. Continuous and
|
||||
IDE integration. Arduino and MBED compatible. Ready for Cloud compiling.
|
||||
|
||||
* **PlatformIO IDE** - The next-generation integrated development environment for IoT.
|
||||
C/C++ Intelligent Code Completion and Smart Code Linter for the super-fast coding.
|
||||
Multi-projects workflow with Multiple Panes. Themes Support with dark and light colors.
|
||||
Built-in Terminal with PlatformIO CLI tool and support for the powerful Serial Port Monitor.
|
||||
All advanced instruments without leaving your favourite development environment.
|
||||
* **Development Platforms** - Embedded and Desktop development platforms with
|
||||
pre-built toolchains, debuggers, uploaders and frameworks which work under
|
||||
popular host OS: Mac, Windows, Linux (+ARM)
|
||||
@ -55,27 +57,28 @@ IDE integration. Arduino and MBED compatible. Ready for Cloud compiling.
|
||||
* **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
|
||||
version.
|
||||
|
||||
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
|
||||
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
|
||||
libOpenCM3, etc.*
|
||||
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Intel ARC32, Lattice iCE40,
|
||||
Microchip PIC32, Nordic nRF51, NXP LPC, Silicon Labs EFM32, ST STM32,
|
||||
TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.*
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-demo-wiring.gif
|
||||
:target: http://platformio.org
|
||||
|
||||
* `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>`_
|
||||
* `PlatformIO IDE <http://platformio.org/platformio-ide>`_
|
||||
* `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>`_
|
||||
* `Release Notes <http://docs.platformio.org/en/latest/history.html>`_
|
||||
|
||||
Use whenever. *Run everywhere.*
|
||||
-------------------------------
|
||||
@ -89,17 +92,17 @@ sized computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
|
||||
Embedded Development. *Easier Than Ever.*
|
||||
-----------------------------------------
|
||||
*PlatformIO* is well suited for embedded development and has pre-configured
|
||||
settings for most popular `Embedded Boards <http://platformio.org/#!/boards>`_.
|
||||
settings for most popular `Embedded Boards <http://platformio.org/boards>`_.
|
||||
|
||||
* Colourful `command-line output <https://raw.githubusercontent.com/platformio/platformio/develop/examples/platformio-examples.png>`_
|
||||
* `IDE Integration <http://docs.platformio.org/en/latest/ide.html>`_ with
|
||||
*Arduino, Eclipse, Energia, Qt Creator, Sublime Text, Vim, Visual Studio*
|
||||
*Arduino, Atom, Eclipse, Emacs, 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>`_
|
||||
* Pre-built tool chains, frameworks for the popular `Hardware Platforms <http://platformio.org/platforms>`_
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-embedded-development.png
|
||||
:target: http://platformio.org
|
||||
@ -111,7 +114,7 @@ The Missing Library Manager. *It's here!*
|
||||
platforms which allows you to organize and have up-to-date external libraries.
|
||||
|
||||
* Friendly `Command-Line Interface <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
|
||||
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
|
||||
* 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
|
||||
@ -122,7 +125,7 @@ platforms which allows you to organize and have up-to-date external libraries.
|
||||
:target: http://platformio.org
|
||||
:alt: PlatformIO Library Manager Architecture
|
||||
|
||||
Smart Code Builder. *Fast and Reliable.*
|
||||
Smart Build System. *Fast and Reliable.*
|
||||
----------------------------------------
|
||||
*PlatformIO Code Builder* is built-on a next-generation software construction
|
||||
tool named `SCons <http://www.scons.org/>`_. Think of *SCons* as an improved,
|
||||
@ -136,7 +139,7 @@ cross-platform substitute for the classic *Make* utility.
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png
|
||||
:target: http://platformio.org
|
||||
:alt: PlatformIO Code Builder Architecture
|
||||
:alt: PlatformIO Build System Architecture
|
||||
|
||||
Single source code. *Multiple platforms.*
|
||||
-----------------------------------------
|
||||
@ -151,33 +154,57 @@ more).
|
||||
|
||||
It has support for the most popular embedded platforms:
|
||||
|
||||
* `Atmel AVR <http://platformio.org/#!/platforms/atmelavr>`_
|
||||
* `Atmel SAM <http://platformio.org/#!/platforms/atmelsam>`_
|
||||
* `Espressif <http://platformio.org/#!/platforms/espressif>`_
|
||||
* `Freescale Kinetis <http://platformio.org/#!/platforms/freescalekinetis>`_
|
||||
* `Nordic nRF51 <http://platformio.org/#!/platforms/nordicnrf51>`_
|
||||
* `NXP LPC <http://platformio.org/#!/platforms/nxplpc>`_
|
||||
* `ST STM32 <http://platformio.org/#!/platforms/ststm32>`_
|
||||
* `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>`_
|
||||
* `Atmel AVR <http://platformio.org/platforms/atmelavr>`_
|
||||
* `Atmel SAM <http://platformio.org/platforms/atmelsam>`_
|
||||
* `Espressif <http://platformio.org/platforms/espressif>`_
|
||||
* `Freescale Kinetis <http://platformio.org/platforms/freescalekinetis>`_
|
||||
* `Intel ARC32 <http://platformio.org/platforms/intel_arc32>`_
|
||||
* `Lattice iCE40 <http://platformio.org/platforms/lattice_ice40>`_
|
||||
* `Microchip PIC32 <http://platformio.org/platforms/microchippic32>`_
|
||||
* `Nordic nRF51 <http://platformio.org/platforms/nordicnrf51>`_
|
||||
* `NXP LPC <http://platformio.org/platforms/nxplpc>`_
|
||||
* `ST STM32 <http://platformio.org/platforms/ststm32>`_
|
||||
* `Silicon Labs EFM32 <http://platformio.org/platforms/siliconlabsefm32>`_
|
||||
* `Teensy <http://platformio.org/platforms/teensy>`_
|
||||
* `TI MSP430 <http://platformio.org/platforms/timsp430>`_
|
||||
* `TI TIVA C <http://platformio.org/platforms/titiva>`_
|
||||
|
||||
Frameworks:
|
||||
|
||||
* `Arduino <http://platformio.org/#!/frameworks/arduino>`_
|
||||
* `CMSIS <http://platformio.org/#!/frameworks/cmsis>`_
|
||||
* `libOpenCM3 <http://platformio.org/#!/frameworks/libopencm3>`_
|
||||
* `Energia <http://platformio.org/#!/frameworks/energia>`_
|
||||
* `SPL <http://platformio.org/#!/frameworks/spl>`_
|
||||
* `mbed <http://platformio.org/#!/frameworks/mbed>`_
|
||||
* `Arduino <http://platformio.org/frameworks/arduino>`_
|
||||
* `CMSIS <http://platformio.org/frameworks/cmsis>`_
|
||||
* `Energia <http://platformio.org/frameworks/energia>`_
|
||||
* `libOpenCM3 <http://platformio.org/frameworks/libopencm3>`_
|
||||
* `mbed <http://platformio.org/frameworks/mbed>`_
|
||||
* `Simba <http://platformio.org/frameworks/simba>`_
|
||||
* `SPL <http://platformio.org/frameworks/spl>`_
|
||||
* `WiringPi <http://platformio.org/frameworks/wiringpi>`_
|
||||
|
||||
For further details, please refer to `What is PlatformIO? <http://docs.platformio.org/en/latest/faq.html#what-is-platformio>`_
|
||||
|
||||
Contributing
|
||||
------------
|
||||
|
||||
1. Fork the repository on GitHub.
|
||||
2. Make a branch off of ``develop``
|
||||
3. Run ``pip install tox``
|
||||
4. Go to the root of project where is located ``tox.ini`` and run ``tox -e develop``
|
||||
5. Activate current development environment:
|
||||
|
||||
* Windows: ``.tox\develop\Scripts\activate``
|
||||
* Bash/ZSH: ``source .tox/develop/bin/activate``
|
||||
* Fish: ``source .tox/bin/activate.fish``
|
||||
|
||||
6. Make changes to code, documentation, etc.
|
||||
7. Lint source code ``tox -e lint``
|
||||
8. Run the tests ``tox -e py27``
|
||||
9. Commit changes to your forked repository
|
||||
10. Submit a Pull Request on GitHub.
|
||||
|
||||
Licence
|
||||
-------
|
||||
|
||||
Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
Copyright 2014-2016 Ivan Kravets <me@ikravets.com>
|
||||
|
||||
The PlatformIO is licensed under the permissive Apache 2.0 licence,
|
||||
so you can use it in both commercial and personal projects with confidence.
|
||||
|
28
appveyor.yml
@ -1,27 +1,13 @@
|
||||
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
|
||||
|
||||
- cmd: git submodule update --init --recursive
|
||||
- cmd: SET PATH=%PATH%;C:\Python27\Scripts;C:\MinGW\bin
|
||||
- cmd: pip install tox
|
||||
|
||||
test_script:
|
||||
- "%PYTHON_HOME%\\Scripts\\tox --version"
|
||||
- "%PYTHON_HOME%\\Scripts\\pip --version"
|
||||
- "%WITH_COMPILER% %PYTHON_HOME%\\Scripts\\tox"
|
||||
- cmd: tox
|
||||
|
16
circle.yml
@ -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
|
BIN
docs/_static/clang-installer-add-path.png
vendored
Normal file
After Width: | Height: | Size: 22 KiB |
76
docs/_static/extra.css
vendored
@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
* Copyright 2014-2016 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.
|
||||
@ -29,7 +29,8 @@ nav {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
|
||||
@media (min-width: 992px) {
|
||||
#pionav {
|
||||
display: block !important;
|
||||
}
|
||||
@ -39,18 +40,14 @@ nav {
|
||||
.wy-nav-side {
|
||||
top: 50px;
|
||||
}
|
||||
.container {
|
||||
width: 750px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 992px) {
|
||||
|
||||
.container {
|
||||
width: 970px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 1200px) {
|
||||
.container {
|
||||
width: 1170px;
|
||||
width: 1150px;
|
||||
}
|
||||
}
|
||||
.container-fluid {
|
||||
@ -94,6 +91,7 @@ nav {
|
||||
position: relative;
|
||||
display: block;
|
||||
padding: 10px 15px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.nav > li > a:hover,
|
||||
.nav > li > a:focus {
|
||||
@ -103,6 +101,9 @@ nav {
|
||||
.nav > li > a > img {
|
||||
max-width: none;
|
||||
}
|
||||
.nav > li > a > i {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
position: relative;
|
||||
@ -252,3 +253,62 @@ nav {
|
||||
.navbar-header .navbar-brand {
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
/* Misc */
|
||||
|
||||
.wy-side-scroll .wy-side-nav-search .icon,
|
||||
.wy-side-scroll .wy-side-nav-search .version {
|
||||
display: none;
|
||||
visibility: none;
|
||||
}
|
||||
|
||||
.navbar-header .navbar-brand {
|
||||
color: #e0e0e0;
|
||||
background: url("../_static/platformio-logo-xs.png") no-repeat;
|
||||
background-position: 5px 0;
|
||||
padding-left: 50px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.navbar .github-corner {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.navbar .github-corner svg {
|
||||
fill: #fff;
|
||||
color: #080808;
|
||||
position: absolute;
|
||||
top: -1px;
|
||||
right: 0;
|
||||
border: 0;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
transform: scale(1, 1);
|
||||
}
|
||||
|
||||
@media screen and (min-width: 992px) {
|
||||
.navbar .github-corner {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.top-banner {
|
||||
display: block;
|
||||
padding: 10px 20px;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
background-color: #0275d8;
|
||||
}
|
||||
|
||||
.top-banner:hover {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
background-color: #025ebb;
|
||||
}
|
||||
|
||||
.top-banner:visited {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
BIN
docs/_static/ide-atom-platformio-install.png
vendored
Normal file
After Width: | Height: | Size: 240 KiB |
BIN
docs/_static/ide-atom-platformio-menu-item.png
vendored
Normal file
After Width: | Height: | Size: 224 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-1.png
vendored
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-10.png
vendored
Normal file
After Width: | Height: | Size: 73 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-11.png
vendored
Normal file
After Width: | Height: | Size: 68 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-12.png
vendored
Normal file
After Width: | Height: | Size: 81 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-13.png
vendored
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-14.png
vendored
Normal file
After Width: | Height: | Size: 64 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-2.png
vendored
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-3.png
vendored
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-4.png
vendored
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-5.png
vendored
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-6.png
vendored
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-7.png
vendored
Normal file
After Width: | Height: | Size: 134 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-8.png
vendored
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
docs/_static/ide-atom-platformio-quick-start-9.png
vendored
Normal file
After Width: | Height: | Size: 73 KiB |
BIN
docs/_static/ide-atom-platformio-toolbar.png
vendored
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
docs/_static/ide-atom-platformio.png
vendored
Normal file
After Width: | Height: | Size: 645 KiB |
BIN
docs/_static/ide-eclipse-virtualiot.jpg
vendored
Normal file
After Width: | Height: | Size: 140 KiB |
BIN
docs/_static/ide-platformio-arduino.png
vendored
Before Width: | Height: | Size: 108 KiB |
BIN
docs/_static/ide-platformio-clion.png
vendored
Before Width: | Height: | Size: 292 KiB After Width: | Height: | Size: 297 KiB |
BIN
docs/_static/ide-platformio-codeblocks.png
vendored
Normal file
After Width: | Height: | Size: 91 KiB |
BIN
docs/_static/ide-platformio-eclipse.png
vendored
Before Width: | Height: | Size: 265 KiB After Width: | Height: | Size: 341 KiB |
BIN
docs/_static/ide-platformio-emacs.png
vendored
Normal file
After Width: | Height: | Size: 430 KiB |
BIN
docs/_static/ide-platformio-energia.png
vendored
Before Width: | Height: | Size: 112 KiB |
BIN
docs/_static/ide-platformio-netbeans.png
vendored
Normal file
After Width: | Height: | Size: 213 KiB |
BIN
docs/_static/ide-sublime-text-deviot.gif
vendored
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
docs/_static/ide-vs-platformio-newproject-6.png
vendored
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 24 KiB |
BIN
docs/_static/ide-vs-platformio-newproject-8.png
vendored
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 108 KiB |
BIN
docs/_static/ide-vs-platformio-newproject-9.png
vendored
Normal file
After Width: | Height: | Size: 71 KiB |
BIN
docs/_static/platformio-demo-ota-esp8266.jpg
vendored
Normal file
After Width: | Height: | Size: 88 KiB |
BIN
docs/_static/platformio-logo-xs.png
vendored
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
docs/_static/python-installer-add-path.png
vendored
Normal file
After Width: | Height: | Size: 63 KiB |
48
docs/_templates/footer.html
vendored
@ -3,29 +3,61 @@
|
||||
{% block extrafooter %}
|
||||
<link rel="stylesheet" href="{{ pathto('_static/extra.css', 1) }}" type="text/css" />
|
||||
<header id="pionav" class="navbar navbar-inverse navbar-fixed-top">
|
||||
<a href="https://github.com/platformio" target="_blank" class="github-corner">
|
||||
<svg viewBox="0 0 250 250">
|
||||
<path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
|
||||
<path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
|
||||
<path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path>
|
||||
</svg>
|
||||
</a>
|
||||
<div class="container container-fluid">
|
||||
<div class="navbar-header">
|
||||
<a class="navbar-brand" href="http://platformio.org/"></i> PlatformIO</a>
|
||||
<a class="navbar-brand" href="http://platformio.org">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>
|
||||
<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/platformio-ide"><i class="fa fa-cube fa-lg"></i>IDE</a></li>
|
||||
<li><a href="http://platformio.org/platforms"><i class="fa fa-wrench fa-lg"></i>Development</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>
|
||||
<li class="active"><a href="http://docs.platformio.org"><i class="fa fa-book fa-lg"></i>Docs</a></li>
|
||||
<li><a href="https://community.platformio.org"><i class="fa fa-comments-o fa-lg"></i>Community</a></li>
|
||||
<li><a href="http://platformio.org/contact"><i class="fa fa-envelope fa-lg"></i>Contact</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 %}
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -20,9 +20,54 @@ Articles about us
|
||||
|
||||
Here are recent articles about PlatformIO:
|
||||
|
||||
2016
|
||||
^^^^
|
||||
|
||||
* Jun 3, 2016 - **Daniel Eichhorn** - `ESP8266: Continuous Delivery Pipeline – Push To Production <http://blog.squix.org/2016/06/esp8266-continuous-delivery-pipeline-push-to-production.html>`_
|
||||
* May 30, 2016 - **Ron Moerman** - `IoT Development with PlatformIO <https://electronicsworkbench.io/blog/platformio>`_
|
||||
* May 29, 2016 - **Chris Synan** - `Reverse Engineer RF Remote Controller for IoT! <http://www.instructables.com/id/Reverse-Engineer-RF-Remote-Controller-for-IoT/?ALLSTEPS>`_
|
||||
* May 26, 2016 - **Charlie Key** - `7 Best Developer Tools To Build Your NEXT Internet of Things Application <https://www.losant.com/blog/7-best-developer-tools-to-build-your-next-internet-of-things-application>`_
|
||||
* May 22, 2016 - **Pedro Minatel** - `Estação meteorológica com ESP8266 (Weather station with ESP8266, Portuguese) <http://pedrominatel.com.br/esp8266/estacao-meteorologica-com-esp8266/>`_
|
||||
* May 16, 2016 - **Pedro Minatel** - `Controle remoto WiFi com ESP8266 (WiFi remote control using ESP8266, Portuguese) <http://pedrominatel.com.br/esp8266/controle-remoto-wifi-com-esp8266/>`_
|
||||
* May 11, 2016 - **Jo Vandeginste** - `Using PlatformIO to compile for Jeelabs' Jeenode Micro <http://jovandeginste.github.io/2016/05/11/using-platformio-to-compile-for-jeelabs-jeenode-micro.html>`_
|
||||
* May 08, 2016 - **Radoslaw Bob** - `Touch controlled buzzer (Nodemcu ESP8266) <https://gettoknowthebob.wordpress.com/2016/05/08/touch-controlled-buzzer-nodemcu-esp8266/>`_
|
||||
* May 06, 2016 - **Jean Roux** - `The IoT building blocks I use for my home-automation projects <http://iotplay.blogspot.fr/2016/05/the-components-i-use-for-my-projects.html/>`_
|
||||
* May 05, 2016 - **Ivan Kravets, Ph.D. / Eclipse Virtual IoT Meetup** - `PlatformIO: a cross-platform IoT solution to build them all! <http://www.meetup.com/Virtual-IoT/events/229964142/>`_
|
||||
* May 01, 2016 - **Pedro Minatel** - `PlatformIO – Uma alternativa ao Arduino IDE (PlatformIO - An alternative to the Arduino IDE, Portuguese) <http://pedrominatel.com.br/ferramentas/platformio-uma-alternativa-ao-arduino-ide/>`_
|
||||
* Apr 23, 2016 - **Al Williams** - `Hackaday: Atomic Arduino (and Other) Development <http://hackaday.com/2016/04/23/atomic-arduino-and-other-development/>`_
|
||||
* Apr 16, 2016 - **Sathittham Sangthong** - `[PlatformIO] มาลองเล่น PlatformIO แทน Arduino IDE กัน (Let's play together with PlatformIO IDE [alternative to Arduino IDE], Thai) <http://www.sathittham.com/platformio/platformio-ide/>`_
|
||||
* Apr 15, 2016 - **Daniel Eichhorn** - `ESP8266: Offline Debugging with the Platformio Environment <http://blog.squix.ch/2016/04/esp8266-offline-debugging-with.html>`_
|
||||
* Apr 11, 2016 - **Matjaz Trcek** - `Top 5 Arduino integrated development environments <https://codeandunicorns.com/top-5-arduino-integrated-development-environments-ide/>`_
|
||||
* Apr 06, 2016 - **Aleks** - `PlatformIO ausprobiert (Tried PlatformIO, German) <http://5volt-junkie.net/platformio/>`_
|
||||
* Apr 02, 2016 - **Diego Pinto** - `Você tem coragem de abandonar a IDE do Arduino? PlatformIO + Atom (Do you dare to leave the Arduino IDE? PlatformIO + Atom, Portuguese) <http://www.clubemaker.com.br/?rota=artigo/81>`_
|
||||
* Mar 30, 2016 - **Brandon Cannaday** - `Getting Started with PlatformIO and ESP8266 NodeMcu <https://www.losant.com/blog/getting-started-with-platformio-esp8266-nodemcu>`_
|
||||
* Mar 29, 2016 - **Pablo Peñalve** - `PlatformIO + Geany + Raspberry PI, Spanish <http://ret-catriel.blogspot.com/2016/03/framework-platformio-geany-raspberry-pi.html>`_
|
||||
* Mar 24, 2016 - **NAzT** - `PlatformIO และการปรับแต่ง เพื่อใช้สำหรับพัฒนา Arduino Library (PlatformIO and advanced development for Arduino Library, Thai) <https://cmmakerclub.com/tools-2/config-platformio-for-arduino-framework-developer/>`_
|
||||
* Mar 16, 2016 - **Jakub Skořepa** - `Instalace PlatformIO (PlatformIO IDE Installation, Czech) <http://ok1kvk.cz/clanek/2016/instalace-platformio/>`_
|
||||
* Mar 12, 2016 - **Peter Marks** - `PlatformIO, the Arduino IDE for programmers <http://blog.marxy.org/2016/03/platformio-arduino-ide-for-programmers.html>`_
|
||||
* Mar 12, 2016 - **Richard Arthurs** - `Getting Started With PlatformIO <http://richarthurs.com/2016/03/12/platformio-review-and-first-thoughts/>`_
|
||||
* Mar 07, 2016 - **Joran Jessurun** - `Nieuwe wereld met PlatformIO (New world with PlatformIO, Dutch) <http://blog.wisclub.nl/#post178>`_
|
||||
* Mar 05, 2016 - **brichacek.net** - `PlatformIO – otevřený ekosystém pro vývoj IoT (PlatformIO – an open source ecosystem for IoT development, Czech) <http://blog.brichacek.net/platformio-otevreny-ekosystem-pro-vyvoj-iot/>`_
|
||||
* Mar 04, 2016 - **Ricardo Vega** - `Programa tu Arduino desde Atom (Program your Arduino from Atom, Spanish) <http://ricveal.com/blog/programa-arduino-desde-atom/>`_
|
||||
* Feb 28, 2016 - **Alex Bloggt** - `PlatformIO vorgestellt (Introduction to PlatformIO IDE, German) <https://alexbloggt.com/platformio-vorgestellt/>`_
|
||||
* Feb 25, 2016 - **NutDIY** - `PlatformIO Blink On Nodemcu Dev Kit V1.0 (Thai) <http://nutdiy.blogspot.com/2016/02/platformio-blink-on-nodemcu-dev-kit-v10.html>`_
|
||||
* Feb 23, 2016 - **Ptarmigan Labs** - `ESP8266 Over The Air updating – what are the options? <https://ptarmiganlabs.com/blog/2016/02/23/esp8266-over-the-air-updating-what-are-the-options/>`_
|
||||
* Feb 22, 2016 - **Grzegorz Hołdys** - `How to Integrate PlatformIO with Netbeans <http://www.instructables.com/id/How-to-Integrate-PlatformIO-With-Netbeans/>`_
|
||||
* Feb 19, 2016 - **Embedds** - `Develop easier with PlatformIO ecosystem <http://www.embedds.com/develop-easier-with-platformio-ecosystem/>`_
|
||||
* Feb 13, 2016 - **Robert Cudmore** - `Programming an arduino with PlatformIO <http://blog.cudmore.io/post/2016/02/13/Programming-an-arduino-with-platformio/>`_
|
||||
* Jan 24, 2016 - **Sergey Prilukin** - `How to use IntelliJ IDEA to develop and upload software for micro controllers like Arduino <http://jandevblog.blogspot.com/2016/01/how-to-use-intellij-idea-to-develop-and.html>`_
|
||||
* Jan 16, 2016 - **Dani Eichhorn** - `ESP8266 Arduino IDE Alternative: PlatformIO <http://blog.squix.ch/2016/01/esp8266-arduino-ide-alternative.html>`_
|
||||
* Jan 11, 2016 - **David Mills, Ph.D.** - `STM NUCLEOF401RE TIMER IO <http://webshed.org/wiki/STM_NUCLEOF401RE_TIMER_IO>`_
|
||||
* Jan 05, 2016 - **Julien Rodrigues** - `Internet Of Things: The IDE scandal <https://medium.com/@jrodrigues/internet-of-things-the-ide-scandal-5ddb8fc9d918>`_
|
||||
|
||||
2015
|
||||
^^^^
|
||||
|
||||
* Dec 22, 2015 - **Jan Penninkhof** - `Over-the-Air ESP8266 programming using PlatformIO <http://www.penninkhof.com/2015/12/1610-over-the-air-esp8266-programming-using-platformio/>`_
|
||||
* Dec 15, 2015 - **stastaka** - `PlatformIOでカスタムボードを使う (Use a custom board for PlatformIO, Japanese) <http://qiita.com/stastaka/items/a6a50dbbb2933bd78bdd>`_
|
||||
* Dec 08, 2015 - **Piotr Król** - `Using PlatformIO with TI MSP430 LunchPads <http://blog.3mdeb.com/2015/12/08/using-platformio-with-ti-msp430-lunchpads/>`_
|
||||
* Dec 01, 2015 - **Michał Seroczyński** - `Push Notification from Arduino Yún with motion sensor <http://www.ches.pl/push-from-yun-1/>`_
|
||||
* 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/>`_
|
||||
@ -30,6 +75,7 @@ Here are recent articles about PlatformIO:
|
||||
* 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 10, 2015 - **Floyd Hilton** - `Programming Arduino with Atom <http://floydhilton.com/software/career/2015/10/10/Arduino_with_Atom.html>`_
|
||||
* 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>`_
|
||||
@ -44,14 +90,14 @@ Here are recent articles about PlatformIO:
|
||||
* 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>`_
|
||||
* Apr 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>`_
|
||||
* Mar 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/>`_
|
||||
* Mar 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/>`_
|
||||
* Feb 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>`_
|
||||
* Oct 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>`_
|
||||
* Jun 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>`_
|
||||
* Jun 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>`_
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -44,142 +44,20 @@ Put ``appveyor.yml`` to the root directory of the GitHub repository.
|
||||
|
||||
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'
|
||||
|
||||
matrix:
|
||||
- PLATFORMIO_CI_SRC: "path\\to\\source\\file.c"
|
||||
- PLATFORMIO_CI_SRC: "path\\to\\source\\file.ino"
|
||||
- PLATFORMIO_CI_SRC: "path\\to\\source\\directory"
|
||||
|
||||
Then create ``scripts/appveyor`` folder and put these 2 scripts (they are the
|
||||
same for the all projects, don't need to modify them):
|
||||
install:
|
||||
- cmd: git submodule update --init --recursive
|
||||
- cmd: SET PATH=%PATH%;C:\Python27\Scripts
|
||||
- cmd: pip install -U platformio
|
||||
|
||||
1. ``scripts/appveyor/install.ps1``:
|
||||
test_script:
|
||||
- cmd: platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
|
||||
|
||||
.. 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.
|
||||
@ -194,20 +72,16 @@ Examples
|
||||
|
||||
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'
|
||||
|
||||
matrix:
|
||||
- PLATFORMIO_CI_SRC: "examples\\Bluetooth\\PS3SPP\\PS3SPP.ino"
|
||||
- PLATFORMIO_CI_SRC: "examples\\pl2303\\pl2303_gps\\pl2303_gps.ino"
|
||||
|
||||
install:
|
||||
- cmd: git submodule update --init --recursive
|
||||
- cmd: SET PATH=%PATH%;C:\Python27\Scripts
|
||||
- cmd: pip install -U platformio
|
||||
- cmd: git clone https://github.com/xxxajk/spi4teensy3.git C:\spi4teensy
|
||||
|
||||
test_script:
|
||||
- cmd: platformio ci --lib="." --lib="C:\\spi4teensy" --board=uno --board=teensy31 --board=due
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -82,7 +82,7 @@ Install dependent library using :ref:`librarymanager`
|
||||
# Install the latest stable PlatformIO
|
||||
- sudo pip install -U platformio
|
||||
|
||||
# OneWire Library with ID=1 http://platformio.org/#!/lib/show/1/OneWire
|
||||
# OneWire Library with ID=1 http://platformio.org/lib/show/1/OneWire
|
||||
- platformio lib install 1
|
||||
|
||||
test:
|
||||
@ -157,8 +157,8 @@ Examples
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/#!/lib/show/416/TinyGPS
|
||||
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
|
||||
# http://platformio.org/lib/show/416/TinyGPS
|
||||
# http://platformio.org/lib/show/417/SPI4Teensy3
|
||||
- platformio lib install 416 417
|
||||
|
||||
test:
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -50,7 +50,7 @@ Please fill all fields for your project in the Drone control panel:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
pip install -U platformio
|
||||
platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
|
||||
|
||||
.. image:: ../_static/droneci-platformio-integration-1.png
|
||||
@ -75,7 +75,7 @@ Examples
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
pip install -U platformio
|
||||
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
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -55,7 +55,7 @@ GitHub repository.
|
||||
- PLATFORMIO_CI_SRC=path/to/source/directory
|
||||
|
||||
install:
|
||||
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
- pip install -U platformio
|
||||
|
||||
script:
|
||||
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
|
||||
@ -81,7 +81,7 @@ Examples
|
||||
- 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)"
|
||||
- pip install -U platformio
|
||||
- wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
|
||||
- unzip /tmp/spi4teensy3.zip -d /tmp
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -105,8 +105,8 @@ Install dependent library using :ref:`librarymanager`
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/#!/lib/show/1/OneWire
|
||||
platformio lib install 1
|
||||
# http://platformio.org/lib/show/1/OneWire
|
||||
- platformio lib install 1
|
||||
|
||||
Manually download dependent library and include in build process via ``--lib`` option
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -117,8 +117,8 @@ Manually download dependent library and include in build process via ``--lib`` o
|
||||
- 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/
|
||||
- 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
|
||||
@ -137,8 +137,7 @@ PlatformIO allows to specify own build flags using :envvar:`PLATFORMIO_BUILD_FLA
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
|
||||
export PLATFORMIO_BUILD_FLAGS=-D GLOBAL_MACROS_FOR_ALL_TEST_ENV
|
||||
- export PLATFORMIO_BUILD_FLAGS="-D GLOBAL_MACROS_FOR_ALL_TEST_ENV"
|
||||
|
||||
|
||||
For the more details, please follow to
|
||||
@ -188,8 +187,8 @@ Examples
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/#!/lib/show/416/TinyGPS
|
||||
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
|
||||
# http://platformio.org/lib/show/416/TinyGPS
|
||||
# http://platformio.org/lib/show/417/SPI4Teensy3
|
||||
- platformio lib install 416 417
|
||||
|
||||
script:
|
||||
@ -247,10 +246,10 @@ Examples
|
||||
- "~/.platformio"
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=examples/TimeArduinoDue PLATFORMIO_CI_BOARDS_ARGS="--board=due"
|
||||
- PLATFORMIO_CI_SRC=examples/TimeArduinoDue PLATFORMIO_CI_EXTRA_ARGS="--board=due"
|
||||
- PLATFORMIO_CI_SRC=examples/TimeGPS
|
||||
- PLATFORMIO_CI_SRC=examples/TimeNTP
|
||||
- PLATFORMIO_CI_SRC=examples/TimeTeensy3 PLATFORMIO_CI_BOARDS_ARGS="--board=teensy31"
|
||||
- PLATFORMIO_CI_SRC=examples/TimeTeensy3 PLATFORMIO_CI_EXTRA_ARGS="--board=teensy31"
|
||||
# - ...
|
||||
|
||||
install:
|
||||
@ -260,11 +259,11 @@ Examples
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/#!/lib/show/416/TinyGPS
|
||||
# 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
|
||||
- platformio ci --lib="." --board=uno --board=teensy20pp $PLATFORMIO_CI_EXTRA_ARGS
|
||||
|
||||
* Configuration file: https://github.com/ivankravets/Time/blob/master/.travis.yml
|
||||
* Build History: https://travis-ci.org/ivankravets/Time
|
||||
|
@ -45,7 +45,7 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'PlatformIO'
|
||||
copyright = u'2014-2015, Ivan Kravets'
|
||||
copyright = u'2014-2016, 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
|
||||
@ -69,7 +69,7 @@ release = platformio.__version__
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
exclude_patterns = ['_build']
|
||||
exclude_patterns = ['_build', '**/*_extra.rst']
|
||||
|
||||
# The reST default role (used for this markup: `text`) to use for all
|
||||
# documents.
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -11,20 +11,25 @@
|
||||
|
||||
.. _demo:
|
||||
|
||||
Demo
|
||||
====
|
||||
Demo & Projects
|
||||
===============
|
||||
|
||||
.. contents::
|
||||
|
||||
Wiring Blink
|
||||
------------
|
||||
Project Examples
|
||||
----------------
|
||||
|
||||
Preconfigured demo projects are located in `PlatformIO GitHub <https://github.com/platformio/platformio-examples/tree/develop>`_ repository.
|
||||
|
||||
"Blink Project"
|
||||
---------------
|
||||
|
||||
.. 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>`_
|
||||
1. Source code of `Wiring Blink Example <https://github.com/platformio/platformio-examples/tree/develop/wiring-blink>`_
|
||||
2. :ref:`cmd_run` command
|
||||
3. :ref:`platformio run -t upload <cmd_run>` command.
|
||||
|
||||
@ -59,3 +64,15 @@ Used in demo
|
||||
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.
|
||||
|
||||
Over-the-Air update for ESP8266
|
||||
-------------------------------
|
||||
|
||||
.. image:: _static/platformio-demo-ota-esp8266.jpg
|
||||
:target: https://www.youtube.com/watch?v=lXchL3hpDO4
|
||||
|
||||
Used in demo
|
||||
~~~~~~~~~~~~
|
||||
|
||||
1. :ref:`cmd_run` command
|
||||
2. :ref:`platformio run -t upload <cmd_run>` command.
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -34,10 +34,20 @@ operations/commands.
|
||||
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.
|
||||
PlatformIO uses it to disable prompts and progress bars. In other words,
|
||||
``CI=true`` automatically setup :envvar:`PLATFORMIO_SETTING_ENABLE_PROMPTS` to
|
||||
``false`` and :envvar:`PLATFORMIO_DISABLE_PROGRESSBAR` to ``true``.
|
||||
|
||||
In other words, ``CI=true`` automatically setup
|
||||
:envvar:`PLATFORMIO_SETTING_ENABLE_PROMPTS=false <PLATFORMIO_SETTING_ENABLE_PROMPTS>`.
|
||||
.. envvar:: PLATFORMIO_FORCE_COLOR
|
||||
|
||||
Force to output color ANSI-codes even if the output is a ``pipe`` (not a ``tty``).
|
||||
The possible values are ``true`` and ``false``. Default is ``PLATFORMIO_FORCE_COLOR=false``.
|
||||
|
||||
.. envvar:: PLATFORMIO_DISABLE_PROGRESSBAR
|
||||
|
||||
Disable progress bar for package/library downloader and uploader. This is
|
||||
useful when calling PlatformIO from subprocess and output is a ``pipe`` (not a ``tty``).
|
||||
The possible values are ``true`` and ``false``. Default is ``PLATFORMIO_DISABLE_PROGRESSBAR=false``.
|
||||
|
||||
.. envvar:: PLATFORMIO_HOME_DIR
|
||||
|
||||
@ -55,14 +65,32 @@ Allows to override :ref:`projectconf` option :ref:`projectconf_pio_src_dir`.
|
||||
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_envs_dir`.
|
||||
|
||||
.. envvar:: PLATFORMIO_DATA_DIR
|
||||
|
||||
Builder
|
||||
-------
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_data_dir`.
|
||||
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
.. envvar:: PLATFORMIO_BUILD_FLAGS
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_build_flags`.
|
||||
|
||||
Examples:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# Unix:
|
||||
export PLATFORMIO_BUILD_FLAGS=-DFOO
|
||||
export PLATFORMIO_BUILD_FLAGS="-DFOO -DBAR=1 -DFLOAT_VALUE=1.23457e+07"
|
||||
export PLATFORMIO_BUILD_FLAGS="'-DWIFI_PASS=\"My password\"' '-DWIFI_SSID=\"My ssid name\"'"
|
||||
|
||||
# Windows:
|
||||
SET PLATFORMIO_BUILD_FLAGS=-DFOO
|
||||
SET PLATFORMIO_BUILD_FLAGS=-DFOO -DBAR=1 -DFLOAT_VALUE=1.23457e+07
|
||||
SET PLATFORMIO_BUILD_FLAGS='-DWIFI_PASS="My password"' '-DWIFI_SSID="My ssid name"'
|
||||
|
||||
.. envvar:: PLATFORMIO_SRC_BUILD_FLAGS
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_src_build_flags`.
|
||||
@ -76,6 +104,18 @@ Allows to set :ref:`projectconf` option :ref:`projectconf_src_filter`.
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_extra_script`.
|
||||
|
||||
|
||||
Uploading
|
||||
---------
|
||||
|
||||
.. envvar:: PLATFORMIO_UPLOAD_PORT
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_upload_port`.
|
||||
|
||||
.. envvar:: PLATFORMIO_UPLOAD_FLAGS
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_upload_flags`.
|
||||
|
||||
|
||||
Settings
|
||||
--------
|
||||
|
||||
|
99
docs/faq.rst
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -14,58 +14,24 @@
|
||||
Frequently Asked Questions
|
||||
==========================
|
||||
|
||||
.. note::
|
||||
We have a big database with `Frequently Asked Questions in our Community Forums <https://community.platformio.org/c/faq>`_.
|
||||
Please have a look at it.
|
||||
|
||||
.. contents::
|
||||
|
||||
General
|
||||
-------
|
||||
|
||||
.. _faq_what_is_platformio:
|
||||
|
||||
What is PlatformIO?
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
|
||||
development.
|
||||
Please refer to :ref:`what_is_pio`
|
||||
|
||||
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.
|
||||
What is ``.pioenvs`` directory
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
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.
|
||||
Please refer to :ref:`projectconf_pio_envs_dir`.
|
||||
|
||||
Command completion in Terminal
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@ -79,6 +45,7 @@ Bash completion for `platformio` subcommands you need to put into your `.bashrc`
|
||||
.. code-block:: bash
|
||||
|
||||
eval "$(_PLATFORMIO_COMPLETE=source platformio)"
|
||||
eval "$(_PLATFORMIO_COMPLETE=source pio)"
|
||||
|
||||
ZSH completion
|
||||
''''''''''''''
|
||||
@ -89,12 +56,18 @@ To enable ``zsh`` completion please run these commands:
|
||||
|
||||
autoload bashcompinit && bashcompinit
|
||||
eval "$(_PLATFORMIO_COMPLETE=source platformio)"
|
||||
eval "$(_PLATFORMIO_COMPLETE=source pio)"
|
||||
|
||||
.. note::
|
||||
|
||||
For permanent command completion you need to place commands above to
|
||||
``~/.bashrc`` or ``~/.zshrc`` file.
|
||||
|
||||
PlatformIO IDE
|
||||
--------------
|
||||
|
||||
Please refer to :ref:`PlatformIO IDE Frequently Asked Questions <ide_atom_faq>`.
|
||||
|
||||
.. _faq_troubleshooting:
|
||||
|
||||
Troubleshooting
|
||||
@ -103,30 +76,6 @@ Troubleshooting
|
||||
Installation
|
||||
~~~~~~~~~~~~
|
||||
|
||||
PlatformIO and SCons aren't installed properly
|
||||
''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Try these solutions:
|
||||
|
||||
1. Upgrade SCons via `pip <https://pip.pypa.io>`_
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
[sudo] pip uninstall scons
|
||||
[sudo] pip install scons
|
||||
|
||||
# or if you have "error: option --single-version-externally-managed not recognized"
|
||||
[sudo] pip install --egg scons
|
||||
|
||||
2. Install PlatformIO using :ref:`installation_installer_script`.
|
||||
|
||||
.. _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
|
||||
'''''''''''''''''''''''''''''''''
|
||||
|
||||
@ -139,8 +88,8 @@ Answered in `issue #252 <https://github.com/platformio/platformio/issues/252#iss
|
||||
|
||||
.. _faq_troubleshooting_pionotfoundinpath:
|
||||
|
||||
Program ``platformio`` not found in PATH
|
||||
''''''''''''''''''''''''''''''''''''''''
|
||||
Program "platformio" not found in PATH
|
||||
''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Where is ``platformio`` binary installed? Run this command in Terminal
|
||||
|
||||
@ -149,8 +98,7 @@ Where is ``platformio`` binary installed? Run this command in Terminal
|
||||
# for Unix
|
||||
which platformio
|
||||
echo $PATH
|
||||
|
||||
# for Windows OS
|
||||
Windows OS
|
||||
where platformio
|
||||
echo %PATH%
|
||||
|
||||
@ -158,8 +106,8 @@ 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,
|
||||
**Unix Users**: You can make "symlinks" from ``platformio`` program 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
|
||||
@ -223,3 +171,8 @@ 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>`_.
|
||||
|
@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present 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``
|
||||
@ -24,7 +35,7 @@ Boards
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by horizontal.
|
||||
|
||||
Armstrap
|
||||
@ -94,3 +105,12 @@ ST
|
||||
- 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
|
||||
|
||||
.. include:: cmsis_extra.rst
|
||||
|
25
docs/frameworks/cmsis_extra.rst
Normal file
@ -0,0 +1,25 @@
|
||||
.. Copyright 2014-2016 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
|
||||
--------
|
||||
|
||||
* Jan 11, 2016 - **David Mills, Ph.D.** - `STM NUCLEOF401RE TIMER IO <http://webshed.org/wiki/STM_NUCLEOF401RE_TIMER_IO>`_
|
||||
|
||||
See more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for CMSIS framework <https://github.com/platformio/platformio-examples/tree/develop/stm32>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/stm32/stm32-cmsis-blink>`_
|
@ -1,8 +1,19 @@
|
||||
.. Copyright 2014-present 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.
|
||||
Energia Wiring-based 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/>`_.
|
||||
|
||||
@ -27,7 +38,7 @@ Boards
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by horizontal.
|
||||
|
||||
TI
|
||||
@ -64,6 +75,13 @@ TI
|
||||
- 128 Kb
|
||||
- 1 Kb
|
||||
|
||||
* - ``lpmsp430fr4133``
|
||||
- `TI LaunchPad w/ msp430fr4133 <http://www.ti.com/tool/msp-exp430fr4133>`_
|
||||
- MSP430FR4133
|
||||
- 16 MHz
|
||||
- 16 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``lpmsp430fr5739``
|
||||
- `TI FraunchPad w/ msp430fr5739 <http://www.ti.com/tool/msp-exp430fr5739>`_
|
||||
- MSP430FR5739
|
||||
@ -78,6 +96,13 @@ TI
|
||||
- 64 Kb
|
||||
- 1 Kb
|
||||
|
||||
* - ``lpmsp430fr6989``
|
||||
- `TI LaunchPad w/ msp430fr6989 <http://www.ti.com/tool/msp-exp430fr6989>`_
|
||||
- MSP430FR6989
|
||||
- 16 MHz
|
||||
- 128 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``lpmsp430g2231``
|
||||
- `TI LaunchPad w/ msp430g2231 (1 MHz) <http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430g2.html>`_
|
||||
- MSP430G2231
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -22,4 +22,6 @@ Frameworks
|
||||
energia
|
||||
libopencm3
|
||||
mbed
|
||||
simba
|
||||
spl
|
||||
wiringpi
|
||||
|
@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present 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``
|
||||
@ -27,7 +38,7 @@ Boards
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by horizontal.
|
||||
|
||||
ST
|
||||
@ -104,3 +115,5 @@ TI
|
||||
- 120 MHz
|
||||
- 1024 Kb
|
||||
- 256 Kb
|
||||
|
||||
.. include:: libopencm3_extra.rst
|
||||
|
18
docs/frameworks/libopencm3_extra.rst
Normal file
@ -0,0 +1,18 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for libOpenCM3 framework <https://github.com/platformio/platformio-examples/tree/develop/stm32>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/stm32/stm32-opencm3-blink>`_
|
@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present 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``
|
||||
@ -16,6 +27,9 @@ Platforms
|
||||
* - Name
|
||||
- Description
|
||||
|
||||
* - :ref:`platform_atmelsam`
|
||||
- Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.
|
||||
|
||||
* - :ref:`platform_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.
|
||||
|
||||
@ -32,16 +46,90 @@ Platforms
|
||||
- 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.
|
||||
- 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 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>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by horizontal.
|
||||
|
||||
96Boards
|
||||
~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``b96b_f446ve``
|
||||
- `96Boards B96B-F446VE <https://developer.mbed.org/platforms/ST-B96B-F446VE/>`_
|
||||
- STM32F446VET6
|
||||
- 168 MHz
|
||||
- 512 Kb
|
||||
- 128 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
|
||||
|
||||
BBC
|
||||
~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``bbcmicrobit``
|
||||
- `BBC micro:bit <https://developer.mbed.org/platforms/Microbit/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 16 Kb
|
||||
|
||||
CQ Publishing
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
@ -198,6 +286,26 @@ JKSoft
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
MultiTech
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``mts_mdot_f411re``
|
||||
- `MultiTech mDot F411 <https://developer.mbed.org/platforms/MTS-mDot-F411/>`_
|
||||
- STM32F411RET6
|
||||
- 100 MHz
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
NGX Technologies
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
@ -250,7 +358,7 @@ NXP
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 64 Kb
|
||||
|
||||
Nordic
|
||||
~~~~~~
|
||||
@ -395,6 +503,13 @@ ST
|
||||
- 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
|
||||
@ -402,6 +517,13 @@ ST
|
||||
- 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
|
||||
@ -409,6 +531,20 @@ ST
|
||||
- 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
|
||||
@ -444,6 +580,13 @@ ST
|
||||
- 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
|
||||
@ -465,6 +608,13 @@ ST
|
||||
- 512 Kb
|
||||
- 96 Kb
|
||||
|
||||
* - ``nucleo_f410rb``
|
||||
- `ST Nucleo F410RB <https://developer.mbed.org/platforms/ST-Nucleo-F410RB/>`_
|
||||
- STM32F410RBT6
|
||||
- 100 MHz
|
||||
- 128 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``nucleo_f411re``
|
||||
- `ST Nucleo F411RE <https://developer.mbed.org/platforms/ST-Nucleo-F411RE/>`_
|
||||
- STM32F411RET6
|
||||
@ -486,6 +636,13 @@ ST
|
||||
- 64 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``nucleo_l073rz``
|
||||
- `ST Nucleo L073RZ <https://developer.mbed.org/platforms/ST-Nucleo-L073RZ/>`_
|
||||
- STM32L073RZ
|
||||
- 32 MHz
|
||||
- 192 Kb
|
||||
- 20 Kb
|
||||
|
||||
* - ``nucleo_l152re``
|
||||
- `ST Nucleo L152RE <https://developer.mbed.org/platforms/ST-Nucleo-L152RE/>`_
|
||||
- STM32L152RET6
|
||||
@ -493,6 +650,13 @@ ST
|
||||
- 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
|
||||
~~~~~~~~~~~
|
||||
|
||||
@ -506,6 +670,13 @@ SeeedStudio
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``seeedArchMax``
|
||||
- `SeeedStudio Arch Max <https://developer.mbed.org/platforms/Seeed-Arch-Max/>`_
|
||||
- STM32F407VET6
|
||||
- 168 MHz
|
||||
- 512 Kb
|
||||
- 192 Kb
|
||||
|
||||
* - ``seeedTinyBLE``
|
||||
- `SeeedStudio Seeed Tiny BLE <http://developer.mbed.org/platforms/Seeed-Tiny-BLE/>`_
|
||||
- NRF51822
|
||||
@ -518,7 +689,7 @@ SeeedStudio
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 64 Kb
|
||||
|
||||
Silicon Labs
|
||||
~~~~~~~~~~~~
|
||||
@ -554,6 +725,13 @@ Silicon Labs
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``efm32pg_stk3401``
|
||||
- `Silicon Labs SLSTK3401A (Pearl Gecko) <https://developer.mbed.org/platforms/EFM32-Pearl-Gecko/>`_
|
||||
- EFM32PG1B200F256
|
||||
- 40 MHz
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``efm32wg_stk3800``
|
||||
- `Silicon Labs EFM32WG-STK3800 (Wonder Gecko) <https://developer.mbed.org/platforms/EFM32-Wonder-Gecko/>`_
|
||||
- EFM32WG990F256
|
||||
@ -629,7 +807,7 @@ Teensy
|
||||
- RAM
|
||||
|
||||
* - ``teensy31``
|
||||
- `Teensy 3.1 <https://www.pjrc.com/store/teensy31.html>`_
|
||||
- `Teensy 3.1 / 3.2 <https://www.pjrc.com/store/teensy31.html>`_
|
||||
- MK20DX256
|
||||
- 72 MHz
|
||||
- 256 Kb
|
||||
@ -653,4 +831,6 @@ u-blox
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 64 Kb
|
||||
|
||||
.. include:: mbed_extra.rst
|
||||
|
32
docs/frameworks/mbed_extra.rst
Normal file
@ -0,0 +1,32 @@
|
||||
.. Copyright 2014-2016 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
|
||||
--------
|
||||
|
||||
* Dec 15, 2015 - **stastaka** - `PlatformIOでカスタムボードを使う (Use a custom board for PlatformIO, Japanese) <http://qiita.com/stastaka/items/a6a50dbbb2933bd78bdd>`_
|
||||
* 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>`_
|
||||
* 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>`_
|
||||
|
||||
See more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for MBED framework <https://github.com/platformio/platformio-examples/tree/develop/mbed>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/mbed/mbed-blink>`_
|
||||
* `DSP <https://github.com/platformio/platformio-examples/tree/develop/mbed/mbed-dsp>`_
|
||||
* `HTTP Client <https://github.com/platformio/platformio-examples/tree/develop/mbed/mbed-http-client>`_
|
||||
* `RTOS <https://github.com/platformio/platformio-examples/tree/develop/mbed/mbed-rtos>`_
|
||||
* `Serial <https://github.com/platformio/platformio-examples/tree/develop/mbed/mbed-serial>`_
|
169
docs/frameworks/simba.rst
Normal file
@ -0,0 +1,169 @@
|
||||
.. Copyright 2014-present 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_simba:
|
||||
|
||||
Framework ``simba``
|
||||
===================
|
||||
Simba is an RTOS and build framework. It aims to make embedded programming easy and portable.
|
||||
|
||||
For more detailed information please visit `vendor site <http://simba-os.readthedocs.org>`_.
|
||||
|
||||
.. contents::
|
||||
|
||||
Platforms
|
||||
---------
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Name
|
||||
- Description
|
||||
|
||||
* - :ref:`platform_atmelavr`
|
||||
- Atmel AVR 8- and 32-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industrys most code-efficient architecture for C and assembly programming.
|
||||
|
||||
* - :ref:`platform_atmelsam`
|
||||
- Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.
|
||||
|
||||
* - :ref:`platform_espressif`
|
||||
- Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.
|
||||
|
||||
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
|
||||
|
||||
* - ``huzzah``
|
||||
- `Adafruit HUZZAH ESP8266 <https://www.adafruit.com/products/2471>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
Arduino
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``due``
|
||||
- `Arduino Due (Programming Port) <http://www.arduino.org/products/boards/4-arduino-boards/arduino-due>`_
|
||||
- SAM3X8E
|
||||
- 84 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``megaatmega2560``
|
||||
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://www.arduino.org/products/boards/4-arduino-boards/arduino-mega-2560>`_
|
||||
- ATMEGA2560
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``nanoatmega328``
|
||||
- `Arduino Nano ATmega328 <http://www.arduino.org/products/boards/4-arduino-boards/arduino-nano>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``uno``
|
||||
- `Arduino Uno <http://www.arduino.org/products/boards/4-arduino-boards/arduino-uno>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
Espressif
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``esp01``
|
||||
- `Espressif Generic ESP8266 ESP-01 512k <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 512 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp01_1m``
|
||||
- `Espressif Generic ESP8266 ESP-01 1M <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 1024 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp12e``
|
||||
- `Espressif ESP8266 ESP-12E <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
NodeMCU
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``nodemcu``
|
||||
- `NodeMCU 0.9 (ESP-12 Module) <http://www.nodemcu.com/>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``nodemcuv2``
|
||||
- `NodeMCU 1.0 (ESP-12E Module) <http://www.nodemcu.com/>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
.. include:: simba_extra.rst
|
18
docs/frameworks/simba_extra.rst
Executable file
@ -0,0 +1,18 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for Simba framework <https://github.com/platformio/platformio-examples/tree/develop/examples/simba>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/simba/blink>`_
|
@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present 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``
|
||||
@ -24,7 +35,7 @@ Boards
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by horizontal.
|
||||
|
||||
Armstrap
|
||||
@ -94,3 +105,12 @@ ST
|
||||
- 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
|
||||
|
||||
.. include:: spl_extra.rst
|
||||
|
18
docs/frameworks/spl_extra.rst
Normal file
@ -0,0 +1,18 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for SPL framework <https://github.com/platformio/platformio-examples/tree/develop/stm32>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/stm32/stm32-spl-blink>`_
|
75
docs/frameworks/wiringpi.rst
Normal file
@ -0,0 +1,75 @@
|
||||
.. Copyright 2014-present 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
|
||||
|
||||
.. include:: wiringpi_extra.rst
|
19
docs/frameworks/wiringpi_extra.rst
Normal file
@ -0,0 +1,19 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for WiringPi framework <https://github.com/platformio/platformio-examples/tree/develop/raspberrypi>`_.
|
||||
|
||||
* `Blink <https://github.com/platformio/platformio-examples/tree/develop/raspberrypi/wiringpi-blink>`_
|
||||
* `Serial <https://github.com/platformio/platformio-examples/tree/develop/raspberrypi/wiringpi-serial>`_
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -17,11 +17,12 @@ IDE Integration
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
ide/arduino
|
||||
ide/atom
|
||||
ide/clion
|
||||
ide/codeblocks
|
||||
ide/eclipse
|
||||
ide/energia
|
||||
ide/emacs
|
||||
ide/netbeans
|
||||
ide/qtcreator
|
||||
ide/sublimetext
|
||||
ide/vim
|
||||
|
31
docs/ide/_platformio_ide_extra.rst
Normal file
@ -0,0 +1,31 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
.. note::
|
||||
We are proud to present our official `PlatformIO IDE <http://platformio.org/platformio-ide>`_ -
|
||||
The next-generation integrated development environment for IoT.
|
||||
|
||||
* Cross-platform build system without external dependencies to the OS software:
|
||||
|
||||
- 250+ embedded boards
|
||||
- 20+ development platforms
|
||||
- 10+ frameworks
|
||||
|
||||
* C/C++ Intelligent code completion
|
||||
* C/C++ Smart code linter for super-fast coding
|
||||
* Library Manager for the hundreds popular libraries
|
||||
* Multi-projects workflow with multiple panes
|
||||
* Multiple panes
|
||||
* Themes support with dark and light colors
|
||||
* Serial Port Monitor
|
||||
* Built-in Terminal with :ref:`PlatformIO CLI <userguide>` tool (``pio``, ``platformio``)
|
||||
|
||||
`Install PlatformIO IDE <http://platformio.org/platformio-ide>`_.
|
@ -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
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -11,47 +11,478 @@
|
||||
|
||||
.. _ide_atom:
|
||||
|
||||
Atom
|
||||
====
|
||||
PlatformIO IDE for 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.
|
||||
PlatformIO IDE is the next-generation integrated development environment for IoT:
|
||||
|
||||
This software can be used with:
|
||||
* Cross-platform build system without external dependencies to the OS software:
|
||||
|
||||
* all available :ref:`platforms`
|
||||
* all available :ref:`frameworks`
|
||||
- 250+ embedded boards
|
||||
- 20+ development platforms
|
||||
- 10+ frameworks
|
||||
|
||||
Refer to the `Atom Documentation <https://atom.io/docs>`_
|
||||
page for more detailed information.
|
||||
* C/C++ Intelligent Code Completion
|
||||
* C/C++ Smart Code Linter for rapid professional development
|
||||
* Library Manager for the hundreds popular libraries
|
||||
* Multi-projects workflow with multiple panes
|
||||
* Themes support with dark and light colors
|
||||
* Serial Port Monitor
|
||||
* Built-in Terminal with :ref:`PlatformIO CLI <userguide>` tool (``pio``, ``platformio``)
|
||||
|
||||
|
||||
PlatformIO IDE is based on GitHub's `Atom <https://atom.io>`_ source
|
||||
code 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.
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
Installation
|
||||
------------
|
||||
|
||||
PlatformIO IDE is the next-generation integrated development environment for IoT.
|
||||
It's built on top of `GitHub's Atom "hackable" text editor <https://atom.io>`_.
|
||||
If you have already Atom installed, please install `PlatformIO IDE for Atom package <https://atom.io/packages/platformio-ide>`_.
|
||||
|
||||
.. note::
|
||||
You don't need to install PlatformIO CLI seprately to system.
|
||||
PlatformIO CLI is built into PlatformIO IDE and you will be able to use it
|
||||
within PlatformIO IDE Terminal.
|
||||
|
||||
1. Python Interpreter
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE is based on PlatformIO CLI which is written in
|
||||
`Python <https://www.python.org/downloads/>`_. Python is installed by default
|
||||
on the all popular OS except Windows.
|
||||
|
||||
**Windows Users**, 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, otherwise ``python`` command will not be available.
|
||||
|
||||
.. image:: ../_static/python-installer-add-path.png
|
||||
|
||||
.. _ide_atom_installation_clang:
|
||||
|
||||
2. Clang for Intelligent Code Autocompletion
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE uses `clang <http://clang.llvm.org>`_ for the Intelligent Code Autocompletion.
|
||||
To check that ``clang`` is available in your system, please open
|
||||
Terminal and run ``clang --version``. If ``clang`` is not installed, then install it:
|
||||
|
||||
- **Mac OS X**: `Install the latest Xcode <https://developer.apple.com/xcode/download/>`_
|
||||
along with the latest Command Line Tools
|
||||
(they are installed automatically when you run ``clang`` in Terminal for the
|
||||
first time, or manually by running ``xcode-select --install``
|
||||
- **Windows**: Download the latest `Clang for Windows <http://llvm.org/releases/download.html>`_.
|
||||
Please select "Add LLVM to the system PATH" option on the installation step.
|
||||
|
||||
.. image:: ../_static/clang-installer-add-path.png
|
||||
|
||||
- **Linux**: Using package managers: ``apt-get install clang`` or ``yum install clang``.
|
||||
- **Other Systems**: Download the latest `Clang for the other systems <http://llvm.org/releases/download.html>`_.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added/installed after initializing process will
|
||||
not be reflected in code linter. You need ``Menu: PlatformIO >
|
||||
Rebuild C/C++ Project Index (Autocomplete, Linter)``.
|
||||
|
||||
3. IDE Installation
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. note::
|
||||
If you don't have Atom installed yet, we propose to download
|
||||
`PlatformIO IDE for Atom bundle <http://platformio.org/platformio-ide>`_
|
||||
with built-in auto installer (optional).
|
||||
|
||||
- Download and install the `latest official Atom text editor <https://atom.io>`_.
|
||||
- Open Atom Package Manager and install `platformio-ide <https://atom.io/packages/platformio-ide>`_
|
||||
Atom package (be patient and let the installation complete)
|
||||
|
||||
- **Mac OS X**: ``Menu: Atom > Preferences > Install``
|
||||
- **Windows**: ``Menu: File > Settings > Install``
|
||||
- **Linux**: ``Menu: Edit > Preferences > Install``
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-install.png
|
||||
|
||||
.. _atom_ide_quickstart:
|
||||
|
||||
Quick Start
|
||||
-----------
|
||||
|
||||
Using `Atom Packages <https://atom.io/docs/v1.0.2/using-atom-atom-packages>`_
|
||||
please install `platomformio <https://atom.io/packages/platomformio>`_ package.
|
||||
This tutorial introduces you to the basics of PlatformIO IDE workflow and shows
|
||||
you a creation process of a simple "Blink" example. After finishing you will
|
||||
have a general understanding of how to work with projects in the IDE.
|
||||
|
||||
Launch
|
||||
~~~~~~
|
||||
|
||||
After installation, you launch PlatformIO IDE by opening Atom. Once Atom is
|
||||
open, PlatformIO IDE auto installer will continue to install dependent packages
|
||||
and PlatformIO CLI. Please be patient and let the installation complete. In the
|
||||
final result PlatformIO IDE will ask you to reload Atom window to apply
|
||||
installed components. Please click on ``Reload Now``. After it PlatformIO IDE is
|
||||
ready for using. Happy coding!
|
||||
|
||||
Setting Up the Project
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
1. To create a new project choose
|
||||
``Menu: PlatformIO > Initialize new Project or update existing`` or press
|
||||
the corresponding icon in the PlatformIO toolbar as shown in the image below:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-1.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-1.png
|
||||
|
||||
2. In the "New Project Menu" choose desired boards (more than one board is
|
||||
allowed) and select a project directory. Then press "Initialize" button:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-2.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-2.png
|
||||
|
||||
3. If everything is fine, you should see the success message and project tree
|
||||
in the left panel:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-3.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-3.png
|
||||
|
||||
4. Now, let's create the first project source file: right-click on the folder
|
||||
``src`` and choose ``New File``:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-4.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-4.png
|
||||
|
||||
Enter filename ``main.cpp``:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-5.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-5.png
|
||||
|
||||
Copy the next source code to the just created file ``main.cpp``:
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
/**
|
||||
* Blink
|
||||
* Turns on an LED on for one second,
|
||||
* then off for one second, repeatedly.
|
||||
*/
|
||||
#include "Arduino.h"
|
||||
|
||||
void setup()
|
||||
{
|
||||
// initialize LED digital pin as an output.
|
||||
pinMode(LED_BUILTIN, OUTPUT);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
// turn the LED on (HIGH is the voltage level)
|
||||
digitalWrite(LED_BUILTIN, HIGH);
|
||||
// wait for a second
|
||||
delay(1000);
|
||||
// turn the LED off by making the voltage LOW
|
||||
digitalWrite(LED_BUILTIN, LOW);
|
||||
// wait for a second
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
Process Project
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE proposes different ways to process project (build, clean,
|
||||
upload firmware, run other targets) using:
|
||||
|
||||
- :ref:`atom_ide_platformio_toolbar`
|
||||
- :ref:`atom_ide_platformio_menu`
|
||||
- :ref:`ide_atom_building_targets` and hotkeys
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-6.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-6.png
|
||||
|
||||
5. Run ``Build`` and you should see green "success" result in the building
|
||||
panel:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-7.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-7.png
|
||||
|
||||
To upload firmware to the board run ``Upload``.
|
||||
|
||||
6. What is more, you can run specific target or process project environment
|
||||
using ``Menu: PlatformIO > Run other target...``
|
||||
or call targets list from the status bar (bottom, left corner):
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-8.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-8.png
|
||||
|
||||
And select desired target:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-9.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-9.png
|
||||
|
||||
7. To run built-in terminal interface choose ``Menu: PlatformIO > Terminal`` or
|
||||
press the corresponding icon in the PlatformIO toolbar:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-10.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-10.png
|
||||
|
||||
It provides you fast access to all set of powerful PlatformIO CLI commands:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-11.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-11.png
|
||||
|
||||
8. To run built-in "Serial Monitor" choose ``Menu: PlatformIO > Serial Monitor``
|
||||
or press the corresponding icon in the PlatformIO toolbar:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-12.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-12.png
|
||||
|
||||
It has several settings to adjust your connection:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-13.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-13.png
|
||||
|
||||
And allows you to communicate with your board in an easy way:
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-quick-start-14.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-atom-platformio-quick-start-14.png
|
||||
|
||||
|
||||
User Guide
|
||||
----------
|
||||
|
||||
.. _atom_ide_platformio_menu:
|
||||
|
||||
Menu item ``PlatformIO``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
`platformio-ide <https://atom.io/packages/platformio-ide>`_ package adds to Atom
|
||||
new menu item named ``Menu: PlatformIO`` (after ``Menu: Help`` item).
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-menu-item.png
|
||||
|
||||
.. _atom_ide_platformio_toolbar:
|
||||
|
||||
PlatformIO Toolbar
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE Toolbar contains the quick access button to the popular commands.
|
||||
Each button contains hint (delay mouse on it).
|
||||
|
||||
.. image:: ../_static/ide-atom-platformio-toolbar.png
|
||||
|
||||
* PlatformIO: Build
|
||||
* PlatformIO: Upload
|
||||
* PlatformIO: Clean
|
||||
* ||
|
||||
* Initialize new PlatformIO Project or update existing...
|
||||
* Add/Open Project Folder...
|
||||
* Find in Project...
|
||||
* ||
|
||||
* Terminal
|
||||
* Library Manager
|
||||
* Serial Monitor
|
||||
* ||
|
||||
* Settings
|
||||
* PlatformIO Documentation
|
||||
|
||||
.. _ide_atom_building_targets:
|
||||
|
||||
Building / Uploading / Targets
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* ``cmd-alt-b`` / ``ctrl-alt-b`` / ``f9`` builds project without auto-uploading.
|
||||
* ``cmd-alt-u`` / ``ctrl-alt-u`` builds and uploads (if no errors).
|
||||
* ``cmd-alt-c`` / ``ctrl-alt-c`` cleans compiled objects.
|
||||
* ``cmd-alt-t`` / ``ctrl-alt-t`` / ``f7`` run other targets (Upload using Programmer, Upload SPIFFS image, Update platforms and libraries).
|
||||
* ``cmd-alt-g`` / ``ctrl-alt-g`` / ``f4`` cycles through causes of build error.
|
||||
* ``cmd-alt-h`` / ``ctrl-alt-h`` / ``shift-f4`` goes to the first build error.
|
||||
* ``cmd-alt-v`` / ``ctrl-alt-v`` / ``f8`` toggles the build panel.
|
||||
* ``escape`` terminates build / closes the build window.
|
||||
|
||||
More options ``Menu: PlatformIO > Settings > Build``.
|
||||
|
||||
Intelligent Code Autocompletion
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE uses `clang <http://clang.llvm.org>`_ for the Intelligent Code Autocompletion.
|
||||
To install it or check if it is already installed, please follow to step
|
||||
:ref:`ide_atom_installation_clang` from Installation guide.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added/installed after initializing process will
|
||||
not be reflected in code linter. You need ``Menu: PlatformIO >
|
||||
Rebuild C/C++ Project Index (Autocomplete, Linter)``.
|
||||
|
||||
.. _ide_atom_smart_code_linter:
|
||||
|
||||
Smart Code Linter
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE uses PlatformIO's pre-built GCC toolchains for Smart Code Linter
|
||||
and rapid professional development.
|
||||
The configuration data are located in ``.gcc-flags.json``. This file will be
|
||||
automatically created and preconfigured when you initialize project using
|
||||
``Menu: PlatformIO > Initialize new PlatformIO Project or update existing...``.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added/installed after initializing process will
|
||||
not be reflected in code linter. You need ``Menu: PlatformIO >
|
||||
Rebuild C/C++ Project Index (Autocomplete, Linter)``.
|
||||
|
||||
|
||||
.. error::
|
||||
If you have error like ``linter-gcc: Executable not found`` and
|
||||
``"***/.platformio/packages/toolchain-atmelavr/bin/avr-g++" not found``
|
||||
please ``Menu: PlatformIO > Initialize new PlatformIO Project or update existing...``.
|
||||
|
||||
Install Shell Commands
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
To install ``platformio`` and ``pio`` shell commands please use ``Menu:
|
||||
PlatformIO > Install Shell Commands``. It will allow you to call PlatformIO from
|
||||
other process, terminal and etc.
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
Smart Code Linter is disabled for Arduino files
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
:ref:`ide_atom_smart_code_linter` is disabled by default for Arduino files
|
||||
(``*.ino`` and ``.pde``) because they are not valid C/C++ based
|
||||
source files:
|
||||
|
||||
1. Missing includes such as ``#include <Arduino.h>``
|
||||
2. Function declarations are omitted.
|
||||
|
||||
There are two solutions:
|
||||
|
||||
.. contents::
|
||||
:local:
|
||||
|
||||
.. _ide_atom_knownissues_sclarduino_manually:
|
||||
|
||||
Convert Arduino file to C++ manually
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
For example, we have the next ``Demo.ino`` file:
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
void function setup () {
|
||||
someFunction(13);
|
||||
}
|
||||
|
||||
void function loop() {
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
void someFunction(int num) {
|
||||
}
|
||||
|
||||
Let's convert it to ``Demo.cpp``:
|
||||
|
||||
1. Add ``#include <Arduino.h>`` at the top of the source file
|
||||
2. Declare each custom function (excluding built-in, such as ``setup`` and ``loop``)
|
||||
before it will be called.
|
||||
|
||||
The final ``Demo.cpp``:
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
#include <Arduino.h>
|
||||
|
||||
void someFunction(int num);
|
||||
|
||||
void function setup () {
|
||||
someFunction(13);
|
||||
}
|
||||
|
||||
void function loop() {
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
void someFunction(int num) {
|
||||
}
|
||||
|
||||
Force Arduino file as C++
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
To force Smart Code Linter to use Arduino files as C++ please
|
||||
|
||||
1. Open ``.gcc-flags.json`` file from the Initialized/Imported project and add
|
||||
``-x c++`` flag at the beginning of the value of ``gccDefaultCppFlags`` field:
|
||||
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"execPath": "...",
|
||||
"gccDefaultCFlags": "...",
|
||||
"gccDefaultCppFlags": "-x c++ -fsyntax-only ...",
|
||||
"gccErrorLimit": 15,
|
||||
"gccIncludePaths": "...",
|
||||
"gccSuppressWarnings": false
|
||||
}
|
||||
|
||||
2. Perform all steps from :ref:`ide_atom_knownissues_sclarduino_manually`
|
||||
(without renaming to ``.cpp``).
|
||||
|
||||
.. _ide_atom_faq:
|
||||
|
||||
Frequently Asked Questions
|
||||
--------------------------
|
||||
|
||||
Keep build panel visible
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO IDE hides build panel on success by default. Nevertheless, you can
|
||||
keep it visible all time. Please follow to
|
||||
``Menu: PlatformIO > Settings > Build`` and set ``Panel Visibility`` to
|
||||
``Keep Visible``.
|
||||
|
||||
Key-bindings (toggle panel):
|
||||
|
||||
* ``cmd+alt+v`` - Mac OS X
|
||||
* ``ctrl+alt+v`` - Windows/Linux
|
||||
|
||||
Automatically save on build
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you want automatically save all edited files when triggering a build, please follow to
|
||||
``Menu: PlatformIO > Settings > Build`` and check ``Automatically save on build``.
|
||||
|
||||
Jump to Declaration
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Click on a function/include, press ``F3`` and you will be taken directly to
|
||||
the declaration for that function.
|
||||
|
||||
Code Formatting
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
You need to install `atom-beautify <https://atom.io/packages/atom-beautify>`_
|
||||
package and `C/C++ Uncrustify Code Beautifier <http://sourceforge.net/projects/uncrustify/>`_.
|
||||
|
||||
Articles / Manuals
|
||||
------------------
|
||||
|
||||
* `Arduino Development in Atom Editor <http://viget.com/extend/arduino-development-in-atom-editor>`_
|
||||
* May 30, 2016 - **Ron Moerman** - `IoT Development with PlatformIO <https://electronicsworkbench.io/blog/platformio>`_
|
||||
* May 01, 2016 - **Pedro Minatel** - `PlatformIO – Uma alternativa ao Arduino IDE (PlatformIO - An alternative to the Arduino IDE, Portuguese) <http://pedrominatel.com.br/ferramentas/platformio-uma-alternativa-ao-arduino-ide/>`_
|
||||
* Apr 23, 2016 - **Al Williams** - `Hackaday: Atomic Arduino (and Other) Development <http://hackaday.com/2016/04/23/atomic-arduino-and-other-development/>`_
|
||||
* Apr 16, 2016 - **Sathittham Sangthong** - `[PlatformIO] มาลองเล่น PlatformIO แทน Arduino IDE กัน (Let's play together with PlatformIO IDE [alternative to Arduino IDE], Thai) <http://www.sathittham.com/platformio/platformio-ide/>`_
|
||||
* Apr 11, 2016 - **Matjaz Trcek** - `Top 5 Arduino integrated development environments <https://codeandunicorns.com/top-5-arduino-integrated-development-environments-ide/>`_
|
||||
* Apr 06, 2016 - **Aleks** - `PlatformIO ausprobiert (Tried PlatformIO, German) <http://5volt-junkie.net/platformio/>`_
|
||||
* Apr 02, 2016 - **Diego Pinto** - `Você tem coragem de abandonar a IDE do Arduino? PlatformIO + Atom (Do you dare to leave the Arduino IDE? PlatformIO + Atom, Portuguese) <http://www.clubemaker.com.br/?rota=artigo/81>`_
|
||||
* Mar 30, 2016 - **Brandon Cannaday** - `Getting Started with PlatformIO and ESP8266 NodeMcu <https://www.getstructure.io/blog/getting-started-with-platformio-esp8266-nodemcu>`_
|
||||
* Mar 12, 2016 - **Peter Marks** - `PlatformIO, the Arduino IDE for programmers <http://blog.marxy.org/2016/03/platformio-arduino-ide-for-programmers.html>`_
|
||||
* Mar 05, 2016 - **brichacek.net** - `PlatformIO – otevřený ekosystém pro vývoj IoT (PlatformIO – an open source ecosystem for IoT development, Czech) <http://blog.brichacek.net/platformio-otevreny-ekosystem-pro-vyvoj-iot/>`_
|
||||
* Mar 04, 2016 - **Ricardo Vega** - `Programa tu Arduino desde Atom (Program your Arduino from Atom, Spanish) <http://ricveal.com/blog/programa-arduino-desde-atom/>`_
|
||||
* Feb 28, 2016 - **Alex Bloggt** - `PlatformIO vorgestellt (Introduction to PlatformIO IDE, German) <https://alexbloggt.com/platformio-vorgestellt/>`_
|
||||
* Feb 25, 2016 - **NutDIY** - `PlatformIO Blink On Nodemcu Dev Kit V1.0 (Thai) <http://nutdiy.blogspot.com/2016/02/platformio-blink-on-nodemcu-dev-kit-v10.html>`_
|
||||
|
||||
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
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -20,42 +20,43 @@ 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/>`_
|
||||
Refer to the `CLion Documentation <https://www.jetbrains.com/clion/documentation/>`_
|
||||
page for more detailed information.
|
||||
|
||||
.. image:: ../_static/ide-platformio-clion.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-clion.png
|
||||
|
||||
.. 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:
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide clion --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide clion --board uno
|
||||
|
||||
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``.
|
||||
3. Build project (*DO NOT RUN*): ``Menu: Run > Build``.
|
||||
|
||||
There are 3 predefined targets for building:
|
||||
There are 6 predefined targets for building (*NOT FOR RUNNING*, see marks on
|
||||
the screenshot below):
|
||||
|
||||
* ``PLATFORMIO_BUILD`` - build project without auto-uploading
|
||||
* ``PLATFORMIO_UPLOAD`` - build and upload (if no errors)
|
||||
* ``PLATFORMIO_CLEAN`` - clean compiled objects and etc.
|
||||
* ``PLATFORMIO_BUILD`` - Build project without auto-uploading
|
||||
* ``PLATFORMIO_UPLOAD`` - Build and upload (if no errors).
|
||||
* ``PLATFORMIO_CLEAN`` - Clean compiled objects.
|
||||
* ``PLATFORMIO_PROGRAM`` - Build and upload using external programmer (if no errors), see :ref:`atmelavr_upload_via_programmer`.
|
||||
* ``PLATFORMIO_UPLOADFS`` - Upload files to file system SPIFFS, see :ref:`platform_espressif_uploadfs`.
|
||||
* ``PLATFORMIO_UPDATE`` - Update installed platforms and libraries via :ref:`cmd_update`.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added, installed or used in the project
|
||||
@ -72,7 +73,7 @@ There are 3 predefined targets for building:
|
||||
(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>`_.
|
||||
convert it manually to ``*.cpp``. See `project example <https://github.com/platformio/platformio-examples/tree/develop/ide/clion>`_.
|
||||
|
||||
More info `CLion issue #CPP-3977 <https://youtrack.jetbrains.com/issue/CPP-3977>`_.
|
||||
Active discussion is located in
|
||||
@ -81,16 +82,11 @@ There are 3 predefined targets for building:
|
||||
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/>`_
|
||||
* 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/>`_
|
||||
* 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/>`_
|
||||
|
||||
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
|
||||
See more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
@ -98,4 +94,4 @@ Examples
|
||||
"Blink" Project
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Source code of `CLion "Blink" Project <https://github.com/platformio/platformio/tree/develop/examples/ide/clion>`_.
|
||||
Source code of `CLion "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/clion>`_.
|
||||
|
54
docs/ide/codeblocks.rst
Normal file
@ -0,0 +1,54 @@
|
||||
.. Copyright 2014-2016 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_codeblocks:
|
||||
|
||||
CodeBlocks
|
||||
==========
|
||||
|
||||
Code::Blocks is a free, open-source cross-platform IDE that supports multiple
|
||||
compilers including GCC, Clang and Visual C++. It is developed in C++ using
|
||||
wxWidgets as the GUI toolkit. Using a plugin architecture, its capabilities
|
||||
and features are defined by the provided plugins. Currently, Code::Blocks is
|
||||
oriented towards C, C++, and Fortran.
|
||||
|
||||
CodeBlocks IDE can be downloaded from `here <http://www.codeblocks.org/downloads>`_.
|
||||
|
||||
.. image:: ../_static/ide-platformio-codeblocks.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-platformio-codeblocks.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide codeblocks --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide codeblocks --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Open this project via ``Menu: File > Open...``
|
||||
2. Add new files to ``src`` directory (``*.c, *.cpp, *.ino, etc.``) via
|
||||
``Menu: File > New > File...``
|
||||
3. Build project using ``Menu: Build > Build``
|
||||
4. Upload firmware using ``Menu: Build > Run``
|
||||
|
||||
.. 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).
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -24,59 +24,75 @@ 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.
|
||||
|
||||
.. image:: ../_static/ide-platformio-eclipse.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-eclipse.png
|
||||
|
||||
.. 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:
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide eclipse --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide eclipse --board uno
|
||||
|
||||
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``.
|
||||
3. Build project using ``Menu: Project > Build Project`` or preconfigured
|
||||
Make Targets (see screenshot below):
|
||||
|
||||
+ ``PlatformIO: Build`` - Build project without auto-uploading
|
||||
+ ``PlatformIO: Clean`` - Clean compiled objects.
|
||||
+ ``PlatformIO: Upload`` - Build and upload (if no errors)
|
||||
+ ``PlatformIO: Upload using Programmer`` see :ref:`atmelavr_upload_via_programmer`
|
||||
+ ``PlatformIO: Upload SPIFFS image`` see :ref:`platform_espressif_uploadfs`
|
||||
+ ``PlatformIO: Update platforms and libraries`` - Update installed platforms and libraries via :ref:`cmd_update`.
|
||||
|
||||
If you have some problems with unresolved includes, defines, etc., then
|
||||
|
||||
* Restart Eclipse IDE
|
||||
* Rebuild index using ``Menu: Project > C/C++ Index > Rebuild``.
|
||||
|
||||
.. 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).
|
||||
|
||||
Live Integration
|
||||
----------------
|
||||
|
||||
Eclipse Virtual IoT Meetup: `PlatformIO: a cross-platform IoT solution to build them all! <http://www.meetup.com/Virtual-IoT/events/229964142/>`_
|
||||
|
||||
.. image:: ../_static/ide-eclipse-virtualiot.jpg
|
||||
:target: https://www.youtube.com/watch?v=6t7UbX812Yw
|
||||
|
||||
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/>`_
|
||||
* May 05, 2016 - **Ivan Kravets, Ph.D. / Eclipse Virtual IoT Meetup** - `PlatformIO: a cross-platform IoT solution to build them all! <http://www.meetup.com/Virtual-IoT/events/229964142/>`_
|
||||
* 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>`_
|
||||
* Jul 11, 2015 - **TrojanC** - `Learning Arduino GitHub Repository <http://www.trojanc.co.za/2015/07/11/learning-arduino-github-repository/>`_
|
||||
* 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>`_
|
||||
|
||||
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>`_.
|
||||
Source code of `Eclipse "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/eclipse>`_.
|
||||
|
68
docs/ide/emacs.rst
Normal file
@ -0,0 +1,68 @@
|
||||
.. Copyright 2014-2016 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_emacs:
|
||||
|
||||
Emacs
|
||||
=====
|
||||
|
||||
GNU Emacs is an extensible, customizable text editor - and more. At its core is
|
||||
an interpreter for Emacs Lisp, a dialect of the
|
||||
`Lisp programming language <http://en.wikipedia.org/wiki/Lisp_programming_language>`_
|
||||
with extensions to support text editing.
|
||||
|
||||
Refer to the `Emacs Documentation <https://www.gnu.org/software/emacs/#Manuals>`_
|
||||
page for more detailed information.
|
||||
|
||||
.. image:: ../_static/ide-platformio-emacs.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-emacs.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
PlatformIO-Mode
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
An Emacs minor mode has been written to facilitate building and uploading from within Emacs.
|
||||
It can be installed from the MELPA repository using ``M-x package-install``.
|
||||
See the MELPA `Getting Started <https://melpa.org/#/getting-started>`_ page for more information.
|
||||
|
||||
Setup instructions and an example config can be found at the `Github page <https://github.com/ZachMassia/platformio-mode>`_.
|
||||
|
||||
Code completion can optionally be provided by installing `irony-mode <https://github.com/Sarcasm/irony-mode>`_
|
||||
|
||||
|
||||
Project Generator
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide emacs --board %TYPE%
|
||||
|
||||
|
||||
There are 6 predefined targets for building.
|
||||
|
||||
* ``platformio_build`` - Build project without auto-uploading. (``C-c i b``)
|
||||
* ``platformio_clean`` - Clean compiled objects. (``C-c i c``)
|
||||
* ``platformio_upload`` - Build and upload (if no errors). (``C-c i u``)
|
||||
* ``platformio_programmer_upload`` - Build and upload using external programmer (if no errors, see :ref:`atmelavr_upload_via_programmer`). (``C-c i p``)
|
||||
* ``platformio_spiffs_upload`` - Upload files to file system SPIFFS (see :ref:`platform_espressif_uploadfs`). (``C-c i s``)
|
||||
* ``platformio_update`` - Update installed platforms and libraries. (``C-c i d``)
|
||||
|
||||
.. 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).
|
@ -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
|
64
docs/ide/netbeans.rst
Normal file
@ -0,0 +1,64 @@
|
||||
.. Copyright 2014-2016 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_netbeans:
|
||||
|
||||
NetBeans
|
||||
========
|
||||
|
||||
NetBeans is a Java-based integrated development environment (IDE). It provides
|
||||
out-of-the-box code analyzers and editors for working with the latest Java 8
|
||||
technologies--Java SE 8, Java SE Embedded 8, and Java ME Embedded 8. The IDE
|
||||
also has a range of new tools for HTML5/JavaScript, in particular for Node.js,
|
||||
KnockoutJS, and AngularJS; enhancements that further improve its support for
|
||||
Maven and Java EE with PrimeFaces; and improvements to PHP and C/C++ support.
|
||||
|
||||
NetBeans IDE can be downloaded from `here <https://netbeans.org/downloads/>`_.
|
||||
Just make sure you download the C/C++ version (or if you already use NetBeans,
|
||||
install the C/C++ development plugins).
|
||||
|
||||
.. image:: ../_static/ide-platformio-netbeans.png
|
||||
:target: http://docs.platformio.org/en/latest/_images/ide-platformio-netbeans.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide netbeans --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide netbeans --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Open this project via ``Menu: File > Open Project...``
|
||||
2. Add new files to ``src`` directory (``*.c, *.cpp, *.ino, etc.``) via
|
||||
right-click on ``src`` folder in the "Projects" pane
|
||||
3. Build project using ``Menu: Run > Build Project``
|
||||
4. Upload firmware using ``Menu: Run > Run 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
|
||||
------------------
|
||||
|
||||
* Feb 22, 2016 - **Grzegorz Hołdys** - `How to Integrate PlatformIO with Netbeans <http://www.instructables.com/id/How-to-Integrate-PlatformIO-With-Netbeans/>`_
|
||||
|
||||
See the full list with :ref:`articles`.
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -16,14 +16,12 @@ 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.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-7.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-7.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
@ -37,14 +35,16 @@ Integration
|
||||
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:
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide qtcreator --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide qtcreator --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Import project via ``File > Open File or Project`` and select
|
||||
@ -105,7 +105,7 @@ 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):
|
||||
Secondly, we need to delete default build and clean steps and configure project with PlatformIO Build System (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
|
||||
@ -187,16 +187,10 @@ 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>`_.
|
||||
Source code of `Qt Creator "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/qtcreator>`_.
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -16,30 +16,42 @@ 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.
|
||||
|
||||
.. image:: ../_static/ide-sublime-text-deviot.gif
|
||||
:target: https://github.com/gepd/Deviot
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Deviot Plugin
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
We are glad to inform you about awesome Sublime Text plugin for IoT development
|
||||
named `Deviot <https://github.com/gepd/Deviot>`_. It is based on
|
||||
PlatformIO CLI and will automatically install it for you. Please visit `official
|
||||
Deviot page <https://github.com/gepd/Deviot>`_ for the further installation
|
||||
steps and documentation.
|
||||
|
||||
.. image:: ../_static/ide-sublime-text-deviot.gif
|
||||
:target: https://github.com/gepd/Deviot
|
||||
|
||||
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:
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide sublimetext --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide sublimetext --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Import project via ``Menu: Project > Open Project...`` and select
|
||||
@ -48,6 +60,15 @@ Then:
|
||||
3. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
|
||||
4. Build project: ``Menu: Tools > Build``.
|
||||
|
||||
Also, you can access to all pre-configured targets via
|
||||
``Menu: Tools > Builds With...`` (ST3)
|
||||
|
||||
+ ``PlatformIO - Build`` - Build project without auto-uploading
|
||||
+ ``PlatformIO - Clean`` - Clean compiled objects.
|
||||
+ ``PlatformIO - Upload`` - Build and upload (if no errors)
|
||||
+ ``PlatformIO - Upload using Programmer`` see :ref:`atmelavr_upload_via_programmer`
|
||||
+ ``PlatformIO - Upload SPIFFS image`` see :ref:`platform_espressif_uploadfs`
|
||||
+ ``PlatformIO - Update platforms and libraries`` - Update installed platforms and libraries via :ref:`cmd_update`.
|
||||
|
||||
Manual Integration
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
@ -165,15 +186,10 @@ 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>`_.
|
||||
Source code of `Sublime Text "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/sublimetext>`_.
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -18,10 +18,7 @@ VIM
|
||||
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`
|
||||
.. image:: ../_static/ide-platformio-vim.png
|
||||
|
||||
.. contents::
|
||||
|
||||
@ -48,11 +45,33 @@ Put to the project directory ``Makefile`` wrapper with contents:
|
||||
#PATH := /usr/local/bin:$(PATH)
|
||||
|
||||
all:
|
||||
platformio -f -c vim run
|
||||
|
||||
upload:
|
||||
platformio -f -c vim run --target upload
|
||||
|
||||
clean:
|
||||
platformio -f -c vim run --target clean
|
||||
|
||||
program:
|
||||
platformio -f -c vim run --target program
|
||||
|
||||
uploadfs:
|
||||
platformio -f -c vim run --target uploadfs
|
||||
|
||||
update:
|
||||
platformio -f -c vim update
|
||||
|
||||
|
||||
Pre-defined targets:
|
||||
|
||||
+ ``Build`` - Build project without auto-uploading
|
||||
+ ``Clean`` - Clean compiled objects.
|
||||
+ ``Upload`` - Build and upload (if no errors)
|
||||
+ ``Upload using Programmer`` see :ref:`atmelavr_upload_via_programmer`
|
||||
+ ``Upload SPIFFS image`` see :ref:`platform_espressif_uploadfs`
|
||||
+ ``Update platforms and libraries`` - Update installed platforms and libraries via :ref:`cmd_update`.
|
||||
|
||||
|
||||
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,
|
||||
@ -68,8 +87,3 @@ 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
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -16,14 +16,12 @@ 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.
|
||||
|
||||
.. image:: ../_static/ide-vs-platformio-newproject-8.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-vs-platformio-newproject-8.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
@ -37,13 +35,15 @@ Integration
|
||||
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:
|
||||
Choose board ``type`` using :ref:`cmd_boards` or `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
command and generate project via :option:`platformio init --ide` command:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
platformio init --ide visualstudio --board %TYPE%
|
||||
platformio init --ide sublimetext --board %TYPE%
|
||||
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide visualstudio --board uno
|
||||
|
||||
Then:
|
||||
|
||||
@ -67,7 +67,7 @@ First of all, let's create new project from Visual Studio Start Page: ``Start >
|
||||
|
||||
.. image:: ../_static/ide-vs-platformio-newproject.png
|
||||
|
||||
Secondly, we need to configure project with PlatformIO source code builder:
|
||||
Secondly, we need to configure project with PlatformIO Build System:
|
||||
|
||||
.. image:: ../_static/ide-vs-platformio-newproject-2.png
|
||||
|
||||
@ -93,14 +93,14 @@ 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``:
|
||||
1. Main "C++" source file named ``main.cpp`` must be located in the ``src`` directory.
|
||||
Let's create new file named ``main.cpp`` 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``.
|
||||
Copy the source code which is described below to file ``main.cpp``.
|
||||
|
||||
.. code-block:: c
|
||||
.. code-block:: cpp
|
||||
|
||||
#include "Arduino.h"
|
||||
#define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself
|
||||
@ -147,16 +147,32 @@ 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>`_.
|
||||
Source code of `Visual Studio "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/visualstudio>`_.
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
IntelliSense Errors
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
VS Studio does not allow to specify for project other toolchain which will
|
||||
be used by IntelliSense. In this case, IntelliSense does not understand
|
||||
GCC-specific definitions.
|
||||
|
||||
However, these errors does not have any influence on PlatformIO Build
|
||||
System. It means that you can ignore them and rely on PlatformIO Build System
|
||||
messages which will be shown in output console after build.
|
||||
|
||||
Nevertheless, you can provide an IntelliSense-friendly definition of problematic
|
||||
GCC constructs and make sure that the GCC will ignore such definitions or
|
||||
disable IntelliSense error reporting at all.
|
||||
See details in `issue #543 <https://github.com/platformio/platformio/issues/543>`_
|
||||
|
||||
.. image:: ../_static/ide-vs-platformio-newproject-9.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-vs-platformio-newproject-9.png
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -12,9 +12,14 @@
|
||||
PlatformIO is an open source ecosystem for IoT development
|
||||
==========================================================
|
||||
|
||||
**Cross-platform code builder and library manager. Continuous and IDE
|
||||
**Cross-platform build system and library manager. Continuous and IDE
|
||||
integration. Arduino and MBED compatible. Ready for Cloud compiling.**
|
||||
|
||||
* **PlatformIO IDE** - The next-generation integrated development environment for IoT.
|
||||
C/C++ Intelligent Code Completion and Smart Code Linter for the super-fast coding.
|
||||
Multi-projects workflow with Multiple Panes. Themes Support with dark and light colors.
|
||||
Built-in Terminal with PlatformIO CLI tool and support for the powerful Serial Port Monitor.
|
||||
All advanced instruments without leaving your favourite development environment.
|
||||
* **Development Platforms** - Embedded and Desktop development platforms with
|
||||
pre-built toolchains, debuggers, uploaders and frameworks which work under
|
||||
popular host OS: Mac, Windows, Linux (+ARM)
|
||||
@ -28,33 +33,33 @@ integration. Arduino and MBED compatible. Ready for Cloud compiling.**
|
||||
|
||||
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
|
||||
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
|
||||
libOpenCM3, etc.**
|
||||
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>`_
|
||||
* :ref:`ide_atom`
|
||||
* `Web 2.0 Library Search <http://platformio.org/lib>`_ |
|
||||
`Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
* `Project Examples <https://github.com/platformio/platformio-examples/tree/develop>`_
|
||||
* `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/>`_
|
||||
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
|
||||
`Forums <https://community.platformio.org>`_
|
||||
|
||||
Embedded Development. *Easier Than Ever.*
|
||||
-----------------------------------------
|
||||
|
||||
* Colourful command-line output
|
||||
* :ref:`IDE Integration <ide>` with *Arduino, Eclipse, Energia, Qt Creator,
|
||||
Sublime Text, Vim, Visual Studio*
|
||||
* :ref:`IDE Integration <ide>` with *Arduino, Atom, CLion, Eclipse, Emacs,
|
||||
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>`
|
||||
* Pre-built toolchains, :ref:`frameworks` for the :ref:`platforms`
|
||||
|
||||
Smart Code Builder. *Fast and Reliable.*
|
||||
Smart Build System. *Fast and Reliable.*
|
||||
----------------------------------------
|
||||
|
||||
* Reliable, automatic dependency analysis and detection of build changes
|
||||
@ -66,21 +71,27 @@ The Missing Library Manager. *It's here!*
|
||||
-----------------------------------------
|
||||
|
||||
* Friendly Command-Line Interface
|
||||
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
|
||||
* 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:`faq_what_is_platformio`
|
||||
For further details, please refer to
|
||||
:ref:`What is PlatformIO? How does it work? <what_is_pio>`
|
||||
|
||||
Contents
|
||||
--------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
what-is-platformio
|
||||
demo
|
||||
|
||||
.. toctree::
|
||||
:caption: Getting Started
|
||||
:maxdepth: 2
|
||||
|
||||
demo
|
||||
installation
|
||||
quickstart
|
||||
userguide/index
|
||||
@ -94,10 +105,13 @@ Contents
|
||||
|
||||
.. toctree::
|
||||
:caption: Instruments
|
||||
:maxdepth: 2
|
||||
:maxdepth: 3
|
||||
|
||||
Platforms & Boards <platforms/index>
|
||||
platforms/index
|
||||
platforms/embedded_boards
|
||||
frameworks/index
|
||||
platforms/creating_platform
|
||||
platforms/creating_board
|
||||
|
||||
.. toctree::
|
||||
:caption: Library Manager
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -14,6 +14,8 @@
|
||||
Installation
|
||||
============
|
||||
|
||||
.. include:: /ide/_platformio_ide_extra.rst
|
||||
|
||||
**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>`_,
|
||||
@ -25,44 +27,55 @@ computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
|
||||
System requirements
|
||||
-------------------
|
||||
|
||||
* **Operating systems:**
|
||||
* Mac OS X
|
||||
* Linux, +ARM
|
||||
* Windows
|
||||
* Python 2.6.x or Python 2.7.x(recommended)
|
||||
:Operating System: Mac OS X, Linux (+ARM) or Windows
|
||||
:Python Interpreter:
|
||||
|
||||
All commands below should be executed in
|
||||
`Command-line <http://en.wikipedia.org/wiki/Command-line_interface>`_
|
||||
application (Terminal):
|
||||
Python 2.6 or 2.7. Python 2.7 is recommended
|
||||
|
||||
* Mac OS X / Linux – *Terminal* application
|
||||
* Windows – ``cmd.exe`` application.
|
||||
.. attention::
|
||||
**Windows Users**: 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, otherwise Python Package Manager ``pip`` command
|
||||
will not be available.
|
||||
|
||||
.. image:: _static/python-installer-add-path.png
|
||||
|
||||
:Terminal Application:
|
||||
|
||||
All commands below should be executed in
|
||||
`Command-line <http://en.wikipedia.org/wiki/Command-line_interface>`_
|
||||
application (Terminal). For Mac OS X and Linux OS - *Terminal* application,
|
||||
for Windows OS – ``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.
|
||||
.. note::
|
||||
You don't need to install PlatformIO CLI if you are going to use
|
||||
:ref:`ide_atom`. PlatformIO CLI is built into PlatformIO IDE and you will be
|
||||
able to use it within PlatformIO IDE Terminal.
|
||||
|
||||
|
||||
Please *choose ONE of* the following methods:
|
||||
|
||||
a) Python Package Manager
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. contents::
|
||||
:local:
|
||||
|
||||
The latest stable version of PlatformIO may be installed/upgraded via
|
||||
`pip <https://pip.pypa.io>`_ as follows:
|
||||
Python Package Manager
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The latest stable version of PlatformIO may be installed or upgraded via
|
||||
Python Package Manager (`pip <https://pip.pypa.io>`_) as follows:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# update dependent packages to the latest versions
|
||||
pip install -U pip setuptools
|
||||
|
||||
# install/upgrade the latest version of PlatformIO
|
||||
pip install -U platformio
|
||||
|
||||
If ``pip`` command is not available run ``easy_install pip`` or use
|
||||
:ref:`installation_installer_script` which will install ``pip`` and
|
||||
``platformio`` automatically.
|
||||
|
||||
Note that you may run into permissions issues running these commands. You have
|
||||
a few options here:
|
||||
|
||||
@ -74,8 +87,8 @@ a few options here:
|
||||
|
||||
.. _installation_installer_script:
|
||||
|
||||
b) Installer Script
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
Installer Script
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Super-Quick (Mac / Linux)
|
||||
'''''''''''''''''''''''''
|
||||
@ -114,8 +127,19 @@ On *Windows OS* it may look like:
|
||||
# run it
|
||||
C:\Python27\python.exe get-platformio.py
|
||||
|
||||
c) Full Guide
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Mac OS X Homebrew
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
The latest stable version of PlatformIO may be installed or upgraded via
|
||||
Mac OS X Homebrew Packages Manager (`brew <http://brew.sh/>`_) as follows:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
brew install platformio
|
||||
|
||||
Full Guide
|
||||
~~~~~~~~~~
|
||||
|
||||
1. Check a ``python`` version (only 2.6-2.7 is supported):
|
||||
|
||||
@ -132,7 +156,6 @@ c) Full Guide
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
pip install -U pip setuptools
|
||||
pip install -U platformio
|
||||
|
||||
If your computer does not recognize ``pip`` command, try to install it first
|
||||
@ -144,20 +167,36 @@ For upgrading ``platformio`` to the latest version:
|
||||
|
||||
pip install -U platformio
|
||||
|
||||
d) Development Version
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
Development Version
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. warning::
|
||||
If you use :ref:`ide_atom`, please enable development version via
|
||||
``Menu PlatformIO: Settings > PlatformIO IDE > Use development version of
|
||||
PlatformIO``.
|
||||
|
||||
Install the latest PlatformIO from the ``develop`` branch:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
pip install -U pip setuptools
|
||||
# uninstall existing version
|
||||
pip uninstall platformio
|
||||
|
||||
# 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
|
||||
---------------
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -15,11 +15,17 @@
|
||||
library.json
|
||||
============
|
||||
|
||||
``library.json`` is a manifest file of development library.
|
||||
``library.json`` is a manifest file of development library. It allows developers
|
||||
to keep project in own structure and define:
|
||||
|
||||
Initially it was
|
||||
developed for :ref:`librarymanager`, but later was accepted by worldwide embedded
|
||||
community like a **standard library specification**.
|
||||
* 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
|
||||
Library Storage.
|
||||
|
||||
A data in ``library.json`` should be represented
|
||||
in `JSON-style <http://en.wikipedia.org/wiki/JSON>`_ via
|
||||
@ -132,7 +138,13 @@ Examples:
|
||||
|
||||
*Required* if :ref:`libjson_downloadurl` field is not defined | Type: ``Object``
|
||||
|
||||
The repository in which the source code can be found.
|
||||
The repository in which the source code can be found. The field consists for the
|
||||
next items:
|
||||
|
||||
* ``type`` the only "git", "hg" or "svn" are supported
|
||||
* ``url``
|
||||
* ``branch`` if is not specified, default branch will be used. This field will
|
||||
be ignored if tag/release exists with the value of :ref:`libjson_version`.
|
||||
|
||||
Example:
|
||||
|
||||
@ -144,6 +156,70 @@ Example:
|
||||
"url": "https://github.com/foo/bar.git"
|
||||
}
|
||||
|
||||
.. _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.
|
||||
|
||||
:Case 1:
|
||||
|
||||
:ref:`libjson_version` and :ref:`libjson_repository` fields are defined.
|
||||
The :ref:`libjson_repository` is hosted on GitHub or Bitbucket.
|
||||
|
||||
|PIOAPICR| will lookup for release tag named as value of :ref:`libjson_version`
|
||||
or with ``v`` prefix (you do not need to pass this ``v`` prefix to the
|
||||
:ref:`libjson_version` field).
|
||||
|
||||
:Case 2:
|
||||
|
||||
:ref:`libjson_version` and :ref:`libjson_repository` fields are defined
|
||||
and :ref:`libjson_repository` does not contain tag/release with value of
|
||||
:ref:`libjson_version`.
|
||||
|
||||
|PIOAPICR| will use the latest source code from :ref:`libjson_repository`
|
||||
and link it with specified :ref:`libjson_version`. If :ref:`libjson_repository`
|
||||
``branch`` is not specified, then default branch will be used.
|
||||
Also, if you push new commits to :ref:`libjson_repository`
|
||||
and do not update :ref:`libjson_version` field, the library will not be
|
||||
updated until you change the :ref:`libjson_version`.
|
||||
|
||||
:Case 3:
|
||||
|
||||
:ref:`libjson_version` field is not defined and :ref:`libjson_repository`
|
||||
field is defined.
|
||||
|
||||
|PIOAPICR| will use the
|
||||
`CVS <http://en.wikipedia.org/wiki/Concurrent_Versions_System>`_ revision from
|
||||
the latest commit as "current version". For example, ``13`` (*SVN*) or first
|
||||
10 chars of *SHA* digest ``e4564b7da4`` (*Git*). If :ref:`libjson_repository`
|
||||
``branch`` is not specified, then default branch will be used.
|
||||
|
||||
We recommend to use :ref:`libjson_version` field and specify the real release
|
||||
version and make appropriate tag in the :ref:`libjson_repository`. In other
|
||||
case, users will receive updates for library with each new commit to
|
||||
:ref:`libjson_repository`.
|
||||
|
||||
.. note::
|
||||
|PIOAPICR| updates library only if:
|
||||
- the :ref:`libjson_version` is changed
|
||||
- ``library.json`` is modified
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
"repository":
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/foo/bar.git"
|
||||
},
|
||||
"version": "1.0.0"
|
||||
|
||||
.. _libjson_downloadurl:
|
||||
|
||||
@ -155,28 +231,20 @@ Example:
|
||||
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.
|
||||
|
||||
:ref:`libjson_downloadurl` has higher priority than
|
||||
:ref:`libjson_repository`.
|
||||
|
||||
Example with fixed release/tag on GitHub:
|
||||
|
||||
.. code-block:: javascript
|
||||
|
||||
"version": "1.0.0",
|
||||
"downloadUrl": "https://github.com/foo/bar/archive/v1.0.0.tar.gz",
|
||||
"include": "bar-1.0.0"
|
||||
|
||||
See more ``library.json`` :ref:`library_creating_examples`.
|
||||
|
||||
.. _libjson_url:
|
||||
|
||||
@ -238,6 +306,7 @@ Pattern Meaning
|
||||
* - ``[!seq]``
|
||||
- matches any character not in seq
|
||||
|
||||
See more ``library.json`` :ref:`library_creating_examples`.
|
||||
|
||||
.. _libjson_exclude:
|
||||
|
||||
@ -323,6 +392,8 @@ Example:
|
||||
]
|
||||
|
||||
|
||||
See more ``library.json`` :ref:`library_creating_examples`.
|
||||
|
||||
.. _libjson_examples:
|
||||
|
||||
``examples``
|
||||
@ -336,6 +407,9 @@ A list of example patterns. This field is predefined with default value:
|
||||
.. code-block:: javascript
|
||||
|
||||
"examples": [
|
||||
"[Ee]xamples/*/*.c",
|
||||
"[Ee]xamples/*/*.cpp",
|
||||
"[Ee]xamples/*/*.h",
|
||||
"[Ee]xamples/*/*.ino",
|
||||
"[Ee]xamples/*/*.pde"
|
||||
]
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -146,3 +146,12 @@ The registration requirements:
|
||||
Now, you can :ref:`register <cmd_lib_register>` your library and allow others
|
||||
to :ref:`install <cmd_lib_install>` it.
|
||||
|
||||
|
||||
.. _library_creating_examples:
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
* `GitHub + fixed release <http://platformio.org/lib/show/552/ACNoblex>`_
|
||||
* `Dependencies by author and framework <http://platformio.org/lib/show/3/PID-AutoTune>`_
|
||||
* `Multiple libraries in the one repository <https://github.com/jrowberg/i2cdevlib/tree/master/Arduino>`_
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-2016 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
|
||||
@ -18,7 +18,7 @@ Library Manager
|
||||
You can search for new libraries via
|
||||
|
||||
* :ref:`Command Line interface <cmd_lib_search>`
|
||||
* `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
|
||||
* `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.
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -34,6 +34,9 @@ Packages
|
||||
* - ``tool-avrdude``
|
||||
- `AVRDUDE <http://www.nongnu.org/avrdude/>`_
|
||||
|
||||
* - ``framework-simba``
|
||||
- `Simba Framework <https://github.com/eerimoq/simba>`_
|
||||
|
||||
* - ``framework-arduinoavr``
|
||||
- `Arduino Wiring-based Framework (AVR Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
|
||||
|
||||
@ -44,8 +47,9 @@ Packages
|
||||
**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
|
||||
|
||||
**Windows Users:** Please check that you have correctly installed USB
|
||||
driver from board manufacturer
|
||||
|
||||
|
||||
|
||||
@ -58,14 +62,17 @@ Frameworks
|
||||
- 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.
|
||||
- Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
|
||||
|
||||
* - :ref:`framework_simba`
|
||||
- Simba is an RTOS and build framework. It aims to make embedded programming easy and portable.
|
||||
|
||||
Boards
|
||||
------
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by
|
||||
horizontal.
|
||||
|
||||
@ -82,6 +89,20 @@ Adafruit
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``bluefruitmicro``
|
||||
- `Adafruit Bluefruit Micro <https://www.adafruit.com/products/2661>`_
|
||||
- ATMEGA32U4
|
||||
- 8 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``feather32u4``
|
||||
- `Adafruit Feather <https://learn.adafruit.com/adafruit-feather-32u4-bluefruit-le/>`_
|
||||
- ATMEGA32U4
|
||||
- 8 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``flora8``
|
||||
- `Adafruit Flora <http://www.adafruit.com/product/659>`_
|
||||
- ATMEGA32U4
|
||||
@ -96,6 +117,13 @@ Adafruit
|
||||
- 8 Kb
|
||||
- 0.5 Kb
|
||||
|
||||
* - ``metro``
|
||||
- `Adafruit Metro <https://www.adafruit.com/products/2466>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``protrinket3``
|
||||
- `Adafruit Pro Trinket 3V/12MHz (USB) <http://www.adafruit.com/products/2010>`_
|
||||
- ATMEGA328P
|
||||
@ -138,6 +166,26 @@ Adafruit
|
||||
- 8 Kb
|
||||
- 0.5 Kb
|
||||
|
||||
Arduboy
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``arduboy``
|
||||
- `Arduboy <https://www.arduboy.com>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
Arduino
|
||||
~~~~~~~
|
||||
|
||||
@ -186,6 +234,13 @@ Arduino
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``chiwawa``
|
||||
- `Arduino Industrial 101 <http://www.arduino.org/products/boards/4-arduino-boards/arduino-industrial-101>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``diecimilaatmega168``
|
||||
- `Arduino Duemilanove or Diecimila ATmega168 <http://arduino.cc/en/Main/ArduinoBoardDiecimila>`_
|
||||
- ATMEGA168
|
||||
@ -201,14 +256,14 @@ Arduino
|
||||
- 2 Kb
|
||||
|
||||
* - ``esplora``
|
||||
- `Arduino Esplora <http://arduino.cc/en/Main/ArduinoBoardEsplora>`_
|
||||
- `Arduino Esplora <http://www.arduino.org/products/boards/4-arduino-boards/arduino-esplora>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``ethernet``
|
||||
- `Arduino Ethernet <http://arduino.cc/en/Main/ArduinoBoardEthernet>`_
|
||||
- `Arduino Ethernet <http://www.arduino.org/products/boards/4-arduino-boards/arduino-ethernet>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -222,7 +277,14 @@ Arduino
|
||||
- 2 Kb
|
||||
|
||||
* - ``leonardo``
|
||||
- `Arduino Leonardo <http://arduino.cc/en/Main/arduinoBoardLeonardo>`_
|
||||
- `Arduino Leonardo <http://www.arduino.org/products/boards/4-arduino-boards/arduino-leonardo>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``leonardoeth``
|
||||
- `Arduino Leonardo ETH <http://www.arduino.org/products/boards/4-arduino-boards/arduino-leonardo-eth>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -243,28 +305,28 @@ Arduino
|
||||
- 2 Kb
|
||||
|
||||
* - ``megaADK``
|
||||
- `Arduino Mega ADK <http://arduino.cc/en/Main/ArduinoBoardMegaADK>`_
|
||||
- `Arduino Mega ADK <http://www.arduino.org/products/boards/4-arduino-boards/arduino-mega-adk>`_
|
||||
- ATMEGA2560
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``megaatmega1280``
|
||||
- `Arduino Mega or Mega 2560 ATmega1280 <http://arduino.cc/en/Main/arduinoBoardMega>`_
|
||||
- `Arduino Mega or Mega 2560 ATmega1280 <http://www.arduino.org/products/boards/4-arduino-boards/arduino-mega-2560>`_
|
||||
- ATMEGA1280
|
||||
- 16 MHz
|
||||
- 128 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``megaatmega2560``
|
||||
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://arduino.cc/en/Main/arduinoBoardMega2560>`_
|
||||
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://www.arduino.org/products/boards/4-arduino-boards/arduino-mega-2560>`_
|
||||
- ATMEGA2560
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``micro``
|
||||
- `Arduino Micro <http://arduino.cc/en/Main/ArduinoBoardMicro>`_
|
||||
- `Arduino Micro <http://www.arduino.org/products/boards/4-arduino-boards/arduino-micro>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -285,14 +347,14 @@ Arduino
|
||||
- 2 Kb
|
||||
|
||||
* - ``nanoatmega168``
|
||||
- `Arduino Nano ATmega168 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
|
||||
- `Arduino Nano ATmega168 <http://www.arduino.org/products/boards/4-arduino-boards/arduino-nano>`_
|
||||
- ATMEGA168
|
||||
- 16 MHz
|
||||
- 16 Kb
|
||||
- 1 Kb
|
||||
|
||||
* - ``nanoatmega328``
|
||||
- `Arduino Nano ATmega328 <http://arduino.cc/en/Main/ArduinoBoardNano>`_
|
||||
- `Arduino Nano ATmega328 <http://www.arduino.org/products/boards/4-arduino-boards/arduino-nano>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -327,28 +389,35 @@ Arduino
|
||||
- 2 Kb
|
||||
|
||||
* - ``robotControl``
|
||||
- `Arduino Robot Control <http://arduino.cc/en/Main/Robot>`_
|
||||
- `Arduino Robot Control <http://www.arduino.org/products/boards/4-arduino-boards/arduino-robot>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``robotMotor``
|
||||
- `Arduino Robot Motor <http://arduino.cc/en/Main/Robot>`_
|
||||
- `Arduino Robot Motor <http://www.arduino.org/products/boards/4-arduino-boards/arduino-robot>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``uno``
|
||||
- `Arduino Uno <http://arduino.cc/en/Main/ArduinoBoardUno>`_
|
||||
- `Arduino Uno <http://www.arduino.org/products/boards/4-arduino-boards/arduino-uno>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``yun``
|
||||
- `Arduino Yun <http://arduino.cc/en/Main/ArduinoBoardYun>`_
|
||||
- `Arduino Yun <http://www.arduino.org/products/boards/4-arduino-boards/arduino-yun>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
* - ``yunmini``
|
||||
- `Arduino Yun Mini <http://www.arduino.org/products/boards/4-arduino-boards/arduino-yun-mini>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -368,7 +437,7 @@ BQ
|
||||
- RAM
|
||||
|
||||
* - ``zumbt328``
|
||||
- `BQ ZUM BT-328 board <http://www.bq.com/gb/products/zum.html>`_
|
||||
- `BQ ZUM BT-328 <http://www.bq.com/gb/products/zum.html>`_
|
||||
- ATMEGA328P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
@ -469,6 +538,68 @@ Engduino
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
Generic ATTiny
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``attiny13``
|
||||
- `Generic ATTiny13 <http://www.atmel.com/devices/ATTINY13.aspx>`_
|
||||
- ATTINY13
|
||||
- 9 MHz
|
||||
- 1 Kb
|
||||
- 0.0625 Kb
|
||||
|
||||
* - ``attiny24``
|
||||
- `Generic ATTiny24 <http://www.atmel.com/devices/ATTINY24.aspx>`_
|
||||
- ATTINY24
|
||||
- 8 MHz
|
||||
- 2 Kb
|
||||
- 0.125 Kb
|
||||
|
||||
* - ``attiny25``
|
||||
- `Generic ATTiny25 <http://www.atmel.com/devices/ATTINY25.aspx>`_
|
||||
- ATTINY25
|
||||
- 8 MHz
|
||||
- 2 Kb
|
||||
- 0.125 Kb
|
||||
|
||||
* - ``attiny44``
|
||||
- `Generic ATTiny44 <http://www.atmel.com/devices/ATTINY44.aspx>`_
|
||||
- ATTINY44
|
||||
- 8 MHz
|
||||
- 4 Kb
|
||||
- 0.25 Kb
|
||||
|
||||
* - ``attiny45``
|
||||
- `Generic ATTiny45 <http://www.atmel.com/devices/ATTINY45.aspx>`_
|
||||
- ATTINY45
|
||||
- 8 MHz
|
||||
- 4 Kb
|
||||
- 0.25 Kb
|
||||
|
||||
* - ``attiny84``
|
||||
- `Generic ATTiny84 <http://www.atmel.com/devices/ATTINY84.aspx>`_
|
||||
- ATTINY84
|
||||
- 8 MHz
|
||||
- 8 Kb
|
||||
- 0.5 Kb
|
||||
|
||||
* - ``attiny85``
|
||||
- `Generic ATTiny85 <http://www.atmel.com/devices/ATTINY85.aspx>`_
|
||||
- ATTINY85
|
||||
- 8 MHz
|
||||
- 8 Kb
|
||||
- 0.5 Kb
|
||||
|
||||
LightUp
|
||||
~~~~~~~
|
||||
|
||||
@ -489,6 +620,26 @@ LightUp
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
Linino
|
||||
~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``one``
|
||||
- `Linino One <http://www.linino.org/portfolio/linino-one/>`_
|
||||
- ATMEGA32U4
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2.5 Kb
|
||||
|
||||
LowPowerLab
|
||||
~~~~~~~~~~~
|
||||
|
||||
@ -516,6 +667,68 @@ LowPowerLab
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
Mcudude
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``mightycore1284``
|
||||
- `MightyCore ATmega1284 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA1284P
|
||||
- 16 MHz
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``mightycore16``
|
||||
- `MightyCore ATmega16 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA16
|
||||
- 16 MHz
|
||||
- 16 Kb
|
||||
- 1 Kb
|
||||
|
||||
* - ``mightycore164``
|
||||
- `MightyCore ATmega164 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA164P
|
||||
- 16 MHz
|
||||
- 16 Kb
|
||||
- 1 Kb
|
||||
|
||||
* - ``mightycore32``
|
||||
- `MightyCore ATmega32 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA32
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``mightycore324``
|
||||
- `MightyCore ATmega324 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA324P
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``mightycore644``
|
||||
- `MightyCore ATmega644 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA644P
|
||||
- 16 MHz
|
||||
- 64 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``mightycore8535``
|
||||
- `MightyCore ATmega8535 <https://www.tindie.com/products/MCUdude/dip-40-arduino-compatible-development-board>`_
|
||||
- ATMEGA16
|
||||
- 16 MHz
|
||||
- 8 Kb
|
||||
- 0.5 Kb
|
||||
|
||||
Microduino
|
||||
~~~~~~~~~~
|
||||
|
||||
@ -719,20 +932,13 @@ Sanguino
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``sanguino_atmega12848m``
|
||||
* - ``sanguino_atmega1284_8m``
|
||||
- `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
|
||||
@ -740,13 +946,34 @@ Sanguino
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``sanguino_atmega644``
|
||||
- `Sanguino ATmega644 or ATmega644A (16 MHz) <https://code.google.com/p/sanguino/>`_
|
||||
- ATMEGA644
|
||||
- 16 MHz
|
||||
- 64 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``sanguino_atmega644_8m``
|
||||
- `Sanguino ATmega644 or ATmega644A (8 MHz) <https://code.google.com/p/sanguino/>`_
|
||||
- ATMEGA644
|
||||
- 8 MHz
|
||||
- 64 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``sanguino_atmega644p``
|
||||
- `Sanguino ATmega644P <https://code.google.com/p/sanguino/>`_
|
||||
- `Sanguino ATmega644P or ATmega644PA (16 MHz) <https://code.google.com/p/sanguino/>`_
|
||||
- ATMEGA644P
|
||||
- 16 MHz
|
||||
- 64 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``sanguino_atmega644p_8m``
|
||||
- `Sanguino ATmega644P or ATmega644PA (8 MHz) <https://code.google.com/p/sanguino/>`_
|
||||
- ATMEGA644P
|
||||
- 8 MHz
|
||||
- 64 Kb
|
||||
- 4 Kb
|
||||
|
||||
SparkFun
|
||||
~~~~~~~~
|
||||
|
||||
@ -903,3 +1130,5 @@ ubIQio
|
||||
- 16 MHz
|
||||
- 32 Kb
|
||||
- 2 Kb
|
||||
|
||||
.. include:: atmelavr_extra.rst
|
||||
|
124
docs/platforms/atmelavr_extra.rst
Normal file
@ -0,0 +1,124 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
.. _atmelavr_upload_via_programmer:
|
||||
|
||||
Upload using Programmer
|
||||
-----------------------
|
||||
|
||||
To upload firmware using programmer you need to use ``program`` target instead
|
||||
``upload`` for :option:`platformio run --target` command. For example,
|
||||
``platformio run -t program``.
|
||||
|
||||
Configuration for the programmers:
|
||||
|
||||
* AVR ISP
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = stk500v1
|
||||
upload_flags = -P$UPLOAD_PORT
|
||||
|
||||
# edit this line with valid upload port
|
||||
upload_port = SERIAL_PORT_HERE
|
||||
|
||||
* AVRISP mkII
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = stk500v2
|
||||
upload_flags = -Pusb
|
||||
|
||||
* USBtinyISP
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = usbtiny
|
||||
|
||||
* ArduinoISP
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = arduinoisp
|
||||
|
||||
* USBasp
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = usbasp
|
||||
upload_flags = -Pusb
|
||||
|
||||
* Parallel Programmer
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = dapa
|
||||
upload_flags = -F
|
||||
|
||||
* Arduino as ISP
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
upload_protocol = stk500v1
|
||||
upload_flags = -P$UPLOAD_PORT -b$UPLOAD_SPEED
|
||||
|
||||
# edit these lines
|
||||
upload_port = SERIAL_PORT_HERE
|
||||
upload_speed = 19200
|
||||
|
||||
Articles
|
||||
--------
|
||||
|
||||
* Dec 01, 2015 - **Michał Seroczyński** - `Push Notification from Arduino Yún with motion sensor <http://www.ches.pl/push-from-yun-1/>`_
|
||||
* 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/>`_
|
||||
* Oct 18, 2015 - **Nico Coetzee** - `First Arduino I2C Experience with PlatformIO <https://electronicventurer.wordpress.com/2015/10/18/first-arduino-i2c-experience/>`_
|
||||
* Oct 10, 2015 - **Floyd Hilton** - `Programming Arduino with Atom <http://floydhilton.com/software/career/2015/10/10/Arduino_with_Atom.html>`_
|
||||
* 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>`_
|
||||
|
||||
See more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for Atmel AVR platform <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino>`_.
|
||||
|
||||
* `Wiring Blink <https://github.com/platformio/platformio-examples/tree/develop/wiring-blink>`_
|
||||
* `Arduino with external libraries <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/arduino-external-libs>`_
|
||||
* `Arduino with internal libraries <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/arduino-internal-libs>`_
|
||||
* `Project uses source file name for "src" directory (Arduino project structure) <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/arduino-own-src_dir>`_
|
||||
* `Atmel AVR Native blink <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/atmelavr-native-blink>`_
|
||||
* `Digitstump Mouse <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/digitstump-mouse>`_
|
||||
* `Engduino magnetometer <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/engduino-magnetometer>`_
|
||||
* `PanStamp blink <https://github.com/platformio/platformio-examples/tree/develop/atmelavr-and-arduino/panstamp-blink>`_
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -28,15 +28,24 @@ Packages
|
||||
* - Name
|
||||
- Contents
|
||||
|
||||
* - ``toolchain-gccarmnoneeabi``
|
||||
- `gcc-arm-embedded <https://launchpad.net/gcc-arm-embedded>`_, `GDB <http://www.gnu.org/software/gdb/>`_
|
||||
|
||||
* - ``framework-arduinosam``
|
||||
- `Arduino Wiring-based Framework (SAM Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
|
||||
|
||||
* - ``framework-simba``
|
||||
- `Simba Framework <https://github.com/eerimoq/simba>`_
|
||||
|
||||
* - ``tool-openocd``
|
||||
- `OpenOCD <http://openocd.org>`_
|
||||
|
||||
* - ``framework-mbed``
|
||||
- `mbed Framework <http://mbed.org>`_
|
||||
|
||||
* - ``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/>`_
|
||||
|
||||
@ -44,8 +53,9 @@ Packages
|
||||
**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
|
||||
|
||||
**Windows Users:** Please check that you have correctly installed USB
|
||||
driver from board manufacturer
|
||||
|
||||
|
||||
|
||||
@ -58,14 +68,20 @@ Frameworks
|
||||
- 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.
|
||||
- Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
|
||||
|
||||
* - :ref:`framework_mbed`
|
||||
- The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
|
||||
|
||||
* - :ref:`framework_simba`
|
||||
- Simba is an RTOS and build framework. It aims to make embedded programming easy and portable.
|
||||
|
||||
Boards
|
||||
------
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by
|
||||
horizontal.
|
||||
|
||||
@ -83,19 +99,67 @@ Arduino
|
||||
- RAM
|
||||
|
||||
* - ``due``
|
||||
- `Arduino Due (Programming Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
|
||||
- AT91SAM3X8E
|
||||
- `Arduino Due (Programming Port) <http://www.arduino.org/products/boards/4-arduino-boards/arduino-due>`_
|
||||
- SAM3X8E
|
||||
- 84 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``dueUSB``
|
||||
- `Arduino Due (USB Native Port) <http://arduino.cc/en/Main/arduinoBoardDue>`_
|
||||
- AT91SAM3X8E
|
||||
- `Arduino Due (USB Native Port) <http://www.arduino.org/products/boards/4-arduino-boards/arduino-due>`_
|
||||
- SAM3X8E
|
||||
- 84 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``zero``
|
||||
- `Arduino Zero (Programming Port) <https://www.arduino.cc/en/Main/ArduinoBoardZero>`_
|
||||
- SAMD21G18A
|
||||
- 48 MHz
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``zeroUSB``
|
||||
- `Arduino Zero (USB Native Port) <https://www.arduino.cc/en/Main/ArduinoBoardZero>`_
|
||||
- SAMD21G18A
|
||||
- 48 MHz
|
||||
- 256 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
|
||||
~~~~~~~~~
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -17,7 +17,7 @@ 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)
|
||||
* `Embedded Boards Explorer <http://platformio.org/boards>`_ (Web)
|
||||
* :ref:`cmd_boards` (CLI command)
|
||||
|
||||
Nevertheless, PlatformIO allows to create own board or override existing
|
||||
@ -33,10 +33,9 @@ JSON Structure
|
||||
|
||||
The key fields:
|
||||
|
||||
* ``build`` data will be used by :ref:`Platforms <platforms>` and
|
||||
:ref:`frameworks` builders
|
||||
* ``build`` data will be used by :ref:`platforms` and :ref:`frameworks` builders
|
||||
* ``frameworks`` is the list with supported :ref:`frameworks`
|
||||
* ``platform`` main type of :ref:`Platforms <platforms>`
|
||||
* ``platform`` main type of :ref:`platforms`
|
||||
* ``upload`` upload settings which depend on the ``platform``
|
||||
|
||||
.. code-block:: json
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -19,15 +19,15 @@ 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
|
||||
build scripts, toolchains, 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
|
||||
which can use the same packages(toolchains, 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
|
||||
:ref:`platforms`, you don't need to create (or duplicate) own
|
||||
development platforms! Please use :ref:`projectconf_build_flags` option.
|
||||
|
||||
**Step-by-Step Manual**
|
||||
@ -59,9 +59,18 @@ Packages
|
||||
* - ``framework-arduinoespressif``
|
||||
- `Arduino Wiring-based Framework (ESP8266 Core) <https://github.com/esp8266/Arduino>`_
|
||||
|
||||
* - ``framework-arduinointel``
|
||||
- `Arduino Wiring-based Framework (Intel ARC Core) <https://github.com/01org/corelibs-arduino101>`_
|
||||
|
||||
* - ``framework-arduinomicrochippic32``
|
||||
- `Arduino Wiring-based Framework (PIC32 Core) <https://github.com/chipKIT32/chipKIT-core>`_
|
||||
|
||||
* - ``framework-arduinomsp430``
|
||||
- `Arduino Wiring-based Framework (MSP430 Core) <http://arduino.cc/en/Reference/HomePage>`_
|
||||
|
||||
* - ``framework-arduinonordicnrf51``
|
||||
- `Arduino Wiring-based Framework (RFduino Core) <https://github.com/RFduino/RFduino>`_
|
||||
|
||||
* - ``framework-arduinosam``
|
||||
- `Arduino Wiring-based Framework (SAM Core, 1.6) <http://arduino.cc/en/Reference/HomePage>`_
|
||||
|
||||
@ -83,15 +92,24 @@ Packages
|
||||
* - ``framework-mbed``
|
||||
- `mbed Framework <http://mbed.org>`_
|
||||
|
||||
* - ``framework-simba``
|
||||
- `Simba Framework <https://github.com/eerimoq/simba>`_
|
||||
|
||||
* - ``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-arduino101load``
|
||||
- `Genuino101 uploader <https://github.com/01org/intel-arduino-tools>`_
|
||||
|
||||
* - ``tool-avrdude``
|
||||
- `AVRDUDE <http://www.nongnu.org/avrdude/>`_
|
||||
|
||||
@ -107,9 +125,24 @@ Packages
|
||||
* - ``tool-micronucleus``
|
||||
- `Micronucleus <https://github.com/micronucleus/micronucleus>`_
|
||||
|
||||
* - ``tool-mkspiffs``
|
||||
- `Tool to build and unpack SPIFFS images <https://github.com/igrr/mkspiffs>`_
|
||||
|
||||
* - ``tool-mspdebug``
|
||||
- `MSPDebug <http://mspdebug.sourceforge.net/>`_
|
||||
|
||||
* - ``tool-openocd``
|
||||
- `OpenOCD <http://openocd.org>`_
|
||||
|
||||
* - ``tool-pic32prog``
|
||||
- `pic32prog <https://github.com/sergev/pic32prog>`_
|
||||
|
||||
* - ``tool-rfdloader``
|
||||
- `rfdloader <https://github.com/RFduino/RFduino>`_
|
||||
|
||||
* - ``tool-scons``
|
||||
- `SCons software construction tool <http://www.scons.org>`_
|
||||
|
||||
* - ``tool-stlink``
|
||||
- `ST-Link <https://github.com/texane/stlink>`_
|
||||
|
||||
@ -134,6 +167,15 @@ Packages
|
||||
* - ``toolchain-gccmingw32``
|
||||
- `MinGW <http://www.mingw.org>`_
|
||||
|
||||
* - ``toolchain-icestorm``
|
||||
- `GCC for FPGA IceStorm <http://www.clifford.at/icestorm/>`_
|
||||
|
||||
* - ``toolchain-intelarc32``
|
||||
- `GCC for Intel ARC <https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain>`_
|
||||
|
||||
* - ``toolchain-microchippic32``
|
||||
- `GCC for Microchip PIC32 <https://github.com/chipKIT32/chipKIT-cxx>`_
|
||||
|
||||
* - ``toolchain-timsp430``
|
||||
- `msp-gcc <http://sourceforge.net/projects/mspgcc/>`_, `GDB <http://www.gnu.org/software/gdb/>`_
|
||||
|
||||
@ -440,3 +482,4 @@ and copy there two files:
|
||||
|
||||
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.
|
||||
|
||||
|
2690
docs/platforms/embedded_boards.rst
Normal file
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -28,27 +28,34 @@ Packages
|
||||
* - Name
|
||||
- Contents
|
||||
|
||||
* - ``toolchain-xtensa``
|
||||
- `xtensa-gcc <https://github.com/jcmvbkbc/gcc-xtensa>`_, `GDB <http://www.gnu.org/software/gdb/>`_
|
||||
|
||||
* - ``framework-simba``
|
||||
- `Simba Framework <https://github.com/eerimoq/simba>`_
|
||||
|
||||
* - ``tool-esptool``
|
||||
- `esptool-ck <https://github.com/igrr/esptool-ck>`_
|
||||
|
||||
* - ``tool-mkspiffs``
|
||||
- `Tool to build and unpack SPIFFS images <https://github.com/igrr/mkspiffs>`_
|
||||
|
||||
* - ``framework-arduinoespressif``
|
||||
- `Arduino Wiring-based Framework (ESP8266 Core) <https://github.com/esp8266/Arduino>`_
|
||||
|
||||
* - ``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
|
||||
|
||||
**Windows Users:** Please check that you have correctly installed USB
|
||||
driver from board manufacturer
|
||||
|
||||
|
||||
|
||||
@ -61,17 +68,107 @@ Frameworks
|
||||
- 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.
|
||||
- Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
|
||||
|
||||
* - :ref:`framework_simba`
|
||||
- Simba is an RTOS and build framework. It aims to make embedded programming easy and portable.
|
||||
|
||||
Boards
|
||||
------
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`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
|
||||
|
||||
* - ``huzzah``
|
||||
- `Adafruit HUZZAH ESP8266 <https://www.adafruit.com/products/2471>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
Doit
|
||||
~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``espduino``
|
||||
- `ESPDuino (ESP-13 Module) <https://www.tindie.com/products/doit/espduinowifi-uno-r3/>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
ESPert
|
||||
~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``espresso_lite_v1``
|
||||
- `ESPresso Lite 1.0 <http://www.espert.co>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``espresso_lite_v2``
|
||||
- `ESPresso Lite 2.0 <http://www.espert.co>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
ESPino
|
||||
~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``espino``
|
||||
- `ESPino <http://www.espino.io>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
Espressif
|
||||
~~~~~~~~~
|
||||
|
||||
@ -86,15 +183,179 @@ Espressif
|
||||
- RAM
|
||||
|
||||
* - ``esp01``
|
||||
- `Espressif ESP8266 ESP-01 board <https://nurdspace.nl/ESP8266>`_
|
||||
- ESP8266
|
||||
- 40 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``esp12e``
|
||||
- `Espressif ESP8266 ESP-12E board (NodeMCU) <https://nurdspace.nl/ESP8266>`_
|
||||
- `Espressif Generic ESP8266 ESP-01 512k <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp01_1m``
|
||||
- `Espressif Generic ESP8266 ESP-01 1M <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 1024 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp07``
|
||||
- `Espressif Generic ESP8266 ESP-07 <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family#esp-07>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp12e``
|
||||
- `Espressif ESP8266 ESP-12E <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``esp_wroom_02``
|
||||
- `ESP-WROOM-02 <http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 50 Kb
|
||||
|
||||
NodeMCU
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``nodemcu``
|
||||
- `NodeMCU 0.9 (ESP-12 Module) <http://www.nodemcu.com/>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``nodemcuv2``
|
||||
- `NodeMCU 1.0 (ESP-12E Module) <http://www.nodemcu.com/>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
Olimex
|
||||
~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``modwifi``
|
||||
- `Olimex MOD-WIFI-ESP8266(-DEV) <https://www.olimex.com/Products/IoT/MOD-WIFI-ESP8266-DEV/open-source-hardware>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 2048 Kb
|
||||
- 80 Kb
|
||||
|
||||
SparkFun
|
||||
~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``thing``
|
||||
- `SparkFun ESP8266 Thing <https://www.sparkfun.com/products/13231>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 512 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``thingdev``
|
||||
- `SparkFun ESP8266 Thing Dev <https://www.sparkfun.com/products/13231>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 512 Kb
|
||||
- 80 Kb
|
||||
|
||||
SweetPea
|
||||
~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``esp210``
|
||||
- `SweetPea ESP-210 <http://wiki.sweetpeas.se/index.php?title=ESP-210>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
ThaiEasyElec
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``espinotee``
|
||||
- `ThaiEasyElec ESPino <http://www.thaieasyelec.com/products/wireless-modules/wifi-modules/espino-wifi-development-board-detail.html>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
WeMos
|
||||
~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``d1``
|
||||
- `WeMos D1(Retired) <http://www.wemos.cc/wiki/doku.php?id=en:d1>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``d1_mini``
|
||||
- `WeMos D1 R2 & mini <http://www.wemos.cc/wiki/doku.php?id=en:d1_mini>`_
|
||||
- ESP8266
|
||||
- 80 MHz
|
||||
- 4096 Kb
|
||||
- 80 Kb
|
||||
|
||||
.. include:: espressif_extra.rst
|
||||
|
265
docs/platforms/espressif_extra.rst
Normal file
@ -0,0 +1,265 @@
|
||||
.. Copyright 2014-2016 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.
|
||||
|
||||
Custom CPU Frequency
|
||||
--------------------
|
||||
|
||||
See :ref:`projectconf_board_f_cpu` option from :ref:`projectconf`
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
# set frequency to 160MHz
|
||||
board_f_cpu = 160000000L
|
||||
|
||||
Custom FLASH Frequency
|
||||
----------------------
|
||||
|
||||
See :ref:`projectconf_board_f_flash` option from :ref:`projectconf`. Possible
|
||||
values:
|
||||
|
||||
* ``20000000L``
|
||||
* ``26000000L``
|
||||
* ``40000000L``
|
||||
* ``80000000L``
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
# set frequency to 80MHz
|
||||
board_f_flash = 80000000L
|
||||
|
||||
Custom FLASH Mode
|
||||
-----------------
|
||||
|
||||
Flash chip interface mode. This parameter is stored in the binary image
|
||||
header, along with the flash size and flash frequency. The ROM bootloader
|
||||
in the ESP chip uses the value of these parameters in order to know how to
|
||||
talk to the flash chip.
|
||||
|
||||
See :ref:`projectconf_board_flash_mode` option from :ref:`projectconf`. Possible
|
||||
values:
|
||||
|
||||
* ``qio``
|
||||
* ``qout``
|
||||
* ``dio``
|
||||
* ``dout``
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
board_flash_mode = qio
|
||||
|
||||
Custom Reset Method
|
||||
-------------------
|
||||
|
||||
See :ref:`projectconf_upload_resetmethod` option from :ref:`projectconf`
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
upload_resetmethod = ck
|
||||
|
||||
.. _platform_espressif_customflash:
|
||||
|
||||
Custom Flash Size
|
||||
-----------------
|
||||
|
||||
.. warning::
|
||||
Please make sure to read `ESP8266 Flash layout <https://github.com/esp8266/Arduino/blob/master/doc/filesystem.md#flash-layout>`_
|
||||
information first.
|
||||
|
||||
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.4m1m.ld`` 4M (1M SPIFFS)
|
||||
* ``esp8266.flash.4m.ld`` 4M (3M 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
|
||||
|
||||
Custom Upload Speed
|
||||
-------------------
|
||||
|
||||
See :ref:`projectconf_upload_speed` option from :ref:`projectconf`
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
upload_speed = 9600
|
||||
|
||||
.. _platform_espressif_uploadfs:
|
||||
|
||||
Uploading files to file system SPIFFS
|
||||
-------------------------------------
|
||||
|
||||
.. warning::
|
||||
Please make sure to read `ESP8266 Flash layout <https://github.com/esp8266/Arduino/blob/master/doc/filesystem.md#flash-layout>`_
|
||||
information first.
|
||||
|
||||
1. Initialise project :ref:`cmd_init` (if you have not initialized yet)
|
||||
2. Create ``data`` folder (it should be on the same level as ``src`` folder)
|
||||
and put files here. Also, you can specify own location for :ref:`projectconf_pio_data_dir`
|
||||
3. Run target ``uploadfs`` using :option:`platformio run --target` command.
|
||||
|
||||
To upload SPIFFS image using OTA update please specify ``upload_port`` /
|
||||
``--upload-port`` as IP address or mDNS host name (ending with the ``*.local``).
|
||||
For the details please follow to :ref:`platform_espressif_ota`.
|
||||
|
||||
By default, will be used default LD Script for the board where is specified
|
||||
SPIFFS offsets (start, end, page, block). You can override it using
|
||||
:ref:`platform_espressif_customflash`.
|
||||
|
||||
Active discussion is located in `issue #382 <https://github.com/platformio/platformio/issues/382>`_.
|
||||
|
||||
.. _platform_espressif_ota:
|
||||
|
||||
Over-the-Air (OTA) update
|
||||
-------------------------
|
||||
|
||||
Firstly, please read `What is OTA? How to use it? <https://github.com/esp8266/Arduino/blob/master/doc/ota_updates/readme.md>`_
|
||||
|
||||
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 or mDNS_NAME.local
|
||||
|
||||
* Specify ``upload_port`` option in :ref:`projectconf`
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[env:myenv]
|
||||
upload_port = IP_ADDRESS_HERE or mDNS_NAME.local
|
||||
|
||||
For example,
|
||||
|
||||
* ``platformio run -t upload --upload-port 192.168.0.255``
|
||||
* ``platformio run -t upload --upload-port myesp8266.local``
|
||||
|
||||
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
|
||||
|
||||
Demo
|
||||
~~~~
|
||||
|
||||
.. image:: ../_static/platformio-demo-ota-esp8266.jpg
|
||||
:target: https://www.youtube.com/watch?v=lXchL3hpDO4
|
||||
|
||||
|
||||
Using Arduino Framework with Staging version
|
||||
--------------------------------------------
|
||||
|
||||
1. Clone/Copy `main repository <https://github.com/esp8266/Arduino>`_ to
|
||||
:ref:`projectconf_pio_home_dir` + ``packages/framework-arduinoespressif``
|
||||
and create new file ``packages/framework-arduinoespressif/version.txt``
|
||||
with the new version (for example, ``2.2.0``).
|
||||
2. Try to build project
|
||||
3. If you see build errors, then try to build this project using the same
|
||||
``stage`` on Arduino IDE
|
||||
4. If it works with Arduino IDE but doesn't work with PlatformIO, then please
|
||||
`open new issue <https://github.com/platformio/platformio/issues>`_ with
|
||||
attached information:
|
||||
|
||||
- test project/files
|
||||
- detailed log of build process from Arduino IDE (please copy it from
|
||||
console to http://pastebin.com)
|
||||
- detailed log of build process from PlatformIO Build System (
|
||||
please copy it from console to http://pastebin.com)
|
||||
|
||||
Articles
|
||||
--------
|
||||
|
||||
* Jun 3, 2016 - **Daniel Eichhorn** - `ESP8266: Continuous Delivery Pipeline – Push To Production <http://blog.squix.org/2016/06/esp8266-continuous-delivery-pipeline-push-to-production.html>`_
|
||||
* May 29, 2016 - **Chris Synan** - `Reverse Engineer RF Remote Controller for IoT! <http://www.instructables.com/id/Reverse-Engineer-RF-Remote-Controller-for-IoT/?ALLSTEPS>`_
|
||||
* May 22, 2016 - **Pedro Minatel** - `Estação meteorológica com ESP8266 (Weather station with ESP8266, Portuguese) <http://pedrominatel.com.br/esp8266/estacao-meteorologica-com-esp8266/>`_
|
||||
* May 16, 2016 - **Pedro Minatel** - `Controle remoto WiFi com ESP8266 (WiFi remote control using ESP8266, Portuguese) <http://pedrominatel.com.br/esp8266/controle-remoto-wifi-com-esp8266/>`_
|
||||
* May 08, 2016 - **Radoslaw Bob** - `Touch controlled buzzer (Nodemcu ESP8266) <https://gettoknowthebob.wordpress.com/2016/05/08/touch-controlled-buzzer-nodemcu-esp8266/>`_
|
||||
* Mar 07, 2016 - **Joran Jessurun** - `Nieuwe wereld met PlatformIO (New world with PlatformIO, Dutch) <http://blog.wisclub.nl/#post178>`_
|
||||
* Feb 25, 2016 - **NutDIY** - `PlatformIO Blink On Nodemcu Dev Kit V1.0 (ESP 12-E) <http://nutdiy.blogspot.com/2016/02/platformio-blink-on-nodemcu-dev-kit-v10.html>`_
|
||||
* Feb 23, 2016 - **Ptarmigan Labs** - `ESP8266 Over The Air updating – what are the options? <https://ptarmiganlabs.com/blog/2016/02/23/esp8266-over-the-air-updating-what-are-the-options/>`_
|
||||
* Jan 16, 2016 - **Dani Eichhorn** - `ESP8266 Arduino IDE Alternative: PlatformIO <http://blog.squix.ch/2016/01/esp8266-arduino-ide-alternative.html>`_
|
||||
* Dec 22, 2015 - **Jan Penninkhof** - `Over-the-Air ESP8266 programming using PlatformIO <http://www.penninkhof.com/2015/12/1610-over-the-air-esp8266-programming-using-platformio/>`_
|
||||
* 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/>`_
|
||||
|
||||
See more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
All project examples are located in PlatformIO repository
|
||||
`Examples for Espressif platform <https://github.com/platformio/platformio-examples/tree/develop/espressif>`_.
|
||||
|
||||
* `Native SDK <https://github.com/platformio/platformio-examples/tree/develop/espressif/esp8266-native>`_
|
||||
* `WebServer <https://github.com/platformio/platformio-examples/tree/develop/espressif/esp8266-webserver>`_
|
||||
* `WiFiScan <https://github.com/platformio/platformio-examples/tree/develop/espressif/esp8266-wifiscan>`_
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -38,8 +38,9 @@ Packages
|
||||
**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
|
||||
|
||||
**Windows Users:** Please check that you have correctly installed USB
|
||||
driver from board manufacturer
|
||||
|
||||
|
||||
|
||||
@ -59,7 +60,7 @@ Boards
|
||||
|
||||
.. note::
|
||||
* You can list pre-configured boards by :ref:`cmd_boards` command or
|
||||
`PlatformIO Boards Explorer <http://platformio.org/#!/boards>`_
|
||||
`PlatformIO Boards Explorer <http://platformio.org/boards>`_
|
||||
* For more detailed ``board`` information please scroll tables below by
|
||||
horizontal.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
.. Copyright 2014-2015 Ivan Kravets <me@ikravets.com>
|
||||
.. Copyright 2014-present 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
|
||||
@ -11,8 +11,8 @@
|
||||
|
||||
.. _platforms:
|
||||
|
||||
Platforms & Embedded Boards
|
||||
===========================
|
||||
Development Platforms
|
||||
=====================
|
||||
|
||||
*PlatformIO* has pre-built different development platforms for popular OS
|
||||
(*Mac OS X, Linux (+ARM) and Windows*). Each of them include compiler,
|
||||
@ -32,6 +32,9 @@ Embedded
|
||||
atmelsam
|
||||
espressif
|
||||
freescalekinetis
|
||||
intel_arc32
|
||||
lattice_ice40
|
||||
microchippic32
|
||||
nordicnrf51
|
||||
nxplpc
|
||||
siliconlabsefm32
|
||||
@ -51,12 +54,3 @@ Desktop
|
||||
linux_i686
|
||||
linux_x86_64
|
||||
windows_x86
|
||||
|
||||
Custom Platform & Board
|
||||
-----------------------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
creating_platform
|
||||
creating_board
|
||||
|