Compare commits
1394 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2e28c7444 | ||
|
|
b06c20a1a6 | ||
|
|
a3ce23e331 | ||
|
|
6147e0e29b | ||
|
|
da48ea3818 | ||
|
|
543a137506 | ||
|
|
02e7ff6b19 | ||
|
|
935894633c | ||
|
|
9b0bc500fd | ||
|
|
83b6bf6c6a | ||
|
|
5e6469596c | ||
|
|
c12df19fd1 | ||
|
|
37552a81fc | ||
|
|
e50327bccc | ||
|
|
7dc378bba7 | ||
|
|
72b6390613 | ||
|
|
52bb6fcbf0 | ||
|
|
63748cd83d | ||
|
|
254dcac149 | ||
|
|
e1f3a248ea | ||
|
|
74a8e88308 | ||
|
|
9c15fed722 | ||
|
|
a14dec70c2 | ||
|
|
18153d4168 | ||
|
|
bd30de4f18 | ||
|
|
3b6bda825b | ||
|
|
92e69a60f4 | ||
|
|
72084a2013 | ||
|
|
27df09533c | ||
|
|
bd207667e3 | ||
|
|
37eb37e2a1 | ||
|
|
7116deaf54 | ||
|
|
d2a45245e2 | ||
|
|
05bbd4a7f8 | ||
|
|
8199272328 | ||
|
|
33b5e18582 | ||
|
|
eae152959b | ||
|
|
35cbbeb457 | ||
|
|
96f7c7c0b0 | ||
|
|
ac7743e217 | ||
|
|
7d10041727 | ||
|
|
72a18125ee | ||
|
|
1bd893409d | ||
|
|
d9d5ee15fd | ||
|
|
78c86446cf | ||
|
|
2a9ba3821a | ||
|
|
4328d311a5 | ||
|
|
a42cf4ebdd | ||
|
|
39a787b0d1 | ||
|
|
f186ad30c1 | ||
|
|
160ae3fb60 | ||
|
|
80d74c608d | ||
|
|
df4560412d | ||
|
|
dab4c91c98 | ||
|
|
dd20c4273b | ||
|
|
cf5023436c | ||
|
|
ff312f0405 | ||
|
|
9012ed256c | ||
|
|
0a63b8b905 | ||
|
|
f78c9436c8 | ||
|
|
578d8910aa | ||
|
|
cd45749c82 | ||
|
|
3069abfe13 | ||
|
|
f7b994354b | ||
|
|
a28e04bfde | ||
|
|
960de87585 | ||
|
|
f525165758 | ||
|
|
9e3b2a381e | ||
|
|
f6491b2285 | ||
|
|
93aa0c2b08 | ||
|
|
0f300a24a1 | ||
|
|
a05d192beb | ||
|
|
fda7392b84 | ||
|
|
6036c54b05 | ||
|
|
7f1b569d6f | ||
|
|
c8849a4648 | ||
|
|
e2d2295866 | ||
|
|
d4ffc89c02 | ||
|
|
139bd4c10a | ||
|
|
21d34482da | ||
|
|
9b2999d64b | ||
|
|
65b5f20cf7 | ||
|
|
ec035c25a1 | ||
|
|
a1cb089d0d | ||
|
|
424d5e71a8 | ||
|
|
a48201f60f | ||
|
|
6442c86084 | ||
|
|
b06dc1e63f | ||
|
|
bbe6550abe | ||
|
|
b8af2acce5 | ||
|
|
6b63ae2e46 | ||
|
|
85439dbff7 | ||
|
|
b6269188fe | ||
|
|
bb62444f15 | ||
|
|
ac4c054d1f | ||
|
|
838063b1b7 | ||
|
|
c51ac0489f | ||
|
|
0e464b011f | ||
|
|
86aa7ad692 | ||
|
|
013c675bc4 | ||
|
|
3be35f9987 | ||
|
|
86794d2cf1 | ||
|
|
c3004c6a6c | ||
|
|
3a7b0d2c9d | ||
|
|
1b32091d7d | ||
|
|
7a88778f5e | ||
|
|
e703054716 | ||
|
|
c33a745862 | ||
|
|
a94aa898a6 | ||
|
|
8a379d2db2 | ||
|
|
34a860cfa6 | ||
|
|
d0d139511c | ||
|
|
dec5529a64 | ||
|
|
64520130f6 | ||
|
|
d516d31b30 | ||
|
|
5d2f42a5a8 | ||
|
|
f8e70c9362 | ||
|
|
023e2978ba | ||
|
|
0f8f9c94cd | ||
|
|
22bb1c39b1 | ||
|
|
6765a60ec3 | ||
|
|
d28f0b259a | ||
|
|
6894d2c5d2 | ||
|
|
7b474c69ab | ||
|
|
e232810325 | ||
|
|
4ba3625987 | ||
|
|
99dfc23d96 | ||
|
|
84abc5764d | ||
|
|
8e09d637e7 | ||
|
|
37dff70cd6 | ||
|
|
3e403ef9ee | ||
|
|
8d8bfd5587 | ||
|
|
054790d161 | ||
|
|
c637729eae | ||
|
|
6e26ce8162 | ||
|
|
f9e8ea66ea | ||
|
|
de62e5082e | ||
|
|
6ff99e4ddd | ||
|
|
8cc54bf9be | ||
|
|
012d33146c | ||
|
|
1e4ea2dde9 | ||
|
|
1aabf0ebf5 | ||
|
|
f51781c763 | ||
|
|
b1cebe9e0e | ||
|
|
a352318f0f | ||
|
|
62f1f93ad9 | ||
|
|
3979ee33a3 | ||
|
|
a57ed93923 | ||
|
|
aa19b1c424 | ||
|
|
0751c966c4 | ||
|
|
e8643528ea | ||
|
|
69773fc838 | ||
|
|
40dbc6c849 | ||
|
|
35cc57f263 | ||
|
|
e6fc0e30ec | ||
|
|
f1a14a03af | ||
|
|
5a63060699 | ||
|
|
81d3b7fd11 | ||
|
|
b3abee8513 | ||
|
|
d420e956e9 | ||
|
|
f5b4cb0ae8 | ||
|
|
0f7f301787 | ||
|
|
3426c01955 | ||
|
|
1a517995a0 | ||
|
|
e51b8d2f61 | ||
|
|
5c105a9bcb | ||
|
|
55c627e4ee | ||
|
|
ec897d217c | ||
|
|
6f8614906d | ||
|
|
dab81291eb | ||
|
|
fb6df55326 | ||
|
|
9b292e0614 | ||
|
|
f25e166ea8 | ||
|
|
ef6952b27a | ||
|
|
b0d74c4640 | ||
|
|
512ea68dce | ||
|
|
d410696729 | ||
|
|
d630aa4f37 | ||
|
|
0e9050f2e8 | ||
|
|
f01b858e90 | ||
|
|
d40d1e4f2b | ||
|
|
b2e6d16221 | ||
|
|
64cc353455 | ||
|
|
9b08244ed8 | ||
|
|
797688dedd | ||
|
|
2a3a12b816 | ||
|
|
8d8a0efdb9 | ||
|
|
94299139cf | ||
|
|
bb01ec9a1e | ||
|
|
317c7272cd | ||
|
|
d28e8a06b5 | ||
|
|
9a959a0aa4 | ||
|
|
31fdc76f25 | ||
|
|
3eadadf638 | ||
|
|
30f6d456af | ||
|
|
d3e2b2bde4 | ||
|
|
473c821132 | ||
|
|
3ba0d25f27 | ||
|
|
9299b6716a | ||
|
|
6ac2abfc3b | ||
|
|
4b50a9c721 | ||
|
|
ef0322019f | ||
|
|
a395b171e3 | ||
|
|
9177c6f210 | ||
|
|
0264c4eeea | ||
|
|
f1e65869f3 | ||
|
|
bda61d0ae2 | ||
|
|
55c1a90fc9 | ||
|
|
0ab7d53991 | ||
|
|
5ba20fc6ed | ||
|
|
92e82941fe | ||
|
|
fe76192590 | ||
|
|
20be83ef95 | ||
|
|
97c58c8dca | ||
|
|
239be03a54 | ||
|
|
70df551eef | ||
|
|
7f7cf5281f | ||
|
|
8b53f6e320 | ||
|
|
20e7525118 | ||
|
|
f9ead74b88 | ||
|
|
1efea0bd27 | ||
|
|
655efb1fb6 | ||
|
|
65e0daa06d | ||
|
|
0b749c3888 | ||
|
|
80c7a8d1ce | ||
|
|
098653aac7 | ||
|
|
db267513ca | ||
|
|
c64354ebcc | ||
|
|
6970c95aca | ||
|
|
4fc0ab0649 | ||
|
|
39542c4ef2 | ||
|
|
bf727d6905 | ||
|
|
c1178277ca | ||
|
|
976fc8975a | ||
|
|
795b8be386 | ||
|
|
e9ed55b6e9 | ||
|
|
dad8f9d80e | ||
|
|
b714fb1be0 | ||
|
|
179a971770 | ||
|
|
d27c31a389 | ||
|
|
941c7ffd07 | ||
|
|
87d0ead203 | ||
|
|
0c9d539a92 | ||
|
|
306b77a3f4 | ||
|
|
823e8374b1 | ||
|
|
6b064cb915 | ||
|
|
11c8ab52f6 | ||
|
|
82a7e67bec | ||
|
|
98a6449b06 | ||
|
|
fbadf83997 | ||
|
|
64b8df6d81 | ||
|
|
edc04987d3 | ||
|
|
a87c0c8a7a | ||
|
|
40b6072163 | ||
|
|
f15bb1d545 | ||
|
|
0b0064afd0 | ||
|
|
4f2c207bb3 | ||
|
|
9d1128af51 | ||
|
|
855c28d956 | ||
|
|
1cb8d61787 | ||
|
|
677cff1230 | ||
|
|
bd430e5afd | ||
|
|
758396c9ea | ||
|
|
a588e88fec | ||
|
|
5b5a63cb5f | ||
|
|
26dae8ee94 | ||
|
|
ca2adbac13 | ||
|
|
bfab3dac81 | ||
|
|
e60c2a6ba1 | ||
|
|
e3bf12f65c | ||
|
|
c728b91914 | ||
|
|
e5b76687a8 | ||
|
|
ef535e399e | ||
|
|
34231327b7 | ||
|
|
e49994e205 | ||
|
|
513577958f | ||
|
|
df0373c4fa | ||
|
|
4c10c85937 | ||
|
|
22e67e6fdd | ||
|
|
74af8a5c39 | ||
|
|
b364389541 | ||
|
|
e6d3f6bc3f | ||
|
|
e821a438fe | ||
|
|
34b1f3b0a1 | ||
|
|
5c53b93a49 | ||
|
|
c61ff611fb | ||
|
|
ef9e1a0170 | ||
|
|
3a7032ec9c | ||
|
|
339acab917 | ||
|
|
8c5fabe411 | ||
|
|
269967a809 | ||
|
|
b177bb5bfb | ||
|
|
3c795a215e | ||
|
|
e3e6676420 | ||
|
|
be85eb3e4a | ||
|
|
98f8c6b25a | ||
|
|
262b12524b | ||
|
|
826b518048 | ||
|
|
187315fc08 | ||
|
|
01c0b45ea2 | ||
|
|
dfc594fc39 | ||
|
|
2892cb8c2f | ||
|
|
fc9c66b0c3 | ||
|
|
6900052ecd | ||
|
|
0b862735b2 | ||
|
|
a1d9bc7cee | ||
|
|
1738f44847 | ||
|
|
30733e8376 | ||
|
|
1029233ec7 | ||
|
|
f16c05c429 | ||
|
|
d7fa255166 | ||
|
|
60b3fef37a | ||
|
|
7b8fb77250 | ||
|
|
1127914512 | ||
|
|
5b68d34764 | ||
|
|
79a4a943dc | ||
|
|
7ad8d08037 | ||
|
|
f10202c00b | ||
|
|
7b3a235bd7 | ||
|
|
e264788f8e | ||
|
|
49f5c1d078 | ||
|
|
8eed54ca45 | ||
|
|
daac1b2590 | ||
|
|
70031040b3 | ||
|
|
da6f424b11 | ||
|
|
02e883b55c | ||
|
|
9838aef6b8 | ||
|
|
2bfa3517f0 | ||
|
|
06494729f1 | ||
|
|
8726f8317c | ||
|
|
c7d9ab8474 | ||
|
|
4997528f6a | ||
|
|
4b622b8603 | ||
|
|
4f57cc52d4 | ||
|
|
ba23475425 | ||
|
|
f88466f3cd | ||
|
|
60be939a1f | ||
|
|
2dd01247e1 | ||
|
|
77a4d3f773 | ||
|
|
6cbd286836 | ||
|
|
b447e0aeab | ||
|
|
b165c3f543 | ||
|
|
d246ef9a2e | ||
|
|
8fd553fbfc | ||
|
|
f4cebfdbae | ||
|
|
2fdc57055b | ||
|
|
03b0b61aa1 | ||
|
|
3984f80bae | ||
|
|
8427b9c7ee | ||
|
|
581fd356cd | ||
|
|
d88997c418 | ||
|
|
d6b38dafc6 | ||
|
|
0056651447 | ||
|
|
a0d9173b4f | ||
|
|
f12c721f44 | ||
|
|
a73a710364 | ||
|
|
e33e950712 | ||
|
|
f767feeef9 | ||
|
|
fd924f29f3 | ||
|
|
13112ad6d4 | ||
|
|
b043a2258f | ||
|
|
7f47a2fd25 | ||
|
|
8fe8318c77 | ||
|
|
ae81ec043d | ||
|
|
9ba96d3673 | ||
|
|
db204941ed | ||
|
|
5cd3f9d84d | ||
|
|
9160e61ac7 | ||
|
|
63ae732e72 | ||
|
|
ac9c3f88f9 | ||
|
|
52f1502051 | ||
|
|
e8acc9ca39 | ||
|
|
935f7cd5c3 | ||
|
|
e8290054c2 | ||
|
|
2c7c74743d | ||
|
|
4dd90d5493 | ||
|
|
241ad8174f | ||
|
|
98f5f73a41 | ||
|
|
62ad72fb11 | ||
|
|
4552931b95 | ||
|
|
39f9789fa1 | ||
|
|
8d7ff7f37e | ||
|
|
59606410f4 | ||
|
|
486529b112 | ||
|
|
b16938937b | ||
|
|
2ba3603a3d | ||
|
|
f6b9fd02b2 | ||
|
|
85becf861f | ||
|
|
7344828cf7 | ||
|
|
51a9565a72 | ||
|
|
bc30bf5566 | ||
|
|
dd111aac4a | ||
|
|
476b43d539 | ||
|
|
1d919e5874 | ||
|
|
1089c55b26 | ||
|
|
d4a866414f | ||
|
|
2ed00064e2 | ||
|
|
1d7add213e | ||
|
|
3572b60afd | ||
|
|
f8db1d11a7 | ||
|
|
bb7bf4e91b | ||
|
|
51dd86e6da | ||
|
|
4736bfeea6 | ||
|
|
d656d6d594 | ||
|
|
76e07d5012 | ||
|
|
037b520b2c | ||
|
|
748437ef7a | ||
|
|
d219999892 | ||
|
|
53bd1df8e5 | ||
|
|
2b88ef134b | ||
|
|
2eca835ec7 | ||
|
|
8d94a62b9c | ||
|
|
4035b9ac6c | ||
|
|
8a13a18737 | ||
|
|
8a67ea9ca2 | ||
|
|
31a110c37f | ||
|
|
6a08b2126f | ||
|
|
47c238b1eb | ||
|
|
72c4db25f0 | ||
|
|
50f9186682 | ||
|
|
2cd22f725e | ||
|
|
1cab0c168e | ||
|
|
5dac4e3af6 | ||
|
|
09032fb4a5 | ||
|
|
48a8086519 | ||
|
|
c62a3f8ee6 | ||
|
|
682e435ded | ||
|
|
cdcf075635 | ||
|
|
7e027db02b | ||
|
|
4abaa67580 | ||
|
|
13d43425e5 | ||
|
|
0ba315243b | ||
|
|
1ac1e93bbf | ||
|
|
9655ca229f | ||
|
|
4b553dd659 | ||
|
|
bb22a1297b | ||
|
|
f5727af40e | ||
|
|
b842a1d9b1 | ||
|
|
2978133862 | ||
|
|
7422b99b42 | ||
|
|
d04a7de26b | ||
|
|
4383f81c0f | ||
|
|
36a9bf69de | ||
|
|
68d834fba0 | ||
|
|
64c9004036 | ||
|
|
350fb885b8 | ||
|
|
8d03f2dc80 | ||
|
|
220dcd0f5c | ||
|
|
3671d7549d | ||
|
|
a38910b381 | ||
|
|
941b8e84f5 | ||
|
|
382c860d9b | ||
|
|
3dd51a442d | ||
|
|
ed21e8c7b2 | ||
|
|
2b6ba32b2c | ||
|
|
14f582faeb | ||
|
|
768ac77ea2 | ||
|
|
f75a7c91eb | ||
|
|
104132c5d3 | ||
|
|
3a315c5575 | ||
|
|
91fb714250 | ||
|
|
10d868efa4 | ||
|
|
3b8bc42266 | ||
|
|
41617f5560 | ||
|
|
9fb7f251f6 | ||
|
|
d8ca9d79c3 | ||
|
|
5398dbef95 | ||
|
|
a4345cedc5 | ||
|
|
ba574667c7 | ||
|
|
f2c1e279c9 | ||
|
|
51ad0ed830 | ||
|
|
60ff546fec | ||
|
|
f6088cbbe1 | ||
|
|
4b093dcdbb | ||
|
|
4f39a2e3da | ||
|
|
c9020d4879 | ||
|
|
c5b5e80de4 | ||
|
|
c1a8fdb940 | ||
|
|
ff3e100b33 | ||
|
|
e892473af7 | ||
|
|
3a143270c2 | ||
|
|
0aa2db8e91 | ||
|
|
1c8de51054 | ||
|
|
d3ab58a487 | ||
|
|
34c171f9fd | ||
|
|
9b2d49455a | ||
|
|
730b2371df | ||
|
|
f1afa864cd | ||
|
|
439cd77db8 | ||
|
|
4c35870dff | ||
|
|
9f3624d26e | ||
|
|
ac4e8514db | ||
|
|
646123f9ab | ||
|
|
11ef9dbdcb | ||
|
|
f3526b1d95 | ||
|
|
45d5159fe3 | ||
|
|
439e6b4ccf | ||
|
|
fb08322c17 | ||
|
|
c815e0fadc | ||
|
|
190ffab76d | ||
|
|
882bddf77e | ||
|
|
06e42dc689 | ||
|
|
4f1e1a38c9 | ||
|
|
a9c02c9cbc | ||
|
|
331cfb5b54 | ||
|
|
0b80ed6c2b | ||
|
|
38967eab64 | ||
|
|
3ad1ad4ef1 | ||
|
|
0c8f469246 | ||
|
|
03d9351dec | ||
|
|
b3fc6617e5 | ||
|
|
1fdc2e3091 | ||
|
|
c773c8f5d5 | ||
|
|
b188a05b69 | ||
|
|
d7ca3f15a4 | ||
|
|
406e240de1 | ||
|
|
f3689ac157 | ||
|
|
ce72ee04f4 | ||
|
|
694121d49a | ||
|
|
250b39bcc8 | ||
|
|
c74a2b4529 | ||
|
|
ff7bc9092d | ||
|
|
d6b6fa2baf | ||
|
|
bfd66deb37 | ||
|
|
bf149c075d | ||
|
|
a1e7ce415b | ||
|
|
2ecc007615 | ||
|
|
7a053e6df2 | ||
|
|
ab15bafc5b | ||
|
|
806f6cd2ab | ||
|
|
b7921c7dcb | ||
|
|
f6014d2e52 | ||
|
|
420c93aaa3 | ||
|
|
23ef51a4e8 | ||
|
|
c73dd60bd1 | ||
|
|
35a602cfef | ||
|
|
6ecd86a244 | ||
|
|
0cb28f906e | ||
|
|
426389b255 | ||
|
|
825c60e2bd | ||
|
|
46893e2f04 | ||
|
|
567f9c06cc | ||
|
|
9a1f1ddb8b | ||
|
|
d68eb28629 | ||
|
|
1a305f2dd7 | ||
|
|
cd22f5197b | ||
|
|
349b159a7b | ||
|
|
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 | ||
|
|
9cec353d40 | ||
|
|
c42561de45 | ||
|
|
c841ba1cba | ||
|
|
eb1971fb17 | ||
|
|
983db2f3c8 | ||
|
|
c87c4691f3 | ||
|
|
68c64cd942 | ||
|
|
dfb93e9682 | ||
|
|
b7ab825860 | ||
|
|
28619a6ce7 | ||
|
|
7eed6f56f6 | ||
|
|
234517ee0a | ||
|
|
a483ecdfdb | ||
|
|
97ee8d55ce | ||
|
|
7727562f44 | ||
|
|
f6686f149b | ||
|
|
2345eb3bb7 | ||
|
|
16abaccf96 | ||
|
|
8c8de45f30 | ||
|
|
f4f65e4c84 | ||
|
|
a8ae5e4d03 | ||
|
|
b91f03f082 | ||
|
|
e1396e57b6 | ||
|
|
67cbf25b96 | ||
|
|
e721ebe171 | ||
|
|
c2d760bccb | ||
|
|
5dc1396f05 | ||
|
|
5b1ceccd1f | ||
|
|
bf1751059c | ||
|
|
7e069afbb2 | ||
|
|
bacb813b31 | ||
|
|
c670372b41 | ||
|
|
ec9b8f980d | ||
|
|
28399f8ac6 | ||
|
|
ef5fa4dea0 | ||
|
|
84e82dd39a | ||
|
|
f842898102 | ||
|
|
1bf73c268d | ||
|
|
17ec85263c | ||
|
|
50ba235917 | ||
|
|
14fc21c379 | ||
|
|
306f2f980d | ||
|
|
a7a82b1c0a | ||
|
|
d806097b60 | ||
|
|
9f4b73d821 | ||
|
|
ff5d57039e | ||
|
|
db42863f54 | ||
|
|
946f21879c | ||
|
|
20b214f3a4 | ||
|
|
8aedc50f30 | ||
|
|
cd11171e33 | ||
|
|
bcb4e1abfd | ||
|
|
786b977603 | ||
|
|
5264d85a78 | ||
|
|
5713a6233f | ||
|
|
98ad4adcf3 | ||
|
|
304c023b4e | ||
|
|
7ce1dd4f5c | ||
|
|
332b19f35b | ||
|
|
774ea5240e | ||
|
|
221b7ed188 | ||
|
|
304339e309 | ||
|
|
bf9c9b8985 | ||
|
|
e85bc39315 | ||
|
|
ed32e07e34 | ||
|
|
9bd1f99b69 | ||
|
|
25f57cc683 | ||
|
|
fb4d605e33 | ||
|
|
426b276b08 | ||
|
|
a085d90af2 | ||
|
|
8023b85085 | ||
|
|
f17d2d7f90 | ||
|
|
aef06e837a | ||
|
|
d63f6cff08 | ||
|
|
354fbf6253 | ||
|
|
238ce2e858 | ||
|
|
c8b6bd1c2c | ||
|
|
dd5a509a99 | ||
|
|
970ddd44bf | ||
|
|
c0eded84a0 | ||
|
|
5a83ebe48e | ||
|
|
d90697d8db | ||
|
|
159c0a93d2 | ||
|
|
a6040bb53d | ||
|
|
7d39c886f4 | ||
|
|
771a90a588 | ||
|
|
7b1858a5ce | ||
|
|
c95226ec1e | ||
|
|
6bece3f371 | ||
|
|
48c3e5aa29 | ||
|
|
73ae2ffb9b | ||
|
|
34aaf7b157 | ||
|
|
904b08f497 | ||
|
|
5454c35430 | ||
|
|
aa98d7dc5d | ||
|
|
020c1c7975 | ||
|
|
cf98750f4b | ||
|
|
09ccae0f30 | ||
|
|
522cbacada | ||
|
|
841fa02b18 | ||
|
|
47041272d2 | ||
|
|
c7a6f4f186 | ||
|
|
2756984273 | ||
|
|
cc46fa34e8 | ||
|
|
b94cc655c2 | ||
|
|
1c5d34cb5f | ||
|
|
ace9ae0b24 | ||
|
|
91345c0bdd | ||
|
|
1790c6bd0f | ||
|
|
d72b899471 | ||
|
|
bf9bbabfd6 | ||
|
|
fff9b34ed7 | ||
|
|
ce3a8c1f46 | ||
|
|
c420fa4bc2 | ||
|
|
8e5f9067af | ||
|
|
306b0a2f62 | ||
|
|
96f4667755 | ||
|
|
2c53bd49f2 | ||
|
|
caa0961337 | ||
|
|
32d3b632d2 | ||
|
|
3945edb7fe | ||
|
|
928feee008 | ||
|
|
9ef4b00238 | ||
|
|
616a769ff5 | ||
|
|
ef2c96ac84 | ||
|
|
1c63da7f33 | ||
|
|
2e00e5f463 | ||
|
|
8360bf9d84 | ||
|
|
1520c096a4 | ||
|
|
a965bfd32e | ||
|
|
7741790bd8 | ||
|
|
f0e6f8cee2 | ||
|
|
c4a4dcd419 | ||
|
|
b89a04acd8 | ||
|
|
b7d2619651 | ||
|
|
c07e957e28 | ||
|
|
b183431c27 | ||
|
|
177353bf7a | ||
|
|
de2d6818c1 | ||
|
|
f758d8607a | ||
|
|
1164ef31ca | ||
|
|
2997273654 | ||
|
|
20edf7de41 | ||
|
|
7467c281cc | ||
|
|
3b8d7304ff | ||
|
|
6e274cbf20 | ||
|
|
3a0614641b | ||
|
|
c395dd5ebd | ||
|
|
1c9dc2ba3d | ||
|
|
52b98dd159 | ||
|
|
1426e78793 | ||
|
|
8eb2798e5c | ||
|
|
ec6af9a460 | ||
|
|
ec844961c7 | ||
|
|
e1c9cb2c00 | ||
|
|
2c0d26e06d | ||
|
|
3c36eafdfa | ||
|
|
e22ab787dd | ||
|
|
948b75aeda | ||
|
|
4dcef89301 | ||
|
|
12b29a760a | ||
|
|
43ca0e149f | ||
|
|
ad1666dd0a | ||
|
|
1b4d4f5695 | ||
|
|
a714e6084a | ||
|
|
a8dd5d85a5 | ||
|
|
83363c7077 | ||
|
|
d99a57365f | ||
|
|
3cb41cf6b0 | ||
|
|
5201626d6a | ||
|
|
f812e74324 | ||
|
|
0668d6d290 | ||
|
|
46d1c2c86c | ||
|
|
ee7fe1fc10 | ||
|
|
c997495b5d | ||
|
|
605b5755bf | ||
|
|
b60c761cce | ||
|
|
12d6df6962 | ||
|
|
34972c77f5 | ||
|
|
2c5db64677 | ||
|
|
fa33d53180 | ||
|
|
57b877f445 | ||
|
|
dcb6d8286b | ||
|
|
3a8c515e21 | ||
|
|
50984f1475 | ||
|
|
4338bade5b | ||
|
|
ed10ecd142 | ||
|
|
6815297b0c | ||
|
|
c72bf9ea31 | ||
|
|
d4f4d9c789 | ||
|
|
61ef27c345 | ||
|
|
9c73e59772 | ||
|
|
0405ba3f31 | ||
|
|
f5f97fe0fd | ||
|
|
82a8bd01fc | ||
|
|
b15408e693 | ||
|
|
74ac9ffa1c | ||
|
|
ed5f035d1c | ||
|
|
0f5417bab4 | ||
|
|
0311418bfc | ||
|
|
bc449fec48 | ||
|
|
1e7240d6dc | ||
|
|
2732d63362 | ||
|
|
78bf56e327 | ||
|
|
01eb25cb39 | ||
|
|
1f612b466c | ||
|
|
0a85e01322 | ||
|
|
3cb4e6e854 | ||
|
|
d566eb2a36 | ||
|
|
71890a34be | ||
|
|
c254a3490c | ||
|
|
a032026f46 | ||
|
|
e1ee61d31b | ||
|
|
ca4694e1af | ||
|
|
9fea8f4488 | ||
|
|
f9f54da914 | ||
|
|
97c1a27031 | ||
|
|
0d8d5fdb32 | ||
|
|
25c448627e | ||
|
|
baa83c6ee6 | ||
|
|
2f7a6ef0a1 | ||
|
|
c50332daa2 | ||
|
|
8dbb282416 | ||
|
|
ef8f7d4fc0 | ||
|
|
74ea4ae9c2 | ||
|
|
2cf1b1420c | ||
|
|
8bdcf54d9f | ||
|
|
a815aa15ec | ||
|
|
b1dbba6224 | ||
|
|
35901a125d | ||
|
|
52b28867a0 | ||
|
|
d7d71b60f8 | ||
|
|
465e952ae4 | ||
|
|
200658ae6d | ||
|
|
e58f5e3617 | ||
|
|
78ba3176f2 | ||
|
|
abd02570f4 | ||
|
|
97b8d4eeea | ||
|
|
92036356ca | ||
|
|
6842df5577 | ||
|
|
793352dfbf | ||
|
|
b96535abff | ||
|
|
2b4b50ee08 | ||
|
|
e2795716f9 | ||
|
|
47d5783700 | ||
|
|
9f6c677276 | ||
|
|
70f117f63f | ||
|
|
83c8e914ae | ||
|
|
38b6a86858 | ||
|
|
76267b7db6 | ||
|
|
4cd0febb18 | ||
|
|
9d9488edd1 | ||
|
|
a1483c263f | ||
|
|
8e42c4ae31 | ||
|
|
bf15ba3a78 | ||
|
|
20a0592b37 | ||
|
|
5422054ae4 | ||
|
|
ac3844aa95 | ||
|
|
1b41ffba60 | ||
|
|
3393d81452 | ||
|
|
25baee266c | ||
|
|
731467d4e9 | ||
|
|
bd03d75f14 | ||
|
|
260dd03179 | ||
|
|
35f7d8a4cc | ||
|
|
84fb5e59a9 | ||
|
|
838ba3ad4f | ||
|
|
ad7be3b397 | ||
|
|
27ca987284 | ||
|
|
2b8f7824c2 | ||
|
|
5679271913 | ||
|
|
c9491f47e1 | ||
|
|
5e2415cb37 | ||
|
|
2715efd910 | ||
|
|
b65a356669 | ||
|
|
9ec0d3bc8c | ||
|
|
acd0ecf38a | ||
|
|
b75db38e45 | ||
|
|
c7a79cb8b4 | ||
|
|
7e5c22706b | ||
|
|
7d5a2c4dfc | ||
|
|
584d03c802 | ||
|
|
0646ffc93f | ||
|
|
0f8b506c76 | ||
|
|
f0d849a702 | ||
|
|
0d196ef7b7 | ||
|
|
75edcef099 | ||
|
|
ce82b14f6b | ||
|
|
e102fb2880 | ||
|
|
203026a57b | ||
|
|
86e39f9b44 | ||
|
|
edcad9c251 | ||
|
|
cb6d433e15 |
21
.coveragerc
Normal file
@@ -0,0 +1,21 @@
|
||||
# Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
[report]
|
||||
# Regexes for lines to exclude from consideration
|
||||
exclude_lines =
|
||||
pragma: no cover
|
||||
def __repr__
|
||||
raise AssertionError
|
||||
raise NotImplementedError
|
||||
56
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
What kind of issue is this?
|
||||
|
||||
- [ ] Question. This issue tracker is not the place for questions. If you want to ask how to do
|
||||
something, or to understand why something isn't working the way you expect it to, use
|
||||
our Community Forums https://community.platformio.org
|
||||
|
||||
- [ ] PlatformIO IDE. All issues related to PlatformIO IDE should be reported to appropriate repository
|
||||
https://github.com/platformio/platformio-atom-ide/issues
|
||||
|
||||
- [ ] Development Platform. All issues related to Development Platform should be reported to appropriate repository. Search it using link below
|
||||
https://github.com/platformio?query=platform-
|
||||
|
||||
- [ ] Feature Request. Start by telling us what problem 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 Core. If you’ve found a bug, please provide an information below.
|
||||
|
||||
*You can erase any parts of this template not applicable to your Issue.*
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
### Configuration
|
||||
|
||||
**Operating system**:
|
||||
|
||||
**PlatformIO Version** (`platformio --version`):
|
||||
|
||||
### Description of problem
|
||||
|
||||
|
||||
#### Steps to Reproduce
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
### Actual Results
|
||||
|
||||
|
||||
### Expected Results
|
||||
|
||||
|
||||
### If problems with PlatformIO Build System:
|
||||
|
||||
**The content of `platformio.ini`:**
|
||||
```ini
|
||||
Insert here...
|
||||
```
|
||||
|
||||
**Source file to reproduce issue:**
|
||||
```cpp
|
||||
Insert here...
|
||||
```
|
||||
|
||||
### Additional info
|
||||
8
.gitignore
vendored
@@ -2,8 +2,10 @@
|
||||
*.pyc
|
||||
.pioenvs
|
||||
.tox
|
||||
.sconsign.dblite
|
||||
examples/ide-eclipse/.metadata
|
||||
examples/ide-eclipse/RemoteSystemsTempFiles
|
||||
docs/_build
|
||||
dist
|
||||
build
|
||||
.cache
|
||||
coverage.xml
|
||||
.coverage
|
||||
htmlcov
|
||||
|
||||
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
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
[settings]
|
||||
line_length=79
|
||||
known_third_party=click,requests,serial,SCons,pytest,bottle
|
||||
known_third_party=bottle,click,lockfile,pytest,requests,semantic_version,serial,SCons
|
||||
|
||||
270
.pylintrc
@@ -1,29 +1,9 @@
|
||||
[MASTER]
|
||||
|
||||
# Specify a configuration file.
|
||||
#rcfile=
|
||||
|
||||
# Python code to execute, usually for sys.path manipulation such as
|
||||
# pygtk.require().
|
||||
#init-hook=
|
||||
|
||||
# Profiled execution.
|
||||
profile=no
|
||||
|
||||
# Add files or directories to the blacklist. They should be base names, not
|
||||
# paths.
|
||||
ignore=CVS
|
||||
|
||||
# Pickle collected data for later comparisons.
|
||||
persistent=yes
|
||||
|
||||
# List of plugins (as comma separated values of python modules names) to load,
|
||||
# usually to register additional checkers.
|
||||
load-plugins=
|
||||
|
||||
|
||||
[MESSAGES CONTROL]
|
||||
|
||||
# Only show warnings with the listed confidence levels. Leave empty to show
|
||||
# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED
|
||||
confidence=
|
||||
|
||||
# Enable the message, report, category or checker with the given id(s). You can
|
||||
# either give multiple identifier separated by comma (,) or put this option
|
||||
# multiple time. See also the "--disable" option for examples.
|
||||
@@ -38,244 +18,6 @@ load-plugins=
|
||||
# --enable=similarities". If you want to run only the classes checker, but have
|
||||
# no Warning level messages displayed, use"--disable=all --enable=classes
|
||||
# --disable=W"
|
||||
disable=C0103,C0111,E0611,F0401,I0011,R0801,R0903,R0922
|
||||
# disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating
|
||||
|
||||
|
||||
[REPORTS]
|
||||
|
||||
# Set the output format. Available formats are text, parseable, colorized, msvs
|
||||
# (visual studio) and html. You can also give a reporter class, eg
|
||||
# mypackage.mymodule.MyReporterClass.
|
||||
output-format=text
|
||||
|
||||
# Put messages in a separate file for each module / package specified on the
|
||||
# command line instead of printing them on stdout. Reports (if any) will be
|
||||
# written in a file name "pylint_global.[txt|html]".
|
||||
files-output=no
|
||||
|
||||
# Tells whether to display a full report or only the messages
|
||||
reports=yes
|
||||
|
||||
# Python expression which should return a note less than 10 (10 is the highest
|
||||
# note). You have access to the variables errors warning, statement which
|
||||
# respectively contain the number of errors / warnings messages and the total
|
||||
# number of statements analyzed. This is used by the global evaluation report
|
||||
# (RP0004).
|
||||
evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
|
||||
|
||||
# Add a comment according to your evaluation note. This is used by the global
|
||||
# evaluation report (RP0004).
|
||||
comment=no
|
||||
|
||||
# Template used to display messages. This is a python new-style format string
|
||||
# used to format the message information. See doc for all details
|
||||
#msg-template=
|
||||
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
||||
|
||||
|
||||
[BASIC]
|
||||
|
||||
# Required attributes for module, separated by a comma
|
||||
required-attributes=
|
||||
|
||||
# List of builtins function names that should not be used, separated by a comma
|
||||
bad-functions=map,filter,apply,input
|
||||
|
||||
# Regular expression which should only match correct module names
|
||||
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
|
||||
|
||||
# Regular expression which should only match correct module level names
|
||||
const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
|
||||
|
||||
# Regular expression which should only match correct class names
|
||||
class-rgx=[A-Z_][a-zA-Z0-9]+$
|
||||
|
||||
# Regular expression which should only match correct function names
|
||||
function-rgx=[a-z_][a-z0-9_]{2,30}$
|
||||
|
||||
# Regular expression which should only match correct method names
|
||||
method-rgx=[a-z_][a-z0-9_]{2,30}$
|
||||
|
||||
# Regular expression which should only match correct instance attribute names
|
||||
attr-rgx=[a-z_][a-z0-9_]{2,30}$
|
||||
|
||||
# Regular expression which should only match correct argument names
|
||||
argument-rgx=[a-z_][a-z0-9_]{2,30}$
|
||||
|
||||
# Regular expression which should only match correct variable names
|
||||
variable-rgx=[a-z_][a-z0-9_]{2,30}$
|
||||
|
||||
# Regular expression which should only match correct attribute names in class
|
||||
# bodies
|
||||
class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$
|
||||
|
||||
# Regular expression which should only match correct list comprehension /
|
||||
# generator expression variable names
|
||||
inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
|
||||
|
||||
# Good variable names which should always be accepted, separated by a comma
|
||||
good-names=i,j,k,ex,Run,_
|
||||
|
||||
# Bad variable names which should always be refused, separated by a comma
|
||||
bad-names=foo,bar,baz,toto,tutu,tata
|
||||
|
||||
# Regular expression which should only match function or class names that do
|
||||
# not require a docstring.
|
||||
no-docstring-rgx=__.*__
|
||||
|
||||
# Minimum line length for functions/classes that require docstrings, shorter
|
||||
# ones are exempt.
|
||||
docstring-min-length=-1
|
||||
|
||||
|
||||
[FORMAT]
|
||||
|
||||
# Maximum number of characters on a single line.
|
||||
max-line-length=80
|
||||
|
||||
# Regexp for a line that is allowed to be longer than the limit.
|
||||
ignore-long-lines=^\s*(# )?<?https?://\S+>?$
|
||||
|
||||
# Allow the body of an if to be on the same line as the test if there is no
|
||||
# else.
|
||||
single-line-if-stmt=no
|
||||
|
||||
# List of optional constructs for which whitespace checking is disabled
|
||||
no-space-check=trailing-comma,dict-separator
|
||||
|
||||
# Maximum number of lines in a module
|
||||
max-module-lines=1000
|
||||
|
||||
# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
|
||||
# tab).
|
||||
indent-string=' '
|
||||
|
||||
|
||||
[MISCELLANEOUS]
|
||||
|
||||
# List of note tags to take in consideration, separated by a comma.
|
||||
notes=FIXME,XXX,TODO
|
||||
|
||||
|
||||
[SIMILARITIES]
|
||||
|
||||
# Minimum lines number of a similarity.
|
||||
min-similarity-lines=4
|
||||
|
||||
# Ignore comments when computing similarities.
|
||||
ignore-comments=yes
|
||||
|
||||
# Ignore docstrings when computing similarities.
|
||||
ignore-docstrings=yes
|
||||
|
||||
# Ignore imports when computing similarities.
|
||||
ignore-imports=no
|
||||
|
||||
|
||||
[TYPECHECK]
|
||||
|
||||
# Tells whether missing members accessed in mixin class should be ignored. A
|
||||
# mixin class is detected if its name ends with "mixin" (case insensitive).
|
||||
ignore-mixin-members=yes
|
||||
|
||||
# List of classes names for which member attributes should not be checked
|
||||
# (useful for classes with attributes dynamically set).
|
||||
ignored-classes=SQLObject
|
||||
|
||||
# When zope mode is activated, add a predefined set of Zope acquired attributes
|
||||
# to generated-members.
|
||||
zope=no
|
||||
|
||||
# List of members which are set dynamically and missed by pylint inference
|
||||
# system, and so shouldn't trigger E0201 when accessed. Python regular
|
||||
# expressions are accepted.
|
||||
generated-members=REQUEST,acl_users,aq_parent
|
||||
|
||||
|
||||
[VARIABLES]
|
||||
|
||||
# Tells whether we should check for unused import in __init__ files.
|
||||
init-import=no
|
||||
|
||||
# A regular expression matching the beginning of the name of dummy variables
|
||||
# (i.e. not used).
|
||||
dummy-variables-rgx=_$|dummy
|
||||
|
||||
# List of additional names supposed to be defined in builtins. Remember that
|
||||
# you should avoid to define new builtins when possible.
|
||||
additional-builtins=
|
||||
|
||||
|
||||
[CLASSES]
|
||||
|
||||
# List of interface methods to ignore, separated by a comma. This is used for
|
||||
# instance to not check methods defines in Zope's Interface base class.
|
||||
ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
|
||||
|
||||
# List of method names used to declare (i.e. assign) instance attributes.
|
||||
defining-attr-methods=__init__,__new__,setUp
|
||||
|
||||
# List of valid names for the first argument in a class method.
|
||||
valid-classmethod-first-arg=cls
|
||||
|
||||
# List of valid names for the first argument in a metaclass class method.
|
||||
valid-metaclass-classmethod-first-arg=mcs
|
||||
|
||||
|
||||
[DESIGN]
|
||||
|
||||
# Maximum number of arguments for function / method
|
||||
max-args=5
|
||||
|
||||
# Argument names that match this expression will be ignored. Default to name
|
||||
# with leading underscore
|
||||
ignored-argument-names=_.*
|
||||
|
||||
# Maximum number of locals for function / method body
|
||||
max-locals=15
|
||||
|
||||
# Maximum number of return / yield for function / method body
|
||||
max-returns=6
|
||||
|
||||
# Maximum number of branch for function / method body
|
||||
max-branches=12
|
||||
|
||||
# Maximum number of statements in function / method body
|
||||
max-statements=50
|
||||
|
||||
# Maximum number of parents for a class (see R0901).
|
||||
max-parents=7
|
||||
|
||||
# Maximum number of attributes for a class (see R0902).
|
||||
max-attributes=7
|
||||
|
||||
# Minimum number of public methods for a class (see R0903).
|
||||
min-public-methods=2
|
||||
|
||||
# Maximum number of public methods for a class (see R0904).
|
||||
max-public-methods=20
|
||||
|
||||
|
||||
[IMPORTS]
|
||||
|
||||
# Deprecated modules which should not be used, separated by a comma
|
||||
deprecated-modules=regsub,TERMIOS,Bastion,rexec
|
||||
|
||||
# Create a graph of every (i.e. internal and external) dependencies in the
|
||||
# given file (report RP0402 must not be disabled)
|
||||
import-graph=
|
||||
|
||||
# Create a graph of external dependencies in the given file (report RP0402 must
|
||||
# not be disabled)
|
||||
ext-import-graph=
|
||||
|
||||
# Create a graph of internal dependencies in the given file (report RP0402 must
|
||||
# not be disabled)
|
||||
int-import-graph=
|
||||
|
||||
|
||||
[EXCEPTIONS]
|
||||
|
||||
# Exceptions that will emit a warning when being caught. Defaults to
|
||||
# "Exception"
|
||||
overgeneral-exceptions=Exception
|
||||
disable=locally-disabled,missing-docstring,invalid-name,too-few-public-methods,redefined-variable-type,import-error,similarities,unsupported-membership-test,unsubscriptable-object,ungrouped-imports,cyclic-import
|
||||
|
||||
3
.style.yapf
Normal file
@@ -0,0 +1,3 @@
|
||||
[style]
|
||||
blank_line_before_nested_class_or_def = true
|
||||
allow_multiline_lambdas = true
|
||||
45
.travis.yml
@@ -1,15 +1,42 @@
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
|
||||
env:
|
||||
- TOX_ENV=docs
|
||||
- TOX_ENV=lint
|
||||
- TOX_ENV=py26
|
||||
- TOX_ENV=py27
|
||||
matrix:
|
||||
include:
|
||||
- os: linux
|
||||
sudo: false
|
||||
python: 2.7
|
||||
env: TOX_ENV=docs
|
||||
- os: linux
|
||||
sudo: false
|
||||
python: 2.7
|
||||
env: TOX_ENV=lint
|
||||
- os: linux
|
||||
sudo: required
|
||||
python: 2.7
|
||||
env: TOX_ENV=py27
|
||||
- os: osx
|
||||
language: generic
|
||||
env: TOX_ENV=py27
|
||||
|
||||
install:
|
||||
- pip install tox
|
||||
- git submodule update --init --recursive
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then sudo pip install -U tox; else pip install -U tox; fi
|
||||
|
||||
# temporary hook to fix issue with gcc-pic32
|
||||
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo apt-get install -qq lib32z1 lib32ncurses5 lib32bz2-1.0; fi
|
||||
|
||||
script:
|
||||
- tox -e $TOX_ENV
|
||||
- tox -e $TOX_ENV
|
||||
|
||||
after_success:
|
||||
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then tox -e coverage; fi
|
||||
- if [[ "$TOX_ENV" == "py27" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then bash <(curl -s https://codecov.io/bash); fi
|
||||
|
||||
notifications:
|
||||
email: false
|
||||
|
||||
slack:
|
||||
rooms:
|
||||
secure: JD6VGfN4+SLU2CwDdiIOr1VgwD+zbYUCE/srwyGuHavnjIkPItkl6T6Bn8Y4VrU6ysbuKotfdV2TAJJ82ivFbY8BvZBc7FBcYp/AGQ4FaCCV5ySv8RDAcQgdE12oaGzMdODiLqsB85f65zOlAFa+htaXyEiRTcotn6Y2hupatrI=
|
||||
on_failure: always
|
||||
on_success: change
|
||||
|
||||
21
CONTRIBUTING.md
Normal file
@@ -0,0 +1,21 @@
|
||||
Contributing
|
||||
------------
|
||||
|
||||
To get started, <a href="https://www.clahub.com/agreements/platformio/platformio">sign the Contributor License Agreement</a>.
|
||||
|
||||
1. Fork the repository on GitHub.
|
||||
2. Make a branch off of ``develop``
|
||||
3. Run ``pip install tox``
|
||||
4. Go to the root of project where is located ``tox.ini`` and run ``tox -e develop``
|
||||
5. Activate current development environment:
|
||||
|
||||
* Windows: ``.tox\develop\Scripts\activate``
|
||||
* Bash/ZSH: ``source .tox/develop/bin/activate``
|
||||
* Fish: ``source .tox/bin/activate.fish``
|
||||
|
||||
6. Make changes to code, documentation, etc.
|
||||
7. Lint source code ``tox -e lint``
|
||||
8. Run the tests ``tox -e py27``
|
||||
9. Build documentation ``tox -e docs`` (creates a directory _build under docs where you can find the html)
|
||||
10. Commit changes to your forked repository
|
||||
11. Submit a Pull Request on GitHub.
|
||||
888
HISTORY.rst
187
LICENSE
@@ -1,21 +1,174 @@
|
||||
The MIT License (MIT)
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
Copyright (c) 2014-2015 Ivan Kravets
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
1. Definitions.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
23
Makefile
Normal file
@@ -0,0 +1,23 @@
|
||||
|
||||
lint:
|
||||
pylint --rcfile=./.pylintrc ./platformio
|
||||
|
||||
isort:
|
||||
isort -rc ./platformio
|
||||
isort -rc ./tests
|
||||
|
||||
yapf:
|
||||
yapf --recursive --in-place platformio/
|
||||
|
||||
before-commit: isort yapf lint
|
||||
|
||||
clean-docs:
|
||||
rm -rf docs/_build
|
||||
|
||||
clean: clean-docs
|
||||
find . -name \*.pyc -delete
|
||||
find . -name __pycache__ -delete
|
||||
rm -rf .cache
|
||||
rm -rf build
|
||||
rm -rf htmlcov
|
||||
rm -f .coverage
|
||||
192
README.rst
@@ -7,67 +7,87 @@ 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://gemnasium.com/platformio/platformio.png
|
||||
:target: https://gemnasium.com/platformio/platformio
|
||||
:alt: Dependency Status
|
||||
.. image:: https://codecov.io/gh/platformio/platformio/branch/develop/graph/badge.svg
|
||||
:target: https://codecov.io/gh/platformio/platformio
|
||||
.. image:: https://requires.io/github/platformio/platformio/requirements.svg?branch=develop
|
||||
:target: https://requires.io/github/platformio/platformio/requirements/?branch=develop
|
||||
:alt: Requirements Status
|
||||
.. image:: https://img.shields.io/pypi/v/platformio.svg
|
||||
:target: https://pypi.python.org/pypi/platformio/
|
||||
:alt: Latest Version
|
||||
.. image:: https://img.shields.io/pypi/dm/platformio.svg
|
||||
:target: https://pypi.python.org/pypi/platformio/
|
||||
:alt: Downloads
|
||||
.. image:: https://img.shields.io/pypi/l/platformio.svg
|
||||
:target: https://pypi.python.org/pypi/platformio/
|
||||
:alt: License
|
||||
.. image:: https://badges.gitter.im/Join%20Chat.svg
|
||||
:alt: Join the chat at https://gitter.im/platformio/platformio
|
||||
:target: https://gitter.im/platformio/platformio
|
||||
.. image:: https://www.openhub.net/p/platformio/widgets/project_thin_badge.gif
|
||||
:target: https://www.openhub.net/p/platformio
|
||||
.. image:: https://img.shields.io/PlatformIO/Community.png
|
||||
:alt: Community Forums
|
||||
:target: https://community.platformio.org
|
||||
.. image:: https://img.shields.io/PlatformIO/Plus.png?color=orange
|
||||
:alt: PlatformIO Plus: Professional solutions for an awesome open source PlatformIO ecosystem
|
||||
:target: https://pioplus.com
|
||||
|
||||
`Website + Library Search <http://platformio.org>`_ |
|
||||
`Documentation <http://docs.platformio.org>`_ |
|
||||
`Project Examples <https://github.com/platformio/platformio/tree/develop/examples>`_ |
|
||||
`Blog <http://www.ikravets.com/category/computer-life/platformio>`_ |
|
||||
`Reddit <http://www.reddit.com/r/platformio/>`_ |
|
||||
`Twitter <https://twitter.com/PlatformIO_Org>`_
|
||||
**Quick Links:** `Home Page <http://platformio.org>`_ |
|
||||
`PlatformIO Plus <https://pioplus.com>`_ |
|
||||
`PlatformIO IDE <http://platformio.org/platformio-ide>`_ |
|
||||
`Project Examples <https://github.com/platformio/platformio-examples/tree/develop>`_ |
|
||||
`Docs <http://docs.platformio.org>`_ |
|
||||
`Donate <http://platformio.org/donate>`_ |
|
||||
`Contact Us <http://platformio.org/contact>`_
|
||||
|
||||
**Social:** `Twitter <https://twitter.com/PlatformIO_Org>`_ |
|
||||
`Facebook <https://www.facebook.com/platformio>`_ |
|
||||
`Hackaday <https://hackaday.io/project/7980-platformio>`_ |
|
||||
`Bintray <https://bintray.com/platformio>`_ |
|
||||
`Community <https://community.platformio.org>`_ |
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-logo.png
|
||||
:target: http://platformio.org
|
||||
|
||||
`PlatformIO <http://platformio.org>`_ is a cross-platform code builder
|
||||
and the missing library manager (Ready for embedded development, IDE and
|
||||
Continuous integration, Arduino and MBED compatible).
|
||||
`PlatformIO <http://platformio.org>`_ is an open source ecosystem for IoT
|
||||
development. Cross-platform build system and library manager. Continuous and
|
||||
IDE integration. Arduino, ESP8266 and ARM mbed compatible
|
||||
|
||||
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
|
||||
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
|
||||
libOpenCM3, etc.*
|
||||
* **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)
|
||||
* **Embedded Boards** - Rapid Embedded Programming, IDE and Continuous
|
||||
Integration in a few steps with PlatformIO thanks to built-in project
|
||||
generator for the most popular embedded boards and IDE
|
||||
* **Library Manager** - Hundreds Popular Libraries are organized into single
|
||||
Web 2.0 platform: list by categories, keywords, authors, compatible
|
||||
platforms and frameworks; learn via examples; be up-to-date with the latest
|
||||
version.
|
||||
|
||||
* `Get Started <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>`_
|
||||
*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.*
|
||||
|
||||
You have **no need** to install any *IDE* or compile any tool chains. *PlatformIO*
|
||||
has pre-built different development platforms and pre-configured settings for
|
||||
the most popular embedded boards. For further details, please
|
||||
refer to `What is PlatformIO? <http://docs.platformio.org/en/latest/faq.html#what-is-platformio>`_
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-demo-wiring.gif
|
||||
:target: http://platformio.org
|
||||
|
||||
* `PlatformIO Plus and professional solutions <https://pioplus.com>`_
|
||||
* `PlatformIO IDE <http://platformio.org/platformio-ide>`_
|
||||
* `Get Started <http://platformio.org/get-started>`_
|
||||
* `Library Search and Registry <http://platformio.org/lib>`_
|
||||
* `Development Platforms <http://platformio.org/platforms>`_
|
||||
* `Frameworks <http://platformio.org/frameworks>`_
|
||||
* `Embedded Boards Explorer <http://platformio.org/boards>`_
|
||||
* `Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
|
||||
* `User Guide <http://docs.platformio.org/en/stable/userguide/index.html>`_
|
||||
* `Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>`_
|
||||
* `IDE Integration <http://docs.platformio.org/en/stable/ide.html>`_
|
||||
* `Articles about us <http://docs.platformio.org/en/stable/articles.html>`_
|
||||
* `FAQ <http://docs.platformio.org/en/stable/faq.html>`_
|
||||
* `Release Notes <http://docs.platformio.org/en/stable/history.html>`_
|
||||
|
||||
Use whenever. *Run everywhere.*
|
||||
-------------------------------
|
||||
*PlatformIO* is written in pure *Python* and **doesn't depend** on any
|
||||
additional libraries/tools from an operation system. It allows you to use
|
||||
additional libraries/tools from an operating system. It allows you to use
|
||||
*PlatformIO* beginning from *PC (Mac, Linux, Win)* and ending with credit-card
|
||||
sized computers (`Raspberry Pi <http://www.raspberrypi.org>`_,
|
||||
`BeagleBone <http://beagleboard.org>`_,
|
||||
@@ -76,17 +96,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*
|
||||
* `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html>`_
|
||||
* `IDE Integration <http://docs.platformio.org/en/stable/ide.html>`_ with
|
||||
*Arduino, Atom, Eclipse, Emacs, Energia, Qt Creator, Sublime Text, Vim, Visual Studio*
|
||||
* Cloud compiling and `Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>`_
|
||||
with *AppVeyor, Circle CI, Drone, Shippable, Travis CI*
|
||||
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/latest/userguide/cmd_serialports.html#platformio-serialports-monitor>`_ and configurable
|
||||
`build -flags/-options <http://docs.platformio.org/en/latest/projectconf.html#build-flags>`_
|
||||
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/stable/userguide/cmd_serialports.html#platformio-serialports-monitor>`_ and configurable
|
||||
`build -flags/-options <http://docs.platformio.org/en/stable/projectconf.html#build-flags>`_
|
||||
* Automatic **firmware uploading**
|
||||
* 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
|
||||
@@ -97,10 +117,10 @@ The Missing Library Manager. *It's here!*
|
||||
*PlatformIO Library Manager* is the missing library manager for development
|
||||
platforms which allows you to organize and have up-to-date external libraries.
|
||||
|
||||
* Friendly `Command-Line Interface <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
|
||||
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib>`_
|
||||
* Friendly `Command-Line Interface <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
|
||||
* Modern `Web 2.0 Library Search <http://platformio.org/lib>`_
|
||||
* Open Source `Library Registry API <https://github.com/platformio/platformio-api>`_
|
||||
* Library Crawler based on `library.json <http://docs.platformio.org/en/latest/librarymanager/config.html>`_
|
||||
* Library Crawler based on `library.json <http://docs.platformio.org/en/stable/librarymanager/config.html>`_
|
||||
specification
|
||||
* Library **dependency management**
|
||||
* Automatic library updating
|
||||
@@ -109,7 +129,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,
|
||||
@@ -119,50 +139,62 @@ cross-platform substitute for the classic *Make* utility.
|
||||
* Reliable detection of *build changes*
|
||||
* Improved support for *parallel builds*
|
||||
* Ability to share *built files in a cache*
|
||||
* Lookup for external libraries which are installed via `Library Manager <http://docs.platformio.org/en/latest/librarymanager/index.html>`_
|
||||
* Lookup for external libraries which are installed via `Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>`_
|
||||
|
||||
.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png
|
||||
:target: http://platformio.org
|
||||
:alt: PlatformIO Code Builder Architecture
|
||||
:alt: PlatformIO Build System Architecture
|
||||
|
||||
Single source code. *Multiple platforms.*
|
||||
-----------------------------------------
|
||||
*PlatformIO* allows developer to compile the same code with different
|
||||
development platforms using the *Only One Command*
|
||||
`platformio run <http://docs.platformio.org/en/latest/userguide/cmd_run.html>`_.
|
||||
*PlatformIO* allows the developer to compile the same code with different
|
||||
development platforms using only *One Command*
|
||||
`platformio run <http://docs.platformio.org/en/stable/userguide/cmd_run.html>`_.
|
||||
This happens due to
|
||||
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/latest/projectconf.html>`_
|
||||
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/stable/projectconf.html>`_
|
||||
where you can setup different environments with specific options (platform
|
||||
type, firmware uploading settings, pre-built framework, build flags and many
|
||||
more).
|
||||
|
||||
It has support for the most popular embedded platforms:
|
||||
|
||||
* `Atmel AVR <http://platformio.org/#!/platforms/atmelavr>`_
|
||||
* `Atmel SAM <http://platformio.org/#!/platforms/atmelsam>`_
|
||||
* `Espressif <http://platformio.org/#!/platforms/espressif>`_
|
||||
* `Freescale Kinetis <http://platformio.org/#!/platforms/freescalekinetis>`_
|
||||
* `Nordic nRF51 <http://platformio.org/#!/platforms/nordicnrf51>`_
|
||||
* `NXP LPC <http://platformio.org/#!/platforms/nxplpc>`_
|
||||
* `ST STM32 <http://platformio.org/#!/platforms/ststm32>`_
|
||||
* `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/stable/faq.html#what-is-platformio>`_
|
||||
|
||||
Licence
|
||||
Contributing
|
||||
------------
|
||||
|
||||
See `contributing guidelines <https://github.com/platformio/platformio/blob/develop/CONTRIBUTING.md>`_.
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
Copyright (C) 2014-2015 Ivan Kravets
|
||||
Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
|
||||
Licenced under the MIT Licence.
|
||||
The PlatformIO is licensed under the permissive Apache 2.0 license,
|
||||
so you can use it in both commercial and personal projects with confidence.
|
||||
|
||||
30
appveyor.yml
@@ -1,21 +1,21 @@
|
||||
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"
|
||||
- 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
|
||||
|
||||
notifications:
|
||||
- provider: Slack
|
||||
incoming_webhook:
|
||||
secure: E9H0SU0Ju7WLDvgxsV8cs3J62T3nTTX7QkEjsczN0Sto/c9hWkVfhc5gGWUkxhlD975cokHByKGJIdwYwCewqOI+7BrcT8U+nlga4Uau7J8=
|
||||
on_build_success: false
|
||||
on_build_failure: true
|
||||
on_build_status_changed: true
|
||||
|
||||
20
circle.yml
@@ -1,20 +0,0 @@
|
||||
machine:
|
||||
python:
|
||||
version: 2.7
|
||||
environment:
|
||||
TOX_ENV: docs
|
||||
TOX_ENV: lint
|
||||
TOX_ENV: py26
|
||||
TOX_ENV: py27
|
||||
|
||||
checkout:
|
||||
post:
|
||||
- git submodule update --init
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
- pip install tox
|
||||
|
||||
test:
|
||||
override:
|
||||
- tox -e $TOX_ENV
|
||||
BIN
docs/_static/ci-travis-logo.png
vendored
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
docs/_static/clang-installer-add-path.png
vendored
Normal file
|
After Width: | Height: | Size: 22 KiB |
330
docs/_static/extra.css
vendored
Normal file
@@ -0,0 +1,330 @@
|
||||
/**
|
||||
* Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
header,
|
||||
nav {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#pionav {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding-right: 15px;
|
||||
padding-left: 15px;
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
#pionav {
|
||||
display: block !important;
|
||||
}
|
||||
body {
|
||||
padding-top: 50px;
|
||||
}
|
||||
.wy-nav-side {
|
||||
top: 50px;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 970px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 1200px) {
|
||||
.container {
|
||||
width: 1150px;
|
||||
}
|
||||
}
|
||||
.container-fluid {
|
||||
padding-right: 15px;
|
||||
padding-left: 15px;
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
.container:before,
|
||||
.container:after,
|
||||
.container-fluid:before,
|
||||
.container-fluid:after,
|
||||
.nav:before,
|
||||
.nav:after,
|
||||
.navbar:before,
|
||||
.navbar:after,
|
||||
.navbar-header:before,
|
||||
.navbar-header:after {
|
||||
display: table;
|
||||
content: " ";
|
||||
}
|
||||
.container:after,
|
||||
.container-fluid:after,
|
||||
.nav:after,
|
||||
.navbar:after,
|
||||
.navbar-header:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.nav {
|
||||
padding-left: 0;
|
||||
margin-bottom: 0;
|
||||
list-style: none;
|
||||
}
|
||||
.nav > li {
|
||||
position: relative;
|
||||
display: block;
|
||||
}
|
||||
.nav > li > a {
|
||||
position: relative;
|
||||
display: block;
|
||||
padding: 10px 15px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.nav > li > a:hover,
|
||||
.nav > li > a:focus {
|
||||
text-decoration: none;
|
||||
background-color: #eee;
|
||||
}
|
||||
.nav > li > a > img {
|
||||
max-width: none;
|
||||
}
|
||||
.nav > li > a > i {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
position: relative;
|
||||
min-height: 50px;
|
||||
margin-bottom: 20px;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.navbar {
|
||||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.navbar-header {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.navbar-fixed-top {
|
||||
padding-right: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
.navbar-fixed-top {
|
||||
max-height: 340px;
|
||||
}
|
||||
.container > .navbar-header,
|
||||
.container-fluid > .navbar-header {
|
||||
margin-right: -15px;
|
||||
margin-left: -15px;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.container > .navbar-header,
|
||||
.container-fluid > .navbar-header {
|
||||
margin-right: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-fixed-top {
|
||||
position: fixed;
|
||||
right: 0;
|
||||
left: 0;
|
||||
z-index: 1030;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.navbar-fixed-top {
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
.navbar-fixed-top {
|
||||
top: 0;
|
||||
border-width: 0 0 1px;
|
||||
}
|
||||
.navbar-fixed-bottom {
|
||||
bottom: 0;
|
||||
margin-bottom: 0;
|
||||
border-width: 1px 0 0;
|
||||
}
|
||||
.navbar-brand {
|
||||
float: left;
|
||||
height: 50px;
|
||||
padding: 15px 15px;
|
||||
font-size: 18px;
|
||||
line-height: 20px;
|
||||
}
|
||||
.navbar-brand:hover,
|
||||
.navbar-brand:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
.navbar-brand > img {
|
||||
display: block;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.navbar > .container .navbar-brand,
|
||||
.navbar > .container-fluid .navbar-brand {
|
||||
margin-left: -15px;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
margin: 7.5px -15px;
|
||||
}
|
||||
.navbar-nav > li > a {
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
line-height: 20px;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
.navbar-nav {
|
||||
float: left;
|
||||
margin: 0;
|
||||
}
|
||||
.navbar-nav > li {
|
||||
float: left;
|
||||
}
|
||||
.navbar-nav > li > a {
|
||||
padding-top: 15px;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.navbar-left {
|
||||
float: left !important;
|
||||
}
|
||||
.navbar-right {
|
||||
float: right !important;
|
||||
margin-right: -15px;
|
||||
}
|
||||
.navbar-right ~ .navbar-right {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-inverse {
|
||||
background-color: #222;
|
||||
border-color: #080808;
|
||||
}
|
||||
.navbar-inverse .navbar-brand {
|
||||
color: #9d9d9d;
|
||||
}
|
||||
.navbar-inverse .navbar-brand:hover,
|
||||
.navbar-inverse .navbar-brand:focus {
|
||||
color: #fff;
|
||||
background-color: transparent;
|
||||
}
|
||||
.navbar-inverse .navbar-text {
|
||||
color: #9d9d9d;
|
||||
}
|
||||
.navbar-inverse .navbar-nav > li > a {
|
||||
color: #9d9d9d;
|
||||
}
|
||||
.navbar-inverse .navbar-nav > li > a:hover,
|
||||
.navbar-inverse .navbar-nav > li > a:focus {
|
||||
color: #fff;
|
||||
background-color: transparent;
|
||||
}
|
||||
.navbar-inverse .navbar-nav > .active > a,
|
||||
.navbar-inverse .navbar-nav > .active > a:hover,
|
||||
.navbar-inverse .navbar-nav > .active > a:focus {
|
||||
color: #fff;
|
||||
background-color: #080808;
|
||||
}
|
||||
|
||||
.navbar-header .navbar-brand {
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
/* Misc */
|
||||
|
||||
.wy-side-scroll .wy-side-nav-search .icon,
|
||||
.wy-side-scroll .wy-side-nav-search .version {
|
||||
display: none;
|
||||
visibility: none;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.wy-side-scroll {
|
||||
padding-bottom: 50px;
|
||||
}
|
||||
}
|
||||
|
||||
.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;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-inverse .navbar-nav > li.nav-pioplus > a,
|
||||
.navbar-inverse .navbar-nav > li.nav-pioplus > a:visited
|
||||
{
|
||||
color: #ff6600;
|
||||
}
|
||||
|
||||
.navbar-inverse .navbar-nav > li.nav-pioplus > a:hover {
|
||||
color: #ff9900;
|
||||
}
|
||||
|
||||
.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/favicon.ico
vendored
Normal file
|
After Width: | Height: | Size: 31 KiB |
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: 57 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-platformio-qtcreator-3.png
vendored
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 192 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/pioplus-unit-testing-demo.png
vendored
Normal file
|
After Width: | Height: | Size: 159 KiB |
BIN
docs/_static/platformio-demo-lib.gif
vendored
Normal file
|
After Width: | Height: | Size: 2.4 MiB |
BIN
docs/_static/platformio-demo-ota-esp8266.jpg
vendored
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
docs/_static/platformio-demo-platforms.gif
vendored
Normal file
|
After Width: | Height: | Size: 569 KiB |
BIN
docs/_static/platformio-demo-wiring.gif
vendored
Normal file
|
After Width: | Height: | Size: 2.0 MiB |
BIN
docs/_static/platformio-logo-xs.png
vendored
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
docs/_static/platformio-logo.png
vendored
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 28 KiB |
BIN
docs/_static/python-installer-add-path.png
vendored
Normal file
|
After Width: | Height: | Size: 63 KiB |
63
docs/_templates/footer.html
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
{% extends "!footer.html" %}
|
||||
|
||||
{% block extrafooter %}
|
||||
<link rel="stylesheet" href="{{ pathto('_static/extra.css', 1) }}" type="text/css" />
|
||||
<header id="pionav" class="navbar navbar-inverse navbar-fixed-top">
|
||||
<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">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/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 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 class="nav-pioplus"><a href="https://pioplus.com"><i class="fa fa-cubes fa-lg"></i>Plus</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,21 +1,117 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _articles:
|
||||
|
||||
Articles about us
|
||||
=================
|
||||
|
||||
.. note::
|
||||
If you've written article about PlatformIO and would like it listed on
|
||||
this page, `please edit this page <https://github.com/platformio/platformio/blob/develop/docs/articles.rst>`_.
|
||||
If you've written article about PlatformIO and would like it listed on
|
||||
this page, `please edit this page <https://github.com/platformio/platformio/blob/develop/docs/articles.rst>`_.
|
||||
|
||||
Here are recent articles about PlatformIO:
|
||||
Here are recent articles/reviews about PlatformIO:
|
||||
|
||||
2016
|
||||
^^^^
|
||||
|
||||
* Sep 12, 2016 - **Pedro Minatel** - `OTA – Como programar o ESP8266 pelo WiFi no platformIO (OTA programming for ESP8266 via Wi-Fi using PlatformIO, Portuguese) <http://pedrominatel.com.br/esp8266/ota-como-programar-o-esp8266-pelo-wifi-no-platformio/>`_
|
||||
* Sep 2, 2016 - **Tinkerman** `ESP8266: Optimizing files for SPIFFS with Gulp <http://tinkerman.cat/optimizing-files-for-spiffs-with-gulp/>`_
|
||||
* Aug 28, 2016 - **Tom Parker** `Using the BBC micro:bit with PlatformIO <http://www.lshift.net/blog/2016/08/28/using-the-bbc-microbit-with-platformio/>`_
|
||||
* Aug 24, 2016 - **Primal Cortex** `Cloud based continuous integration and delivery for IOT using PlatformIO <https://primalcortex.wordpress.com/2016/08/24/cloud-based-continuous-integration-and-delivery-for-iot-using-platformio/>`_
|
||||
* Aug 18, 2016 - **Primal Cortex** - `Installing PlatformIO on Arch Linux <https://primalcortex.wordpress.com/2016/08/18/platformio/>`_
|
||||
* Jul 26, 2016 - **Embedded Systems Laboratory** - `แนะนำการใช้งาน PlatformIO IDE สำหรับบอร์ด Arduino และ ESP8266 (Get started with PlatformIO IDE for Arduino board and ESP8266, Thai) <http://cpre.kmutnb.ac.th/esl/learning/index.php?article=intro_platformio-ide>`_
|
||||
* Jul 15, 2016 - **Jaime** - `ESP8266 Mobile Rick Roll Captive Portal <https://hackaday.io/project/12709-esp8266-mobile-rick-roll-captive-portal>`_
|
||||
* Jul 5, 2016 - **Ivan Kravets, Ph.D.** - `Explore the new development instruments for Arduino with PlatformIO ecosystem <http://www.slideshare.net/ivankravets/explore-the-new-development-instruments-for-arduino-with-platformio-ecosystem>`_
|
||||
* Jul 5, 2016 - **Belinda** - `Monte Bianco Arduino Developer Summit <http://www.arduino.org/blog/arduino-developer-summit>`_
|
||||
* Jul 1, 2016 - **Tam Hanna** - `Mikrocontroller-Gipfel in den Alpen: Arduino Developer Summit, Tag eins (Microcontroller peaks in the Alps: Arduino Developer Summit, Day One, German) <http://www.heise.de/make/meldung/Mikrocontroller-Gipfel-in-den-Alpen-Arduino-Developer-Summit-Tag-eins-3252421.html>`_
|
||||
* Jun 14, 2016 - **Glyn Hudson** - `OpenEnergyMonitor Part 2/3: Firmware Continuous Test & Build <https://blog.openenergymonitor.org/2016/06/auto-build-continuous-test-firmware/>`_
|
||||
* Jun 13, 2016 - **Daniel Eichhorn** - `New Weather Station Demo on Github <http://blog.squix.org/2016/06/new-weather-station-demo-on-github.html>`_
|
||||
* Jun 12, 2016 - **Glyn Hudson** - `OpenEnergyMonitor Part 1/3: PlatformIO open-source embedded development ecosystem <https://blog.openenergymonitor.org/2016/06/platformio/>`_
|
||||
* Jun 12, 2016 - **Uli Wolf** - `Nutzung von PlatformIO im Atom Editor zur Entwicklung von Arduino Code (Use PlatformIO and Atom Editor to develop Arduino code, German) <https://wolf-u.li/5668/nutzung-von-platform-io-im-atom-editor-zur-entwicklung-von-arduino-code/>`_
|
||||
* 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.com/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.org/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) <http://cmmakerclub.com/2016/03/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/>`_
|
||||
* Nov 09, 2015 - **ÁLvaro García Gómez** - `Programar con Arduino "The good way" (Programming with Arduino "The good way", Spanish) <http://congdegnu.es/2015/11/09/programar-con-arduino-the-good-way/>`_
|
||||
* Nov 06, 2015 - **nocd5** - `PlatformIOでmbedをオフラインビルドしSTM32 Nucleoボードでmrubyを使う (Use mruby in the offline build for STM32 Nucleo board with mbed and PlatformIO, Japanese) <http://qiita.com/nocd5/items/d5fda776240f7e7c17eb>`_
|
||||
* Oct 21, 2015 - **Vittorio Zaccaria** - `Using a cheap STM32 Nucleo to teach remote sensor monitoring <http://www.vittoriozaccaria.net/blog/2015/10/21/using-a-cheap-stm32-nucleo-to-teach-remote-sensor-monitoring.html>`_
|
||||
* Oct 18, 2015 - **Nico Coetzee** - `First Arduino I2C Experience with PlatformIO <https://electronicventurer.wordpress.com/2015/10/18/first-arduino-i2c-experience/>`_
|
||||
* Oct 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>`_
|
||||
* Aug 08, 2015 - **Josh Glendenning** - `Armstrap Eagle and PlatformIO <http://isobit.io/2015/08/08/armstrap.html>`_
|
||||
* Aug 01, 2015 - **Russell Davis** - `PlatformIO on the Raspberry Pi <http://www.russelldavis.org/2015/08/01/platformio-on-the-raspberry-pi/>`_
|
||||
* Jul 25, 2015 - **DinoTools** - `Erste Schritte mit PlatformIO (Getting Started with PlatformIO, German) <https://www.dinotools.de/2015/07/25/erste-schritte-mit-platformio/>`_
|
||||
* Jul 20, 2015 - **Eli Fatsi** - `Arduino Development in Atom Editor <http://viget.com/extend/arduino-development-in-atom-editor>`_
|
||||
* Jun 02, 2015 - **Alejandro Guirao Rodriguez** - `Discovering PlatformIO: The RaspberryPi / Arduino combo kit is a winner option when prototyping an IoT-style project <http://lekum.org/posts/discovering-platformio.html>`_
|
||||
* Jul 14, 2015 - **ElbinarIO** - `Programar para Arduino y otros microcontroladores desde la linea de comandos (Program Arguino and other microcontrollers from the command line, Spanish) <http://elbinario.net/2015/07/14/programar-para-arduino-y-otros-microcontroladores-desde-la-linea-de-comandos/>`_
|
||||
* Jul 11, 2015 - **TrojanC** - `Learning Arduino GitHub Repository <http://www.trojanc.co.za/2015/07/11/learning-arduino-github-repository/>`_
|
||||
* Jul 07, 2015 - **Sho Hashimoto** - `PlatformIOでArduino開発する(Arduino development in PlatformIO, Japanese) <http://shokai.org/blog/archives/10250>`_
|
||||
* Jun 02, 2015 - **Alejandro Guirao Rodríguez** - `Discovering PlatformIO: The RaspberryPi / Arduino combo kit is a winner option when prototyping an IoT-style project <http://lekum.org/posts/discovering-platformio/index.html>`_
|
||||
* May 17, 2015 - **S.S** - `コマンドラインでArduino開発 : vim + platformio (Arduino development at the command line: VIM + PlatformIO, Japanese) <http://qiita.com/caad1229/items/7b5fb47f034ae6e0baf2>`_
|
||||
* May 11, 2015 - **IT Hare** - `From Web Developer to Embedded One: Interview with Ivan Kravets, The Guy Behind PlatformIO. Part II <http://ithare.com/from-web-developer-to-embedded-one-interview-with-ivan-kravets-the-guy-behind-platformio-part-ii/>`_
|
||||
* May 4, 2015 - **IT Hare** - `From Web Developer to Embedded One: Interview with Ivan Kravets, The Guy Behind PlatformIO. Part I <http://ithare.com/from-web-development-to-embedded-one-interview-with-ivan-kravets-the-guy-behind-platformio-part-i/>`_
|
||||
* April 17, 2015 - **Michael Ball** - `PlatformIO - A Cross-Platform Code Builder and Missing Library Manager <http://arduino-pi.blogspot.com.es/2015/04/platformio-cross-platform-code-builder.html>`_
|
||||
* March 23, 2015 - **Atmel** - `Cross-board and cross-vendor embedded development with PlatformIO <http://blog.atmel.com/2015/03/23/cross-board-and-cross-vendor-embedded-development-with-platformio/>`_
|
||||
* March 22, 2015 - **Mark VandeWettering** - `Discovered a new tool for embedded development: PlatformIO <http://brainwagon.org/2015/03/22/discovered-a-new-tool-for-embedded-development-platformio/>`_
|
||||
* October 7, 2014 - **Ivan Kravets** - `Integration of PlatformIO library manager to Arduino and Energia IDEs <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_
|
||||
* June 20, 2014 - **Ivan Kravets** - `Building and debugging Atmel AVR (Arduino-based) project using Eclipse IDE+PlatformIO <http://www.ikravets.com/computer-life/programming/2014/06/20/building-and-debugging-atmel-avr-arduino-based-project-using-eclipse-ideplatformio>`_
|
||||
* June 17, 2014 - **Ivan Kravets** - `How was PlatformIO born or why I love Python World <http://www.ikravets.com/computer-life/programming/2014/06/17/how-was-platformio-born-or-why-i-love-python-world>`_
|
||||
* 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
|
||||
^^^^
|
||||
|
||||
* 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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci_appveyor:
|
||||
|
||||
AppVeyor
|
||||
@@ -22,6 +33,8 @@ containing the build results (showing success or failure), or by posting a
|
||||
message on an IRC channel. It can be configured to build project on a range of
|
||||
different :ref:`platforms`.
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
@@ -31,155 +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=<ID_1> --board=<ID_2> --board=<ID_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) {
|
||||
$pip_path = $python_home + "/Scripts/pip.exe"
|
||||
$python_path = $python_home + "/python.exe"
|
||||
if (-not(Test-Path $pip_path)) {
|
||||
Write-Host "Installing pip..."
|
||||
$webclient = New-Object System.Net.WebClient
|
||||
$webclient.DownloadFile($GET_PIP_URL, $GET_PIP_PATH)
|
||||
Write-Host "Executing:" $python_path $GET_PIP_PATH
|
||||
Start-Process -FilePath "$python_path" -ArgumentList "$GET_PIP_PATH" -Wait -Passthru
|
||||
} else {
|
||||
Write-Host "pip already installed."
|
||||
}
|
||||
}
|
||||
|
||||
function InstallPackage ($python_home, $pkg) {
|
||||
$pip_path = $python_home + "/Scripts/pip.exe"
|
||||
& $pip_path install -U $pkg
|
||||
}
|
||||
|
||||
function InstallScons ($python_home) {
|
||||
Write-Host "Start installing Scons"
|
||||
$pip_path = $python_home + "/Scripts/pip.exe"
|
||||
& $pip_path install --egg "http://dl.platformio.org/scons.zip"
|
||||
Write-Host "Scons installed"
|
||||
}
|
||||
|
||||
function main () {
|
||||
InstallPython $env:PYTHON_VERSION $env:PYTHON_ARCH $env:PYTHON_HOME
|
||||
InstallPip $env:PYTHON_HOME
|
||||
InstallPackage $env:PYTHON_HOME setuptools
|
||||
InstallPackage $env:PYTHON_HOME platformio
|
||||
InstallScons $env:PYTHON_HOME
|
||||
}
|
||||
|
||||
main
|
||||
|
||||
2. ``scripts/appveyor/run_with_compiler.cmd``:
|
||||
|
||||
.. code-block:: guess
|
||||
|
||||
@ECHO OFF
|
||||
|
||||
SET COMMAND_TO_RUN=%*
|
||||
SET WIN_SDK_ROOT=C:\Program Files\Microsoft SDKs\Windows
|
||||
|
||||
SET MAJOR_PYTHON_VERSION="%PYTHON_VERSION:~0,1%"
|
||||
IF %MAJOR_PYTHON_VERSION% == "2" (
|
||||
SET WINDOWS_SDK_VERSION="v7.0"
|
||||
) ELSE IF %MAJOR_PYTHON_VERSION% == "3" (
|
||||
SET WINDOWS_SDK_VERSION="v7.1"
|
||||
) ELSE (
|
||||
ECHO Unsupported Python version: "%MAJOR_PYTHON_VERSION%"
|
||||
EXIT 1
|
||||
)
|
||||
|
||||
IF "%PYTHON_ARCH%"=="64" (
|
||||
ECHO Configuring Windows SDK %WINDOWS_SDK_VERSION% for Python %MAJOR_PYTHON_VERSION% on a 64 bit architecture
|
||||
SET DISTUTILS_USE_SDK=1
|
||||
SET MSSdk=1
|
||||
"%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Setup\WindowsSdkVer.exe" -q -version:%WINDOWS_SDK_VERSION%
|
||||
"%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Bin\SetEnv.cmd" /x64 /release
|
||||
ECHO Executing: %COMMAND_TO_RUN%
|
||||
call %COMMAND_TO_RUN% || EXIT 1
|
||||
) ELSE (
|
||||
ECHO Using default MSVC build environment for 32 bit architecture
|
||||
ECHO Executing: %COMMAND_TO_RUN%
|
||||
call %COMMAND_TO_RUN% || EXIT 1
|
||||
)
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
|
||||
command.
|
||||
@@ -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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci_circleci:
|
||||
|
||||
Circle CI
|
||||
@@ -21,52 +32,174 @@ containing the build results (showing success or failure), or by posting a
|
||||
message on an IRC channel. It can be configured to build project on a range of
|
||||
different :ref:`platforms`.
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Put ``circle.yml`` to the root directory of the GitHub repository.
|
||||
Please make sure to read Circle CI `Getting Started <https://circleci.com/docs/getting-started>`_
|
||||
guide first.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
# Install the latest stable PlatformIO
|
||||
- sudo pip install -U platformio
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci path/to/test/file.c --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
- platformio ci examples/file.ino --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
- platformio ci path/to/test/directory --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`.
|
||||
|
||||
Project as a library
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
When project is written as a library (where own examples or testing code use
|
||||
it), please use ``--lib="."`` option for :ref:`cmd_ci` command
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
script:
|
||||
- platformio ci --lib="." --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Library dependecies
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
There 2 options to test source code with dependent libraries:
|
||||
|
||||
Install dependent library using :ref:`librarymanager`
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
# Install the latest stable PlatformIO
|
||||
- sudo pip install -U platformio
|
||||
|
||||
# OneWire Library with ID=1 http://platformio.org/lib/show/1/OneWire
|
||||
- platformio lib -g install 1
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci path/to/test/file.c --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Manually download dependent library and include in build process via ``--lib`` option
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
# Install the latest stable PlatformIO
|
||||
- sudo pip install -U platformio
|
||||
|
||||
# download library to the temporary directory
|
||||
- wget https://github.com/PaulStoffregen/OneWire/archive/master.zip -O /tmp/onewire_source.zip
|
||||
- unzip /tmp/onewire_source.zip -d /tmp/
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci path/to/test/file.c --lib="/tmp/OneWire-master" --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Custom Build Flags
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO allows to specify own build flags using :envvar:`PLATFORMIO_BUILD_FLAGS` environment
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
machine:
|
||||
environment:
|
||||
PLATFORMIO_CI_SRC: path/to/source/file.c
|
||||
PLATFORMIO_CI_SRC: path/to/source/file.ino
|
||||
PLATFORMIO_CI_SRC: path/to/source/directory
|
||||
PLATFORMIO_BUILD_FLAGS: -D SPECIFIC_MACROS -I/extra/inc
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
- sudo apt-get install python2.7-dev
|
||||
- sudo python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
|
||||
For the more details, please follow to
|
||||
:ref:`available build flags/options <projectconf_build_flags>`.
|
||||
|
||||
|
||||
Advanced configuration
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO allows to configure multiple build environments for the single
|
||||
source code using :ref:`projectconf`.
|
||||
|
||||
Instead of ``--board`` option, please use :option:`platformio ci --project-conf`
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
|
||||
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
|
||||
command.
|
||||
- platformio ci path/to/test/file.c --project-conf=/path/to/platoformio.ini
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
|
||||
project. The ``circle.yml`` configuration file:
|
||||
1. Custom build flags
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
machine:
|
||||
environment:
|
||||
PLATFORMIO_CI_SRC: examples/Bluetooth/PS3SPP/PS3SPP.ino
|
||||
PLATFORMIO_CI_SRC: examples/pl2303/pl2303_gps/pl2303_gps.ino
|
||||
|
||||
dependencies:
|
||||
cache_directories:
|
||||
- "~/.platformio"
|
||||
|
||||
pre:
|
||||
- sudo apt-get install python2.7-dev
|
||||
- sudo python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
- wget https://github.com/xxxajk/spi4teensy3/archive/master.zip -O /tmp/spi4teensy3.zip
|
||||
- unzip /tmp/spi4teensy3.zip -d /tmp
|
||||
- sudo pip install -U platformio
|
||||
|
||||
# pre-install PlatformIO development platforms, they will be cached
|
||||
- platformio platform install atmelavr atmelsam teensy
|
||||
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/lib/show/416/TinyGPS
|
||||
# http://platformio.org/lib/show/417/SPI4Teensy3
|
||||
- platformio lib -g install 416 417
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci --lib="." --lib="/tmp/spi4teensy3-master" --board=uno --board=teensy31 --board=due
|
||||
- platformio ci examples/acm/acm_terminal --board=uno --board=teensy31 --board=due --lib="."
|
||||
- platformio ci examples/adk/adk_barcode --board=uno --board=teensy31 --board=due --lib="."
|
||||
- platformio ci examples/adk/ArduinoBlinkLED --board=uno --board=teensy31 --board=due --lib="."
|
||||
- platformio ci examples/adk/demokit_20 --board=uno --board=teensy31 --board=due --lib="."
|
||||
# ...
|
||||
- platformio ci examples/Xbox/XBOXUSB --board=uno --board=teensy31 --board=due --lib="."
|
||||
|
||||
* Configuration file: https://github.com/ivankravets/USB_Host_Shield_2.0/blob/master/circle.yml
|
||||
* Build History: https://circleci.com/gh/ivankravets/USB_Host_Shield_2.0/tree/master
|
||||
|
||||
2. Dependency on external libraries
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
# Install the latest stable PlatformIO
|
||||
- sudo pip install -U platformio
|
||||
|
||||
# download dependent libraries
|
||||
- wget https://github.com/jcw/jeelib/archive/master.zip -O /tmp/jeelib.zip
|
||||
- unzip /tmp/jeelib.zip -d /tmp
|
||||
|
||||
- wget https://github.com/Rodot/Gamebuino/archive/master.zip -O /tmp/gamebuino.zip
|
||||
- unzip /tmp/gamebuino.zip -d /tmp
|
||||
|
||||
test:
|
||||
override:
|
||||
- platformio ci examples/backSoon/backSoon.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/etherNode/etherNode.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/getDHCPandDNS/getDHCPandDNS.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/getStaticIP/getStaticIP.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
# ...
|
||||
- platformio ci examples/twitter/twitter.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/udpClientSendOnly/udpClientSendOnly.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/udpListener/udpListener.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
- platformio ci examples/webClient/webClient.ino --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
|
||||
* Configuration file: hhttps://github.com/ivankravets/ethercard/blob/master/circle.yaml
|
||||
* Build History: https://circleci.com/gh/ivankravets/ethercard/tree/master
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci_drone:
|
||||
|
||||
Drone
|
||||
@@ -20,6 +31,8 @@ the way it has been configured to do so — for example, by sending an email
|
||||
containing the build results (showing success or failure). It can be
|
||||
configured to build project on a range of different :ref:`platforms`.
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
@@ -37,8 +50,8 @@ 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)"
|
||||
platformio ci --board=TYPE_1 --board=TYPE_2 --board=TYPE_N
|
||||
pip install -U platformio
|
||||
platformio ci --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
.. image:: ../_static/droneci-platformio-integration-1.png
|
||||
|
||||
@@ -62,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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci:
|
||||
|
||||
Continuous Integration
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci_shippable:
|
||||
|
||||
Shippable
|
||||
@@ -24,6 +35,8 @@ containing the build results (showing success or failure), or by posting a
|
||||
message on an IRC channel. It can be configured to build project on a range of
|
||||
different :ref:`platforms`.
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
@@ -42,10 +55,10 @@ 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
|
||||
- platformio ci --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
|
||||
@@ -68,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,8 +1,26 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ci_travis:
|
||||
|
||||
Travis CI
|
||||
=========
|
||||
|
||||
.. image:: ../_static/ci-travis-logo.png
|
||||
:target: https://docs.travis-ci.com/user/integration/platformio/
|
||||
|
||||
|
||||
**Travis CI** `officially supports <https://docs.travis-ci.com/user/integration/platformio/>`_
|
||||
**PlatformIO for Embedded Builds.**
|
||||
|
||||
`Travis CI <http://en.wikipedia.org/wiki/Travis_CI>`_ is an open-source hosted,
|
||||
distributed continuous integration service used to build and test projects
|
||||
hosted at `GitHub <http://en.wikipedia.org/wiki/GitHub>`_.
|
||||
@@ -21,10 +39,17 @@ containing the build results (showing success or failure), or by posting a
|
||||
message on an IRC channel. It can be configured to build project on a range of
|
||||
different :ref:`platforms`.
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Please put ``.travis.yml`` to the root directory of the GitHub repository.
|
||||
Please make sure to read Travis CI `Getting Started <http://docs.travis-ci.com/user/getting-started/>`_
|
||||
and `general build configuration <http://docs.travis-ci.com/user/customizing-the-build/>`_
|
||||
guides first.
|
||||
|
||||
PlatformIO is written in Python and is recommended to be run within
|
||||
`Travis CI Python isolated environment <http://docs.travis-ci.com/user/languages/python/#Travis-CI-Uses-Isolated-virtualenvs>`_:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
@@ -32,28 +57,110 @@ Please put ``.travis.yml`` to the root directory of the GitHub repository.
|
||||
python:
|
||||
- "2.7"
|
||||
|
||||
# Cache PlatformIO packages using Travis CI container-based infrastructure
|
||||
sudo: false
|
||||
cache:
|
||||
directories:
|
||||
- "~/.platformio"
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=path/to/source/file.c
|
||||
- PLATFORMIO_CI_SRC=path/to/source/file.ino
|
||||
- PLATFORMIO_CI_SRC=path/to/source/directory
|
||||
- PLATFORMIO_CI_SRC=path/to/test/file.c
|
||||
- PLATFORMIO_CI_SRC=examples/file.ino
|
||||
- PLATFORMIO_CI_SRC=path/to/test/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
|
||||
- platformio ci --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Then perform steps 1, 2 and 4 from http://docs.travis-ci.com/user/getting-started/
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`.
|
||||
|
||||
Project as a library
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
When project is written as a library (where own examples or testing code use
|
||||
it), please use ``--lib="."`` option for :ref:`cmd_ci` command
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
script:
|
||||
- platformio ci --lib="." --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Library dependencies
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
There 2 options to test source code with dependent libraries:
|
||||
|
||||
Install dependent library using :ref:`librarymanager`
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/lib/show/1/OneWire
|
||||
- platformio lib -g install 1
|
||||
|
||||
Manually download dependent library and include in build process via ``--lib`` option
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
|
||||
# download library to the temporary directory
|
||||
- wget https://github.com/PaulStoffregen/OneWire/archive/master.zip -O /tmp/onewire_source.zip
|
||||
- unzip /tmp/onewire_source.zip -d /tmp/
|
||||
|
||||
script:
|
||||
- platformio ci --lib="/tmp/OneWire-master" --board=<ID_1> --board=<ID_2> --board=<ID_N>
|
||||
|
||||
Custom Build Flags
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO allows to specify own build flags using :envvar:`PLATFORMIO_BUILD_FLAGS` environment
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=path/to/test/file.c PLATFORMIO_BUILD_FLAGS="-D SPECIFIC_MACROS_PER_TEST_ENV -I/extra/inc"
|
||||
- PLATFORMIO_CI_SRC=examples/file.ino
|
||||
- PLATFORMIO_CI_SRC=path/to/test/directory
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
- export PLATFORMIO_BUILD_FLAGS="-D GLOBAL_MACROS_FOR_ALL_TEST_ENV"
|
||||
|
||||
|
||||
Then see step 1, 2, and step 4 here: http://docs.travis-ci.com/user/getting-started/
|
||||
For the more details, please follow to
|
||||
:ref:`available build flags/options <projectconf_build_flags>`.
|
||||
|
||||
For more details as for PlatformIO build process please look into :ref:`cmd_ci`
|
||||
command.
|
||||
|
||||
Advanced configuration
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
PlatformIO allows to configure multiple build environments for the single
|
||||
source code using :ref:`projectconf`.
|
||||
|
||||
Instead of ``--board`` option, please use :option:`platformio ci --project-conf`
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
script:
|
||||
- platformio ci --project-conf=/path/to/platoformio.ini
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
1. Integration for `USB_Host_Shield_2.0 <https://github.com/felis/USB_Host_Shield_2.0>`_
|
||||
project. The ``.travis.yml`` configuration file:
|
||||
1. Custom build flags
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
@@ -61,6 +168,12 @@ Examples
|
||||
python:
|
||||
- "2.7"
|
||||
|
||||
# Cache PlatformIO packages using Travis CI container-based infrastructure
|
||||
sudo: false
|
||||
cache:
|
||||
directories:
|
||||
- "~/.platformio"
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=examples/acm/acm_terminal
|
||||
- PLATFORMIO_CI_SRC=examples/Bluetooth/WiiIRCamera PLATFORMIO_BUILD_FLAGS="-DWIICAMERA"
|
||||
@@ -69,15 +182,88 @@ Examples
|
||||
# - ...
|
||||
|
||||
install:
|
||||
- python -c "$(curl -fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get-platformio.py)"
|
||||
- pip install -U platformio
|
||||
|
||||
# Libraries from PlatformIO Library Registry
|
||||
# http://platformio.org/#!/lib/show/416/TinyGPS
|
||||
# http://platformio.org/#!/lib/show/417/SPI4Teensy3
|
||||
- platformio lib install 416 417
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/lib/show/416/TinyGPS
|
||||
# http://platformio.org/lib/show/417/SPI4Teensy3
|
||||
- platformio lib -g install 416 417
|
||||
|
||||
script:
|
||||
- platformio ci --board=uno --board=teensy31 --board=due --lib="."
|
||||
|
||||
* Configuration file: https://github.com/felis/USB_Host_Shield_2.0/blob/master/.travis.yml
|
||||
* Build History: https://travis-ci.org/felis/USB_Host_Shield_2.0
|
||||
|
||||
2. Dependency on external libraries
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
|
||||
# Cache PlatformIO packages using Travis CI container-based infrastructure
|
||||
sudo: false
|
||||
cache:
|
||||
directories:
|
||||
- "~/.platformio"
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=examples/backSoon/backSoon.ino
|
||||
- PLATFORMIO_CI_SRC=examples/etherNode/etherNode.ino
|
||||
# -
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
|
||||
- wget https://github.com/jcw/jeelib/archive/master.zip -O /tmp/jeelib.zip
|
||||
- unzip /tmp/jeelib.zip -d /tmp
|
||||
|
||||
- wget https://github.com/Rodot/Gamebuino/archive/master.zip -O /tmp/gamebuino.zip
|
||||
- unzip /tmp/gamebuino.zip -d /tmp
|
||||
|
||||
script:
|
||||
- platformio ci --lib="." --lib="/tmp/jeelib-master" --lib="/tmp/Gamebuino-master/libraries/tinyFAT" --board=uno --board=megaatmega2560
|
||||
|
||||
* Configuration file: https://github.com/jcw/ethercard/blob/master/.travis.yml
|
||||
* Build History: https://travis-ci.org/jcw/ethercard
|
||||
|
||||
3. Dynamic testing of the boards
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
|
||||
# Cache PlatformIO packages using Travis CI container-based infrastructure
|
||||
sudo: false
|
||||
cache:
|
||||
directories:
|
||||
- "~/.platformio"
|
||||
|
||||
env:
|
||||
- PLATFORMIO_CI_SRC=examples/TimeArduinoDue PLATFORMIO_CI_EXTRA_ARGS="--board=due"
|
||||
- PLATFORMIO_CI_SRC=examples/TimeGPS
|
||||
- PLATFORMIO_CI_SRC=examples/TimeNTP
|
||||
- PLATFORMIO_CI_SRC=examples/TimeTeensy3 PLATFORMIO_CI_EXTRA_ARGS="--board=teensy31"
|
||||
# - ...
|
||||
|
||||
install:
|
||||
- pip install -U platformio
|
||||
- rm -rf ./linux
|
||||
|
||||
#
|
||||
# Libraries from PlatformIO Library Registry:
|
||||
#
|
||||
# http://platformio.org/lib/show/416/TinyGPS
|
||||
- platformio lib -g install 416 421 422
|
||||
|
||||
script:
|
||||
- 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
|
||||
|
||||
32
docs/conf.py
@@ -45,7 +45,7 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'PlatformIO'
|
||||
copyright = u'2014-2015, Ivan Kravets'
|
||||
copyright = u'2014-present, PlatformIO'
|
||||
|
||||
# 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.
|
||||
@@ -119,12 +119,12 @@ html_theme = 'default'
|
||||
|
||||
# The name of an image file (relative to this directory) to place at the top
|
||||
# of the sidebar.
|
||||
#html_logo = None
|
||||
#html_logo = '_static/platformio-logo.png'
|
||||
|
||||
# The name of an image file (within the static path) to use as favicon of the
|
||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
||||
# pixels large.
|
||||
#html_favicon = None
|
||||
html_favicon = '_static/favicon.ico'
|
||||
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
@@ -184,22 +184,22 @@ htmlhelp_basename = 'PlatformIOdoc'
|
||||
# -- Options for LaTeX output ---------------------------------------------
|
||||
|
||||
latex_elements = {
|
||||
# The paper size ('letterpaper' or 'a4paper').
|
||||
#'papersize': 'letterpaper',
|
||||
# The paper size ('letterpaper' or 'a4paper').
|
||||
#'papersize': 'letterpaper',
|
||||
|
||||
# The font size ('10pt', '11pt' or '12pt').
|
||||
#'pointsize': '10pt',
|
||||
# The font size ('10pt', '11pt' or '12pt').
|
||||
#'pointsize': '10pt',
|
||||
|
||||
# Additional stuff for the LaTeX preamble.
|
||||
#'preamble': '',
|
||||
# Additional stuff for the LaTeX preamble.
|
||||
#'preamble': '',
|
||||
}
|
||||
|
||||
# Grouping the document tree into LaTeX files. List of tuples
|
||||
# (source start file, target name, title,
|
||||
# author, documentclass [howto, manual, or own class]).
|
||||
latex_documents = [
|
||||
('index', 'PlatformIO.tex', u'PlatformIO Documentation',
|
||||
u'Ivan Kravets', 'manual'),
|
||||
('index', 'PlatformIO.tex', u'PlatformIO Documentation',
|
||||
u'PlatformIO', 'manual'),
|
||||
]
|
||||
|
||||
# The name of an image file (relative to this directory) to place at the top of
|
||||
@@ -229,7 +229,7 @@ latex_documents = [
|
||||
# (source start file, name, description, authors, manual section).
|
||||
man_pages = [
|
||||
('index', 'platformio', u'PlatformIO Documentation',
|
||||
[u'Ivan Kravets'], 1)
|
||||
[u'PlatformIO'], 1)
|
||||
]
|
||||
|
||||
# If true, show URL addresses after external links.
|
||||
@@ -242,9 +242,9 @@ man_pages = [
|
||||
# (source start file, target name, title, author,
|
||||
# dir menu entry, description, category)
|
||||
texinfo_documents = [
|
||||
('index', 'PlatformIO', u'PlatformIO Documentation',
|
||||
u'Ivan Kravets', 'PlatformIO', 'One line description of project.',
|
||||
'Miscellaneous'),
|
||||
('index', 'PlatformIO', u'PlatformIO Documentation',
|
||||
u'PlatformIO', 'PlatformIO', 'One line description of project.',
|
||||
'Miscellaneous'),
|
||||
]
|
||||
|
||||
# Documents to append as an appendix to all manuals.
|
||||
|
||||
78
docs/demo.rst
Normal file
@@ -0,0 +1,78 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _demo:
|
||||
|
||||
Demo & Projects
|
||||
===============
|
||||
|
||||
.. contents::
|
||||
|
||||
Project Examples
|
||||
----------------
|
||||
|
||||
Pre-configured 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-examples/tree/develop/wiring-blink>`_
|
||||
2. :ref:`cmd_run` command
|
||||
3. :ref:`platformio run -t upload <cmd_run>` command.
|
||||
|
||||
Platform Manager
|
||||
----------------
|
||||
|
||||
.. image:: _static/platformio-demo-platforms.gif
|
||||
|
||||
Used in demo
|
||||
~~~~~~~~~~~~
|
||||
|
||||
1. :ref:`userguide_platform`
|
||||
2. :ref:`cmd_platform_list` command
|
||||
3. :ref:`platformio platform search avr <cmd_platform_search>` command
|
||||
4. :ref:`platformio platform show teensy <cmd_platform_show>` command
|
||||
5. :ref:`cmd_platform_update` command.
|
||||
|
||||
Library Manager
|
||||
---------------
|
||||
|
||||
.. image:: _static/platformio-demo-lib.gif
|
||||
|
||||
Used in demo
|
||||
~~~~~~~~~~~~
|
||||
|
||||
1. :ref:`cmd_lib`
|
||||
2. :ref:`platformio lib search 1-wire <cmd_lib_search>` command
|
||||
3. :ref:`platformio lib install 54 <cmd_lib_install>` command
|
||||
4. :ref:`platformio lib search -f mbed <cmd_lib_search>` command
|
||||
5. :ref:`platformio lib search -k rf <cmd_lib_search>` command
|
||||
6. :ref:`platformio lib search radiohead <cmd_lib_search>` command
|
||||
7. :ref:`platformio lib install 124 --version "1.40" <cmd_lib_install>` command
|
||||
8. :ref:`platformio lib show 124 <cmd_lib_show>` command
|
||||
9. :ref:`cmd_lib_update` command.
|
||||
|
||||
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.
|
||||
146
docs/envvars.rst
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _envvars:
|
||||
|
||||
Environment variables
|
||||
@@ -18,119 +29,140 @@ General
|
||||
PlatformIO uses *General* environment variables for the common
|
||||
operations/commands.
|
||||
|
||||
.. _envvar_CI:
|
||||
|
||||
CI
|
||||
~~
|
||||
.. envvar:: CI
|
||||
|
||||
PlatformIO handles ``CI`` variable which is setup by
|
||||
`Continuous Integration <http://en.wikipedia.org/wiki/Continuous_integration>`_
|
||||
(Travis, Circle and etc.) systems.
|
||||
Currently, PlatformIO uses it to disable prompts.
|
||||
PlatformIO uses it to disable prompts and progress bars. In other words,
|
||||
``CI=true`` automatically setup :envvar:`PLATFORMIO_DISABLE_PROGRESSBAR` to
|
||||
``true``.
|
||||
|
||||
In other words, ``CI=true`` automatically setup
|
||||
:ref:`PLATFORMIO_SETTING_ENABLE_PROMPTS=false <envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS>`.
|
||||
.. envvar:: PLATFORMIO_FORCE_COLOR
|
||||
|
||||
.. _envvar_PLATFORMIO_HOME_DIR:
|
||||
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``.
|
||||
|
||||
PLATFORMIO_HOME_DIR
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
.. 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
|
||||
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_home_dir`.
|
||||
|
||||
.. _envvar_PLATFORMIO_LIB_DIR:
|
||||
|
||||
PLATFORMIO_LIB_DIR
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_LIB_DIR
|
||||
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_lib_dir`.
|
||||
|
||||
.. _envvar_PLATFORMIO_SRC_DIR:
|
||||
.. envvar:: PLATFORMIO_LIBDEPS_DIR
|
||||
|
||||
PLATFORMIO_SRC_DIR
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_libdeps_dir`.
|
||||
|
||||
.. envvar:: PLATFORMIO_SRC_DIR
|
||||
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_src_dir`.
|
||||
|
||||
.. _envvar_PLATFORMIO_ENVS_DIR:
|
||||
|
||||
PLATFORMIO_ENVS_DIR
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_ENVS_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`.
|
||||
|
||||
.. _envvar_PLATFORMIO_BUILD_FLAGS:
|
||||
.. envvar:: PLATFORMIO_TEST_DIR
|
||||
|
||||
PLATFORMIO_BUILD_FLAGS
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
Allows to override :ref:`projectconf` option :ref:`projectconf_pio_test_dir`.
|
||||
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
.. envvar:: PLATFORMIO_BUILD_FLAGS
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_build_flags`.
|
||||
|
||||
.. _envvar_PLATFORMIO_SRC_BUILD_FLAGS:
|
||||
Examples:
|
||||
|
||||
PLATFORMIO_SRC_BUILD_FLAGS
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. 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`.
|
||||
|
||||
.. _envvar_PLATFORMIO_SRC_FILTER:
|
||||
|
||||
PLATFORMIO_SRC_FILTER
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SRC_FILTER
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_src_filter`.
|
||||
|
||||
.. _envvar_PLATFORMIO_EXTRA_SCRIPT:
|
||||
|
||||
PLATFORMIO_EXTRA_SCRIPT
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_EXTRA_SCRIPT
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_extra_script`.
|
||||
|
||||
.. envvar:: PLATFORMIO_LIB_EXTRA_DIRS
|
||||
|
||||
Allows to set :ref:`projectconf` option :ref:`projectconf_lib_extra_dirs`.
|
||||
|
||||
|
||||
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
|
||||
--------
|
||||
|
||||
Allows to override PlatformIO settings. You can manage them via
|
||||
:ref:`cmd_settings` command.
|
||||
|
||||
|
||||
PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES
|
||||
|
||||
Allows to override setting :ref:`setting_auto_update_libraries`.
|
||||
|
||||
PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS
|
||||
|
||||
Allows to override setting :ref:`setting_auto_update_platforms`.
|
||||
|
||||
PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL
|
||||
|
||||
Allows to override setting :ref:`setting_check_libraries_interval`.
|
||||
|
||||
PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL
|
||||
|
||||
Allows to override setting :ref:`setting_check_platformio_interval`.
|
||||
|
||||
PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL
|
||||
|
||||
Allows to override setting :ref:`setting_check_platforms_interval`.
|
||||
|
||||
.. _envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS:
|
||||
|
||||
PLATFORMIO_SETTING_ENABLE_PROMPTS
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Allows to override setting :ref:`setting_enable_prompts`.
|
||||
|
||||
PLATFORMIO_SETTING_ENABLE_TELEMETRY
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. envvar:: PLATFORMIO_SETTING_ENABLE_TELEMETRY
|
||||
|
||||
Allows to override setting :ref:`setting_enable_telemetry`.
|
||||
|
||||
.. envvar:: PLATFORMIO_SETTING_FORCE_VERBOSE
|
||||
|
||||
Allows to override setting :ref:`setting_force_verbose`.
|
||||
|
||||
|
||||
.. envvar:: PLATFORMIO_SETTING_ENABLE_SSL
|
||||
|
||||
Allows to override setting :ref:`setting_enable_ssl`.
|
||||
|
||||
180
docs/faq.rst
@@ -1,108 +1,164 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _faq:
|
||||
|
||||
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 a cross-platform code builder
|
||||
and the missing library manager.
|
||||
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_eclipse`,
|
||||
:ref:`ide_visualstudio`, :ref:`ide_vim`, :ref:`ide_sublimetext`, 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 100
|
||||
:ref:`Embedded Boards <platforms>` and all major
|
||||
:ref:`Development Platforms <platforms>`.
|
||||
Please refer to :ref:`projectconf_pio_envs_dir`.
|
||||
|
||||
PlatformIO allows users to:
|
||||
Command completion in Terminal
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* 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.
|
||||
Bash completion
|
||||
'''''''''''''''
|
||||
|
||||
Bash completion support will complete subcommands and parameters. To enable
|
||||
Bash completion for `platformio` subcommands you need to put into your `.bashrc`:
|
||||
|
||||
How does it work?
|
||||
~~~~~~~~~~~~~~~~~
|
||||
.. code-block:: bash
|
||||
|
||||
Without going too deep into PlatformIO implementation details, work cycle of
|
||||
the project developed using PlatformIO is as follows:
|
||||
eval "$(_PLATFORMIO_COMPLETE=source platformio)"
|
||||
eval "$(_PLATFORMIO_COMPLETE=source pio)"
|
||||
|
||||
* 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.
|
||||
ZSH completion
|
||||
''''''''''''''
|
||||
|
||||
To enable ``zsh`` completion please run these commands:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
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>`.
|
||||
|
||||
Before/Pre and After/Post build actions
|
||||
---------------------------------------
|
||||
|
||||
PlatformIO Build System has rich API that allows to attach different pre-/post
|
||||
actions (hooks). See features of :ref:`projectconf_extra_script` option for
|
||||
:ref:`projectconf`.
|
||||
|
||||
.. _faq_troubleshooting:
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
|
||||
.. _faq_troubleshooting_pioblocksprompt:
|
||||
Installation
|
||||
~~~~~~~~~~~~
|
||||
|
||||
PlatformIO blocks command execution using user prompt
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[Errno 1] Operation not permitted
|
||||
'''''''''''''''''''''''''''''''''
|
||||
|
||||
If you are going to run *PlatformIO* from **subprocess**, you **MUST
|
||||
DISABLE** all prompts. It will allow you to avoid blocking.
|
||||
There are a few options:
|
||||
Answered in `issue #295 <https://github.com/platformio/platformio/issues/295#issuecomment-143772005>`_.
|
||||
|
||||
- using :option:`platformio --force` option before each command
|
||||
- using environment variable :ref:`PLATFORMIO_SETTING_ENABLE_PROMPTS=No <envvar_PLATFORMIO_SETTING_ENABLE_PROMPTS>`
|
||||
- disable global setting ``enable_prompts`` via :ref:`cmd_settings` command
|
||||
- masking under Continuous Integration system via environment variable
|
||||
:ref:`CI=true <envvar_CI>`.
|
||||
Windows AttributeError: 'module' object has no attribute 'packages'
|
||||
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Answered in `issue #252 <https://github.com/platformio/platformio/issues/252#issuecomment-127072039>`_.
|
||||
|
||||
Windows: ``UnicodeDecodeError: 'ascii' codec can't decode byte``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. _faq_troubleshooting_pionotfoundinpath:
|
||||
|
||||
Program "platformio" not found in PATH
|
||||
''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Where is ``platformio`` binary installed? Run this command in Terminal
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
# for Unix
|
||||
which platformio
|
||||
echo $PATH
|
||||
Windows OS
|
||||
where platformio
|
||||
echo %PATH%
|
||||
|
||||
For example, ``which platformio`` is equal to ``/usr/local/bin/platformio``,
|
||||
then `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_
|
||||
should contain ``/usr/local/bin`` directory.
|
||||
|
||||
**Unix Users**: You can make "symlinks" from ``platformio`` 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
|
||||
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Answered in `issue #143 <https://github.com/platformio/platformio/issues/143#issuecomment-88060906>`_.
|
||||
|
||||
Serial does not work with panStampAVR board
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Answered in `issue #144 <https://github.com/platformio/platformio/issues/144#issuecomment-87388038>`_.
|
||||
|
||||
|
||||
PlatformIO: command not found || An error ``pkg_resources.DistributionNotFound``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
PlatformIO: command not found || An error "pkg_resources.DistributionNotFound"
|
||||
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Please upgrade *SetupTools* package:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ [sudo] pip uninstall setuptools
|
||||
$ [sudo] pip install setuptools
|
||||
[sudo] pip uninstall setuptools
|
||||
[sudo] pip install setuptools
|
||||
|
||||
# Then re-install PlatformIO
|
||||
$ [sudo] pip uninstall platformio
|
||||
$ [sudo] pip install platformio
|
||||
[sudo] pip uninstall platformio
|
||||
[sudo] pip install platformio
|
||||
|
||||
ARM toolchain: ``cc1plus: error while loading shared libraries``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Miscellaneous
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Serial does not work with panStampAVR board
|
||||
'''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Answered in `issue #144 <https://github.com/platformio/platformio/issues/144#issuecomment-87388038>`_.
|
||||
|
||||
Building
|
||||
~~~~~~~~
|
||||
|
||||
ARM toolchain: cc1plus: error while loading shared libraries
|
||||
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
See related answers for
|
||||
`error while loading shared libraries <https://github.com/platformio/platformio/issues?utf8=✓&q=error+while+loading+shared+libraries>`_.
|
||||
|
||||
Archlinux: libncurses.so.5: cannot open shared object file
|
||||
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Answered in `issue #291 <https://github.com/platformio/platformio/issues/291>`_.
|
||||
|
||||
Monitoring a serial port breaks upload
|
||||
''''''''''''''''''''''''''''''''''''''
|
||||
|
||||
Answered in `issue #384 <https://github.com/platformio/platformio/issues/384>`_.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _frameworks:
|
||||
|
||||
Frameworks
|
||||
@@ -11,4 +22,6 @@ Frameworks
|
||||
energia
|
||||
libopencm3
|
||||
mbed
|
||||
simba
|
||||
spl
|
||||
wiringpi
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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
|
||||
@@ -64,6 +75,13 @@ ST
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``nucleo_f103rb``
|
||||
- `ST Nucleo F103RB <https://developer.mbed.org/platforms/ST-Nucleo-F103RB/>`_
|
||||
- STM32F103RBT6
|
||||
- 72 MHz
|
||||
- 128 Kb
|
||||
- 20 Kb
|
||||
|
||||
TI
|
||||
~~
|
||||
|
||||
@@ -97,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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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.
|
||||
|
||||
@@ -31,14 +45,91 @@ Platforms
|
||||
* - :ref:`platform_ststm32`
|
||||
- The STM32 family of 32-bit Flash MCUs based on the ARM Cortex-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32-bit product range that combines very high performance, real-time capabilities, digital signal processing, and low-power, low-voltage operation, while maintaining full integration and ease of development.
|
||||
|
||||
* - :ref:`platform_teensy`
|
||||
- Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard 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
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
@@ -79,6 +170,26 @@ Delta
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
Elektor Labs
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``elektor_cocorico``
|
||||
- `CoCo-ri-Co! <https://developer.mbed.org/platforms/CoCo-ri-Co/>`_
|
||||
- LPC812
|
||||
- 30 MHz
|
||||
- 16 Kb
|
||||
- 4 Kb
|
||||
|
||||
Embedded Artists
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -93,7 +204,7 @@ Embedded Artists
|
||||
- RAM
|
||||
|
||||
* - ``lpc11u35``
|
||||
- `Embedded Artists LPC11U35 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC11U35/>`_
|
||||
- `EA LPC11U35 QuickStart Board <https://developer.mbed.org/platforms/EA-LPC11U35/>`_
|
||||
- LPC11U35
|
||||
- 48 MHz
|
||||
- 64 Kb
|
||||
@@ -168,6 +279,27 @@ Freescale
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``frdm_kl26z``
|
||||
- `Freescale Kinetis FRDM-KL26Z <http://www.nxp.com/products/software-and-tools/hardware-development-tools/freedom-development-boards/freedom-development-platform-for-kinetis-kl16-and-kl26-mcus-up-to-128-kb-flash:FRDM-KL26Z>`_
|
||||
- MKL26Z128VLH4
|
||||
- 48 MHz
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``frdm_kl27z``
|
||||
- `Freescale Kinetis FRDM-KL27Z <http://www.nxp.com/products/software-and-tools/hardware-development-tools/freedom-development-boards/freedom-development-platform-for-kinetis-kl17-and-kl27-mcus:FRDM-KL27Z>`_
|
||||
- MKL27Z64VLH4
|
||||
- 48 MHz
|
||||
- 64 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``frdm_kl43z``
|
||||
- `Freescale Kinetis FRDM-KL43Z <http://www.nxp.com/products/software-and-tools/hardware-development-tools/freedom-development-boards/freedom-development-platform-for-kinetis-kl43-kl33-kl27-kl17-and-kl13-mcus:FRDM-KL43Z>`_
|
||||
- MKL43Z256VLH4
|
||||
- 48 MHz
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
* - ``frdm_kl46z``
|
||||
- `Freescale Kinetis FRDM-KL46Z <https://developer.mbed.org/platforms/FRDM-KL46Z/>`_
|
||||
- MKL46Z256VLL4
|
||||
@@ -175,6 +307,46 @@ Freescale
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
GHI Electronics
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``oc_mbuino``
|
||||
- `mBuino <https://developer.mbed.org/platforms/mBuino/>`_
|
||||
- LPC11U24
|
||||
- 50 MHz
|
||||
- 32 Kb
|
||||
- 10 Kb
|
||||
|
||||
Generic
|
||||
~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``bluepill_f103c8``
|
||||
- `BluePill F103C8 <http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f1-series/stm32f103/stm32f103c8.html>`_
|
||||
- STM32F103C8T6
|
||||
- 72 MHz
|
||||
- 64 Kb
|
||||
- 20 Kb
|
||||
|
||||
JKSoft
|
||||
~~~~~~
|
||||
|
||||
@@ -188,13 +360,80 @@ JKSoft
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``wallBotBLE``
|
||||
* - ``wallbot_ble``
|
||||
- `JKSoft Wallbot BLE <https://developer.mbed.org/platforms/JKSoft-Wallbot-BLE/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
Micromint
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``lpc4330_m4``
|
||||
- `Bambino-210E <https://developer.mbed.org/platforms/Micromint-Bambino-210E/>`_
|
||||
- LPC4330
|
||||
- 204 MHz
|
||||
- 8192 Kb
|
||||
- 264 Kb
|
||||
|
||||
MikroElektronika
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``hexiwear``
|
||||
- `Hexiwear <https://developer.mbed.org/platforms/Hexiwear/>`_
|
||||
- MK64FN1M0VDC12
|
||||
- 120 MHz
|
||||
- 1024 Kb
|
||||
- 256 Kb
|
||||
|
||||
MultiTech
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``mts_mdot_f405rg``
|
||||
- `MultiTech mDot <https://developer.mbed.org/platforms/MTS-mDot-F411/>`_
|
||||
- STM32F411RET6
|
||||
- 100 MHz
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
* - ``mts_mdot_f411re``
|
||||
- `MultiTech mDot F411 <https://developer.mbed.org/platforms/MTS-mDot-F411/>`_
|
||||
- STM32F411RET6
|
||||
- 100 MHz
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
NGX Technologies
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -228,6 +467,13 @@ NXP
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``lpc11c24``
|
||||
- `NXP LPC11C24 <http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/lpc-cortex-m-mcus/lpc-cortex-m0-plus-m0/lpc1100-cortex-m0-plus-m0/scalable-entry-level-32-bit-microcontroller-mcu-based-on-arm-cortex-m0-plus-m0-cores:LPC11C24FBD48>`_
|
||||
- LPC11C24
|
||||
- 48 MHz
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``lpc11u24``
|
||||
- `NXP mbed LPC11U24 <https://developer.mbed.org/platforms/mbed-LPC11U24/>`_
|
||||
- LPC11U24
|
||||
@@ -235,6 +481,34 @@ NXP
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``lpc11u24_301``
|
||||
- `ARM mbed LPC11U24 (+CAN) <https://developer.mbed.org/handbook/mbed-NXP-LPC11U24>`_
|
||||
- LPC11U24
|
||||
- 48 MHz
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``lpc11u34_421``
|
||||
- `NXP LPC11U34 <http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/lpc-cortex-m-mcus/lpc-cortex-m0-plus-m0/lpc1100-cortex-m0-plus-m0/40kb-flash-8kb-sram-lqfp48-package:LPC11U34FBD48?lang_cd=en>`_
|
||||
- LPC11U34
|
||||
- 48 MHz
|
||||
- 64 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``lpc11u37_501``
|
||||
- `NXP LPC11U37 <http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/lpc-cortex-m-mcus/lpc-cortex-m0-plus-m0/lpc1100-cortex-m0-plus-m0/128kb-flash-10kb-sram-lqfp48-package:LPC11U37FBD48?lang_cd=en>`_
|
||||
- LPC11U37
|
||||
- 48 MHz
|
||||
- 128 Kb
|
||||
- 10 Kb
|
||||
|
||||
* - ``lpc11u68``
|
||||
- `LPCXpresso11U68 <https://developer.mbed.org/platforms/LPCXpresso11U68/>`_
|
||||
- LPC11U68
|
||||
- 50 MHz
|
||||
- 256 Kb
|
||||
- 36 Kb
|
||||
|
||||
* - ``lpc1549``
|
||||
- `NXP LPCXpresso1549 <https://developer.mbed.org/platforms/LPCXpresso1549/>`_
|
||||
- LPC1549
|
||||
@@ -247,7 +521,42 @@ NXP
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 64 Kb
|
||||
|
||||
* - ``lpc2368``
|
||||
- `NXP LPC2368 <https://developer.mbed.org/platforms/mbed-LPC2368/>`_
|
||||
- LPC2368
|
||||
- 72 MHz
|
||||
- 512 Kb
|
||||
- 58 Kb
|
||||
|
||||
* - ``lpc2460``
|
||||
- `NXP LPC2460 <http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/lpc-arm7-arm9-mcus/lpc-arm7-mcus/lpc2100-200-300-400/flashless-16-bit-32-bit-microcontroller-ethernet-can-isp-iap-usb-2.0-device-host-otg-external-memory-interface:LPC2460FBD208>`_
|
||||
- LPC2460
|
||||
- 72 MHz
|
||||
- 64 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``lpc812``
|
||||
- `NXP LPC800-MAX <https://developer.mbed.org/platforms/NXP-LPC800-MAX/>`_
|
||||
- LPC812
|
||||
- 30 MHz
|
||||
- 16 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``lpc824``
|
||||
- `LPCXpresso824-MAX <https://developer.mbed.org/platforms/LPCXpresso824-MAX/>`_
|
||||
- LPC824
|
||||
- 30 MHz
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``micronfcboard``
|
||||
- `MicroNFCBoard <https://developer.mbed.org/platforms/MicroNFCBoard/>`_
|
||||
- LPC11U34
|
||||
- 48 MHz
|
||||
- 64 Kb
|
||||
- 10 Kb
|
||||
|
||||
Nordic
|
||||
~~~~~~
|
||||
@@ -392,6 +701,20 @@ 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_f746ng``
|
||||
- `ST 32F746GDISCOVERY <http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-discovery-kits/32f746gdiscovery.html>`_
|
||||
- STM32F746NGH6
|
||||
- 216 MHz
|
||||
- 1024 Kb
|
||||
- 320 Kb
|
||||
|
||||
* - ``disco_l053c8``
|
||||
- `ST 32L0538DISCOVERY <http://www.st.com/web/en/catalog/tools/PF260319>`_
|
||||
- STM32L053C8T6
|
||||
@@ -399,6 +722,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
|
||||
@@ -406,6 +736,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
|
||||
@@ -434,6 +778,13 @@ ST
|
||||
- 128 Kb
|
||||
- 20 Kb
|
||||
|
||||
* - ``nucleo_f207zg``
|
||||
- `ST Nucleo F207ZG <https://developer.mbed.org/platforms/ST-Nucleo-F207ZG/>`_
|
||||
- STM32F207ZGT6
|
||||
- 120 MHz
|
||||
- 1024 Kb
|
||||
- 128 Kb
|
||||
|
||||
* - ``nucleo_f302r8``
|
||||
- `ST Nucleo F302R8 <https://developer.mbed.org/platforms/ST-Nucleo-F302R8/>`_
|
||||
- STM32F302R8T6
|
||||
@@ -441,6 +792,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
|
||||
@@ -462,6 +820,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
|
||||
@@ -469,6 +834,55 @@ ST
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
* - ``nucleo_f429zi``
|
||||
- `ST Nucleo F429ZI <https://developer.mbed.org/platforms/ST-Nucleo-F429ZI/>`_
|
||||
- STM32F429ZIT6
|
||||
- 180 MHz
|
||||
- 2048 Kb
|
||||
- 256 Kb
|
||||
|
||||
* - ``nucleo_f446re``
|
||||
- `ST Nucleo F446RE <https://developer.mbed.org/platforms/ST-Nucleo-F446RE/>`_
|
||||
- STM32F446RET6
|
||||
- 180 MHz
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
* - ``nucleo_f446ze``
|
||||
- `ST Nucleo F446ZE <https://developer.mbed.org/platforms/ST-Nucleo-F446ZE/>`_
|
||||
- STM32F446ZET6
|
||||
- 180 MHz
|
||||
- 512 Kb
|
||||
- 128 Kb
|
||||
|
||||
* - ``nucleo_f746zg``
|
||||
- `ST Nucleo F746ZG <https://developer.mbed.org/platforms/ST-Nucleo-F446ZE/>`_
|
||||
- STM32F746ZGT6
|
||||
- 216 MHz
|
||||
- 1024 Kb
|
||||
- 320 Kb
|
||||
|
||||
* - ``nucleo_f767zi``
|
||||
- `ST Nucleo F767ZI <https://developer.mbed.org/platforms/ST-Nucleo-F767ZI/>`_
|
||||
- STM32F746ZGT6
|
||||
- 216 MHz
|
||||
- 2048 Kb
|
||||
- 512 Kb
|
||||
|
||||
* - ``nucleo_l011k4``
|
||||
- `ST Nucleo L011K4 <https://developer.mbed.org/platforms/ST-Nucleo-L011K4/>`_
|
||||
- STM32L011K4T6
|
||||
- 32 MHz
|
||||
- 16 Kb
|
||||
- 2 Kb
|
||||
|
||||
* - ``nucleo_l031k6``
|
||||
- `ST Nucleo L031K6 <https://developer.mbed.org/platforms/ST-Nucleo-L031K6/>`_
|
||||
- STM32L031K6T6
|
||||
- 32 MHz
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``nucleo_l053r8``
|
||||
- `ST Nucleo L053R8 <https://developer.mbed.org/platforms/ST-Nucleo-L053R8/>`_
|
||||
- STM32L053R8T6
|
||||
@@ -476,6 +890,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
|
||||
@@ -483,6 +904,20 @@ ST
|
||||
- 512 Kb
|
||||
- 80 Kb
|
||||
|
||||
* - ``nucleo_l432kc``
|
||||
- `ST Nucleo L432KC <https://developer.mbed.org/platforms/ST-Nucleo-L432KC/>`_
|
||||
- STM32L432KCU6
|
||||
- 80 MHz
|
||||
- 256 Kb
|
||||
- 64 Kb
|
||||
|
||||
* - ``nucleo_l476rg``
|
||||
- `ST Nucleo L476RG <https://developer.mbed.org/platforms/ST-Nucleo-L476RG/>`_
|
||||
- STM32L476RGT6
|
||||
- 80 MHz
|
||||
- 1024 Kb
|
||||
- 128 Kb
|
||||
|
||||
SeeedStudio
|
||||
~~~~~~~~~~~
|
||||
|
||||
@@ -496,19 +931,54 @@ SeeedStudio
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``seeedTinyBLE``
|
||||
- `SeeedStudio Seeed Tiny BLE <http://developer.mbed.org/platforms/Seeed-Tiny-BLE/>`_
|
||||
* - ``seeedArchBLE``
|
||||
- `Seeed Arch BLE <https://developer.mbed.org/platforms/Seeed-Arch-BLE/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 128 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``seeedArchGPRS``
|
||||
- `Seeed Arch GPRS V2 <https://www.seeedstudio.com/Arch-GPRS-V2-p-2026.html>`_
|
||||
- LPC11U37
|
||||
- 48 MHz
|
||||
- 128 Kb
|
||||
- 10 Kb
|
||||
|
||||
* - ``seeedArchLink``
|
||||
- `Seeed Arch Link <https://developer.mbed.org/platforms/Seeed-Arch-Link/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``seeeduinoArchPro``
|
||||
- `SeeedStudio Seeeduino-Arch-Pro <https://developer.mbed.org/platforms/Seeeduino-Arch-Pro/>`_
|
||||
* - ``seeedArchMax``
|
||||
- `Seeed Arch Max <https://developer.mbed.org/platforms/Seeed-Arch-Max/>`_
|
||||
- STM32F407VET6
|
||||
- 168 MHz
|
||||
- 512 Kb
|
||||
- 192 Kb
|
||||
|
||||
* - ``seeedArchPro``
|
||||
- `Seeed Arch Pro <https://developer.mbed.org/platforms/Seeeduino-Arch-Pro/>`_
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 64 Kb
|
||||
|
||||
* - ``seeedTinyBLE``
|
||||
- `Seeed Tiny BLE <http://developer.mbed.org/platforms/Seeed-Tiny-BLE/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 16 Kb
|
||||
|
||||
* - ``xadow_m0``
|
||||
- `Seeed Xadow M0 <https://developer.mbed.org/platforms/Seeed-Xadow-M0/>`_
|
||||
- LPC11U35
|
||||
- 48 MHz
|
||||
- 64 Kb
|
||||
- 10 Kb
|
||||
|
||||
Silicon Labs
|
||||
~~~~~~~~~~~~
|
||||
@@ -544,6 +1014,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
|
||||
@@ -558,6 +1035,26 @@ Silicon Labs
|
||||
- 32 Kb
|
||||
- 4 Kb
|
||||
|
||||
Smeshlink
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``xbed_lpc1768``
|
||||
- `Smeshlink xbed LPC1768 <https://developer.mbed.org/platforms/xbed-LPC1768/>`_
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
|
||||
Solder Splash Labs
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -578,6 +1075,26 @@ Solder Splash Labs
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
SolderSplash Labs
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``lpc1347``
|
||||
- `DipCortex M3 <https://developer.mbed.org/platforms/DipCortex-M3/>`_
|
||||
- LPC1347
|
||||
- 72 MHz
|
||||
- 64 Kb
|
||||
- 12 Kb
|
||||
|
||||
Switch Science
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
@@ -605,6 +1122,20 @@ Switch Science
|
||||
- 32 Kb
|
||||
- 4 Kb
|
||||
|
||||
* - ``ssci824``
|
||||
- `Switch Science mbed LPC824 <https://developer.mbed.org/platforms/Switch-Science-mbed-LPC824/>`_
|
||||
- LPC824
|
||||
- 30 MHz
|
||||
- 32 Kb
|
||||
- 8 Kb
|
||||
|
||||
* - ``ty51822r3``
|
||||
- `Switch Science mbed TY51822r3 <https://developer.mbed.org/platforms/Switch-Science-mbed-TY51822r3/>`_
|
||||
- NRF51822
|
||||
- 32 MHz
|
||||
- 256 Kb
|
||||
- 32 Kb
|
||||
|
||||
Teensy
|
||||
~~~~~~
|
||||
|
||||
@@ -619,7 +1150,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
|
||||
@@ -643,4 +1174,26 @@ u-blox
|
||||
- LPC1768
|
||||
- 96 MHz
|
||||
- 512 Kb
|
||||
- 32 Kb
|
||||
- 64 Kb
|
||||
|
||||
y5 design
|
||||
~~~~~~~~~
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Type ``board``
|
||||
- Name
|
||||
- Microcontroller
|
||||
- Frequency
|
||||
- Flash
|
||||
- RAM
|
||||
|
||||
* - ``nrf51822_y5_mbug``
|
||||
- `y5 nRF51822 mbug <https://developer.mbed.org/platforms/Y5-NRF51822-MBUG/>`_
|
||||
- NRF51822
|
||||
- 16 MHz
|
||||
- 256 Kb
|
||||
- 16 Kb
|
||||
|
||||
.. include:: mbed_extra.rst
|
||||
|
||||
32
docs/frameworks/mbed_extra.rst
Normal file
@@ -0,0 +1,32 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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_espressif8266`
|
||||
- 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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
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 +1,12 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. include:: ../HISTORY.rst
|
||||
|
||||
16
docs/ide.rst
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide:
|
||||
|
||||
IDE Integration
|
||||
@@ -6,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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. 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:
|
||||
|
||||
- 300+ embedded boards
|
||||
- 15+ 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,31 +0,0 @@
|
||||
.. _ide_arduino:
|
||||
|
||||
Arduino
|
||||
=======
|
||||
|
||||
The open-source `Arduino Software (IDE) <http://arduino.cc/en/main/software>`_
|
||||
makes it easy to write code and upload it to the board. It runs on *Windows,
|
||||
Mac OS X, and Linux*. The environment is written in *Java* and based on
|
||||
*Processing* and other open-source software.
|
||||
|
||||
This software can be used with:
|
||||
|
||||
* :ref:`platform_atmelavr`
|
||||
* :ref:`platform_atmelsam`
|
||||
* :ref:`framework_arduino`
|
||||
|
||||
Refer to the `Arduino Getting Started <http://arduino.cc/en/Guide/HomePage>`_
|
||||
page for Installation instructions.
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
More detailed information is located in PlatformIO blog:
|
||||
`Integration of PlatformIO library manager to Arduino IDE <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_.
|
||||
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
|
||||
.. image:: ../_static/ide-platformio-arduino.png
|
||||
:target: http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides
|
||||
@@ -1,39 +1,502 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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`
|
||||
- 300+ embedded boards
|
||||
- 15+ 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/stable/_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 separately 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 and restart Atom:
|
||||
|
||||
- **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
|
||||
|
||||
.. warning::
|
||||
If you see ``Failed to find MSBuild toolsets directory`` error in
|
||||
the installation console, please ignore it and press any key to close
|
||||
this window. PlatformIO IDE uses only Clang completion engine that
|
||||
should work after it without any problems.
|
||||
|
||||
- **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::
|
||||
If some libraries are not visible in :ref:`ide_atom` and Code Completion or
|
||||
Code Linting does not work properly, please perform ``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.
|
||||
|
||||
Screenshot
|
||||
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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_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/stable/_images/ide-atom-platformio-quick-start-14.png
|
||||
|
||||
|
||||
User Guide
|
||||
----------
|
||||
|
||||
Building
|
||||
^^^^^^^^
|
||||
.. _atom_ide_platformio_menu:
|
||||
|
||||
.. image:: ../_static/ide-platformio-atom-1.gif
|
||||
:target: https://atom.io/packages/platomformio
|
||||
Menu item ``PlatformIO``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Uploading
|
||||
^^^^^^^^^
|
||||
`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-platformio-atom-2.gif
|
||||
:target: https://atom.io/packages/platomformio
|
||||
.. 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::
|
||||
If some libraries are not visible in :ref:`ide_atom` and Code Completion or
|
||||
Code Linting does not work properly, please perform ``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 setup () {
|
||||
someFunction(13);
|
||||
}
|
||||
|
||||
void 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 setup () {
|
||||
someFunction(13);
|
||||
}
|
||||
|
||||
void 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``).
|
||||
|
||||
Arch Linux: PlatformIO IDE Terminal issue
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Please read this article `Installing PlatformIO on Arch Linux <https://primalcortex.wordpress.com/2016/08/18/platformio/>`_.
|
||||
|
||||
.. _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
|
||||
------------------
|
||||
|
||||
* Aug 18, 2016 - **Primal Cortex** - `Installing PlatformIO on Arch Linux <https://primalcortex.wordpress.com/2016/08/18/platformio/>`_
|
||||
* Jul 26, 2016 - **Embedded Systems Laboratory** - `แนะนำการใช้งาน PlatformIO IDE สำหรับบอร์ด Arduino และ ESP8266 (Get started with PlatformIO IDE for Arduino board and ESP8266, Thai) <http://cpre.kmutnb.ac.th/esl/learning/index.php?article=intro_platformio-ide>`_
|
||||
* 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`.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_clion:
|
||||
|
||||
CLion
|
||||
@@ -9,43 +20,131 @@ 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/stable/_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 ``ID`` 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%
|
||||
platformio init --ide clion --board <ID>
|
||||
|
||||
Then import this project from start menu or via ``File > Import Project>`` and
|
||||
specify root directory where is located :ref:`projectconf`.
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide clion --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Place source files (``*.c, *.cpp, *.h, *.hpp``) to ``src`` directory
|
||||
2. Import this project via ``Menu: File > Import Project``
|
||||
and specify root directory where is located :ref:`projectconf`
|
||||
3. Open source file from ``src`` directory
|
||||
4. Build project (*DO NOT RUN*): ``Menu: Run > Build``.
|
||||
|
||||
.. warning::
|
||||
CLion is still in the development stage, so some of the features (like,
|
||||
auto-complete) probably will not work with PlatformIO. See
|
||||
`CLion issue #CPP-3977 <https://youtrack.jetbrains.com/issue/CPP-3977>`_.
|
||||
|
||||
Active discussion located in
|
||||
`PlatformIO issue #132 <https://github.com/platformio/platformio/issues/132>`_.
|
||||
See know issue: :ref:`ide_clion_knownissues_inopde_not_supported` and how
|
||||
to resolve it.
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
There are 6 predefined targets for building (*NOT FOR RUNNING*, see marks on
|
||||
the screenshot below):
|
||||
|
||||
.. image:: ../_static/ide-platformio-clion.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-clion.png
|
||||
* ``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`
|
||||
* ``PLATFORMIO_REBUILD_PROJECT_INDEX`` - Rebuild C/C++ Index for the Project.
|
||||
Allows to fix code completion and code linting issues.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added, installed or used in the project
|
||||
after generating process wont be reflected in IDE. To fix it please run
|
||||
``PLATFORMIO_REBUILD_PROJECT_INDEX`` target.
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
.. _ide_clion_knownissues_inopde_not_supported:
|
||||
|
||||
Arduino ``.ino`` files are not supported
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
CLion uses "CMake" tool for code completion and code linting. As result, it
|
||||
doesn't support 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.
|
||||
|
||||
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) {
|
||||
}
|
||||
|
||||
|
||||
Articles / Manuals
|
||||
------------------
|
||||
|
||||
* 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 more :ref:`articles`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
"Blink" Project
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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/stable/_images/ide-platformio-codeblocks.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Choose board ``ID`` 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 <ID>
|
||||
|
||||
# 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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_eclipse:
|
||||
|
||||
Eclipse
|
||||
@@ -13,43 +24,82 @@ 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/stable/_static/ide-platformio-eclipse.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Project Generator
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
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 ``ID`` 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%
|
||||
platformio init --ide eclipse --board <ID>
|
||||
|
||||
Then import this project via ``File > Import... > General > Existing Projects
|
||||
into Workspace > Next`` and specify root directory where is located
|
||||
:ref:`projectconf`.
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide eclipse --board uno
|
||||
|
||||
Manual Integration
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
Then:
|
||||
|
||||
More detailed information is located in PlatformIO blog: `Building and debugging Atmel AVR (Arduino-based) project using Eclipse IDE+PlatformIO <http://www.ikravets.com/computer-life/programming/2014/06/20/building-and-debugging-atmel-avr-arduino-based-project-using-eclipse-ideplatformio>`_.
|
||||
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 using ``Menu: Project > Build Project`` or pre-configured
|
||||
Make Targets (see screenshot below):
|
||||
|
||||
`More examples (TI MSP430, TI TIVA, etc.) <https://github.com/platformio/platformio/tree/develop/examples/ide-eclipse>`_
|
||||
+ ``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`
|
||||
+ ``PlatformIO: Rebuild C/C++ Project Index`` - Rebuild C/C++ Index for the Project.
|
||||
Allows to fix code completion and code linting issues.
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
If you have some problems with unresolved includes, defines, etc., then
|
||||
|
||||
.. 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
|
||||
1. Rebuild PlatformIO Project Index:
|
||||
``PlatformIO: Rebuild C/C++ Project Index`` target
|
||||
2. Rebuild Eclipse Project Index: ``Menu: Project > C/C++ Index > Rebuild``
|
||||
3. Refresh Project, right click on the project ``Project > Refresh`` (F5) or
|
||||
restart Eclipse IDE.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added, installed or used in the project
|
||||
after generating process wont be reflected in IDE. To fix it please run
|
||||
``PlatformIO: Rebuild C/C++ Project Index`` target and right click on the
|
||||
project and ``Project > Refresh`` (F5).
|
||||
|
||||
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
|
||||
------------------
|
||||
|
||||
* 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`.
|
||||
|
||||
Examples
|
||||
--------
|
||||
|
||||
"Blink" Project
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
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-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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/stable/_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 ``ID`` 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 <ID>
|
||||
|
||||
|
||||
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,30 +0,0 @@
|
||||
.. _ide_energia:
|
||||
|
||||
Energia
|
||||
=======
|
||||
|
||||
The open-source `Energia Software (IDE) <http://energia.nu>`_
|
||||
makes it easy to write code and upload it to the board. It runs on *Windows,
|
||||
Mac OS X, and Linux*. The environment is written in *Java* and based on
|
||||
*Processing* and other open-source software.
|
||||
|
||||
This software can be used with:
|
||||
|
||||
* :ref:`platform_timsp430`
|
||||
* :ref:`platform_titiva`
|
||||
* :ref:`framework_energia`
|
||||
|
||||
Refer to the `Energia Getting Started <http://energia.nu/guide/>`_
|
||||
page for Installation instructions.
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
More detailed information is located in PlatformIO blog:
|
||||
`Integration of PlatformIO library manager to Energia IDE <http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides>`_.
|
||||
|
||||
Screenshot
|
||||
-----------
|
||||
|
||||
.. image:: ../_static/ide-platformio-energia.png
|
||||
:target: http://www.ikravets.com/computer-life/platformio/2014/10/07/integration-of-platformio-library-manager-to-arduino-and-energia-ides
|
||||
64
docs/ide/netbeans.rst
Normal file
@@ -0,0 +1,64 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _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/stable/_images/ide-platformio-netbeans.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
Choose board ``ID`` 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 <ID>
|
||||
|
||||
# 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,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_qtcreator:
|
||||
|
||||
Qt Creator
|
||||
@@ -5,37 +16,79 @@ 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/stable/_static/ide-platformio-qtcreator-7.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
.. note::
|
||||
Please verify that folder where is located ``platformio`` program is added
|
||||
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
|
||||
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
|
||||
|
||||
Project Generator
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
Since PlatformIO 2.0 you can generate Qt Creator compatible project using
|
||||
:option:`platformio init --ide` command. Please choose board type using
|
||||
:ref:`cmd_boards` command and run:
|
||||
Choose board ``ID`` 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%
|
||||
platformio init --ide qtcreator --board <ID>
|
||||
|
||||
Then import this project via ``File > New File or Project > Import Project``
|
||||
and specify root directory where is located :ref:`projectconf`.
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide qtcreator --board uno
|
||||
|
||||
After import, 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):
|
||||
Then:
|
||||
|
||||
1. Import project via ``File > Open File or Project`` and select
|
||||
``platformio.pro`` from the folder where is located :ref:`projectconf`
|
||||
2. Select default desktop kit and click on ``Configure Project`` (``Projects``
|
||||
mode, left panel)
|
||||
3. Set ``General > Build directory`` to the project directory where
|
||||
is located :ref:`projectconf`
|
||||
4. Remove all items from ``Build Steps``, click on
|
||||
``Build Steps > Add Build Step > Custom Process Step`` and set:
|
||||
|
||||
* **Command**: ``platformio``
|
||||
* **Arguments**: ``-f -c qtcreator run``
|
||||
* **Working directory**: ``%{buildDir}``
|
||||
|
||||
5. Remove all items from ``Clean Steps``, click on
|
||||
``Clean Steps > Add Clean Step > Custom Process Step`` and set:
|
||||
|
||||
* **Command**: ``platformio``
|
||||
* **Arguments**: ``-f -c qtcreator run --target clean``
|
||||
* **Working directory**: ``%{buildDir}``
|
||||
|
||||
6. Update ``PATH`` in ``Build Environment > PATH > EDIT`` with the result of
|
||||
this command (paste in Terminal):
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
# Linux, Mac
|
||||
echo $PATH
|
||||
|
||||
# Windows
|
||||
echo %PATH%
|
||||
|
||||
7. Switch to ``Edit`` mode (left panel) and open source file from ``src``
|
||||
directory (``*.c, *.cpp, *.ino, etc.``)
|
||||
8. Build project: ``Menu: Build > Build All``.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-3.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-3.png
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-3.png
|
||||
|
||||
.. warning::
|
||||
The libraries which are added, installed or used in the project
|
||||
after generating process wont be reflected in IDE. To fix it you
|
||||
need to reinitialize project using :ref:`cmd_init` (repeat it).
|
||||
|
||||
Manual Integration
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
@@ -46,16 +99,16 @@ Setup New Project
|
||||
First of all, let's create new project from Qt Creator Start Page: ``New Project`` or using ``Menu: File > New File or Project``, then select project with ``Empty Qt Project`` type (``Other Project > Empty Qt Project``), fill ``Name``, ``Create in``.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-1.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-1.png
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-1.png
|
||||
|
||||
On the next steps select any available kit and click Finish button.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-2.png
|
||||
|
||||
Secondly, we need to delete default build and clean steps and configure project with PlatformIO source code builder (click on Projects label on left menu or ``Ctrl+5`` shortcut):
|
||||
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
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-3.png
|
||||
|
||||
Thirdly, change project file by adding path to directories with header files. Please edit project file to match the following contents:
|
||||
|
||||
@@ -72,7 +125,7 @@ Thirdly, change project file by adding path to directories with header files. Pl
|
||||
INCLUDEPATH += "$${HOMEDIR}/.platformio/packages/toolchain-atmelavr/avr/include"
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-4.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-4.png
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-4.png
|
||||
|
||||
First program in Qt Creator
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -83,7 +136,7 @@ Simple "Blink" project will consist from two files:
|
||||
Let's create new text file named ``main.c`` using ``Menu: New File or Project > General > Text File``:
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-5.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-5.png
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-5.png
|
||||
|
||||
Copy the source code which is described below to file ``main.c``.
|
||||
|
||||
@@ -108,33 +161,35 @@ Copy the source code which is described below to file ``main.c``.
|
||||
3. Locate the project configuration file named ``platformio.ini`` at the root of the project directory and open it.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-6.png
|
||||
:target: http://docs.platformio.org/en/latest/_static/ide-platformio-qtcreator-6.png
|
||||
:target: http://docs.platformio.org/en/stable/_static/ide-platformio-qtcreator-6.png
|
||||
|
||||
Edit the content to match the code described below.
|
||||
|
||||
.. code-block:: none
|
||||
.. code-block:: ini
|
||||
|
||||
#
|
||||
# Project Configuration File
|
||||
#
|
||||
# A detailed documentation with the EXAMPLES is located here:
|
||||
# http://docs.platformio.org/en/latest/projectconf.html
|
||||
#
|
||||
|
||||
# A sign `#` at the beginning of the line indicates a comment
|
||||
# Comment lines are ignored.
|
||||
; PlatformIO Project Configuration File
|
||||
;
|
||||
; Build options: build flags, source filter, extra scripting
|
||||
; Upload options: custom port, speed and extra flags
|
||||
; Library options: dependencies, extra library storages
|
||||
;
|
||||
; Please visit documentation for the other options and examples
|
||||
; http://docs.platformio.org/en/stable/projectconf.html
|
||||
|
||||
[env:arduino_uno]
|
||||
platform = atmelavr
|
||||
framework = arduino
|
||||
board = uno
|
||||
|
||||
|
||||
Conclusion
|
||||
----------
|
||||
~~~~~~~~~~
|
||||
|
||||
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build All``:
|
||||
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build All``.
|
||||
|
||||
.. image:: ../_static/ide-platformio-qtcreator-7.png
|
||||
: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-examples/tree/develop/ide/qtcreator>`_.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_sublimetext:
|
||||
|
||||
Sublime Text
|
||||
@@ -5,36 +16,68 @@ 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 ``ID`` 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%
|
||||
platformio init --ide sublimetext --board <ID>
|
||||
|
||||
Then import this project via ``Project > Open Project...`` and specify root
|
||||
directory where is located :ref:`projectconf`.
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide sublimetext --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Import project via ``Menu: Project > Open Project...`` and select
|
||||
``platformio.sublime-project`` from the folder where is located :ref:`projectconf`
|
||||
2. Select PlatformIO as build system: ``Menu: Tools > Build System > PlatformIO``
|
||||
3. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
|
||||
4. Build project: ``Menu: Tools > Build``.
|
||||
|
||||
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
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. note::
|
||||
Please verify that folder where is located ``platformio`` program is added
|
||||
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
|
||||
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
|
||||
|
||||
Initial configuration
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -45,17 +88,17 @@ described below:
|
||||
.. code-block:: bash
|
||||
|
||||
{
|
||||
"cmd": ["platformio", "--force", "run"],
|
||||
"cmd": ["platformio", "-f", "-c", "sublimetext", "run"],
|
||||
"working_dir": "${project_path:${folder}}",
|
||||
"variants":
|
||||
[
|
||||
{
|
||||
"name": "Clean",
|
||||
"cmd": ["platformio", "--force", "run", "--target", "clean"]
|
||||
"cmd": ["platformio", "-f", "-c", "sublimetext", "run", "--target", "clean"]
|
||||
},
|
||||
{
|
||||
"name": "Upload",
|
||||
"cmd": ["platformio", "--force", "run", "--target", "upload"]
|
||||
"cmd": ["platformio", "-f", "-c", "sublimetext", "run", "--target", "upload"]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -121,17 +164,16 @@ Let's create new file named ``main.c`` using ``Menu: File > New File`` or shortc
|
||||
2. Project Configuration File named ``platformio.ini`` must be located in the project root directory.
|
||||
Copy the source code which is described below to it.
|
||||
|
||||
.. code-block:: none
|
||||
.. code-block:: ini
|
||||
|
||||
#
|
||||
# Project Configuration File
|
||||
#
|
||||
# A detailed documentation with the EXAMPLES is located here:
|
||||
# http://docs.platformio.org/en/latest/projectconf.html
|
||||
#
|
||||
|
||||
# A sign `#` at the beginning of the line indicates a comment
|
||||
# Comment lines are ignored.
|
||||
; PlatformIO Project Configuration File
|
||||
;
|
||||
; Build options: build flags, source filter, extra scripting
|
||||
; Upload options: custom port, speed and extra flags
|
||||
; Library options: dependencies, extra library storages
|
||||
;
|
||||
; Please visit documentation for the other options and examples
|
||||
; http://docs.platformio.org/en/stable/projectconf.html
|
||||
|
||||
[env:arduino_uno]
|
||||
platform = atmelavr
|
||||
@@ -139,8 +181,14 @@ Copy the source code which is described below to it.
|
||||
board = uno
|
||||
|
||||
Conclusion
|
||||
----------
|
||||
~~~~~~~~~~
|
||||
|
||||
Taking everything into account, we can open project directory in Sublime Text using ``Menu: File > Open Folder`` and build it with shortcut ``Ctrl+B`` (Windows/Linux) or ``Cmd+B`` (Mac), clean project with shortcut ``F11`` and upload firmware to target with shortcut ``F12``.
|
||||
|
||||
.. image:: ../_static/ide-sublime-text-platformio-newproject-5.png
|
||||
Examples
|
||||
--------
|
||||
|
||||
"Blink" Project
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Source code of `Sublime Text "Blink" Project <https://github.com/platformio/platformio-examples/tree/develop/ide/sublimetext>`_.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_vim:
|
||||
|
||||
VIM
|
||||
@@ -7,14 +18,18 @@ 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:
|
||||
.. image:: ../_static/ide-platformio-vim.png
|
||||
|
||||
* all available :ref:`platforms`
|
||||
* all available :ref:`frameworks`
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
.. note::
|
||||
Please verify that folder where is located ``platformio`` program is added
|
||||
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
|
||||
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
|
||||
|
||||
Recommended bundles:
|
||||
|
||||
* Syntax highlight - `Arduino-syntax-file <https://github.com/vim-scripts/Arduino-syntax-file>`_
|
||||
@@ -30,17 +45,45 @@ Put to the project directory ``Makefile`` wrapper with contents:
|
||||
#PATH := /usr/local/bin:$(PATH)
|
||||
|
||||
all:
|
||||
platformio --force run --target upload
|
||||
platformio -f -c vim run
|
||||
|
||||
upload:
|
||||
platformio -f -c vim run --target upload
|
||||
|
||||
clean:
|
||||
platformio --force run --target 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,
|
||||
make firmware and upload it.
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
.. note::
|
||||
If hotkey doesn't work for you, try to add this line
|
||||
``nnoremap <C-b> :make<CR>`` to ``~/.vimrc``
|
||||
|
||||
.. image:: ../_static/ide-platformio-vim.png
|
||||
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`.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
.. Copyright 2014-present PlatformIO <contact@platformio.org>
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
.. _ide_visualstudio:
|
||||
|
||||
Visual Studio
|
||||
@@ -5,32 +16,46 @@ 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/stable/_static/ide-vs-platformio-newproject-8.png
|
||||
|
||||
.. contents::
|
||||
|
||||
Integration
|
||||
-----------
|
||||
|
||||
.. note::
|
||||
Please verify that folder where is located ``platformio`` program is added
|
||||
to `PATH (wiki) <https://en.wikipedia.org/wiki/PATH_(variable)>`_ environment
|
||||
variable. See FAQ: :ref:`faq_troubleshooting_pionotfoundinpath`.
|
||||
|
||||
Project Generator
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
Since PlatformIO 2.0 you can generate Visual Studio compatible project using
|
||||
:option:`platformio init --ide` command. Please choose board type using
|
||||
:ref:`cmd_boards` command and run:
|
||||
Choose board ``ID`` 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 <ID>
|
||||
|
||||
Then import this project via ``File->Open->Project/Solution`` and specify root
|
||||
directory where is located :ref:`projectconf`.
|
||||
# For example, generate project for Arduino UNO
|
||||
platformio init --ide visualstudio --board uno
|
||||
|
||||
Then:
|
||||
|
||||
1. Import this project via ``Menu: File > Open > Project/Solution``
|
||||
and specify root directory where is located :ref:`projectconf`
|
||||
2. Open source file from ``src`` directory (``*.c, *.cpp, *.ino, etc.``)
|
||||
3. Build project: ``Menu: Build > Build Solution``.
|
||||
|
||||
.. warning::
|
||||
The libraries which are added, installed or used in the project
|
||||
after generating process wont be reflected in IDE. To fix it you
|
||||
need to reinitialize project using :ref:`cmd_init` (repeat it).
|
||||
|
||||
Manual Integration
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
@@ -42,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
|
||||
|
||||
@@ -68,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
|
||||
@@ -99,17 +124,16 @@ Copy the source code which is described below to file ``main.c``.
|
||||
|
||||
Copy the source code which is described below to it.
|
||||
|
||||
.. code-block:: none
|
||||
.. code-block:: ini
|
||||
|
||||
#
|
||||
# Project Configuration File
|
||||
#
|
||||
# A detailed documentation with the EXAMPLES is located here:
|
||||
# http://docs.platformio.org/en/latest/projectconf.html
|
||||
#
|
||||
|
||||
# A sign `#` at the beginning of the line indicates a comment
|
||||
# Comment lines are ignored.
|
||||
; PlatformIO Project Configuration File
|
||||
;
|
||||
; Build options: build flags, source filter, extra scripting
|
||||
; Upload options: custom port, speed and extra flags
|
||||
; Library options: dependencies, extra library storages
|
||||
;
|
||||
; Please visit documentation for the other options and examples
|
||||
; http://docs.platformio.org/en/stable/projectconf.html
|
||||
|
||||
[env:arduino_uno]
|
||||
platform = atmelavr
|
||||
@@ -118,9 +142,36 @@ Copy the source code which is described below to it.
|
||||
|
||||
|
||||
Conclusion
|
||||
----------
|
||||
~~~~~~~~~~
|
||||
|
||||
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build Solution``:
|
||||
Taking everything into account, we can build project with shortcut ``Ctrl+Shift+B`` or using ``Menu: Build > Build Solution``.
|
||||
|
||||
.. image:: ../_static/ide-vs-platformio-newproject-8.png
|
||||
: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-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/stable/_static/ide-vs-platformio-newproject-9.png
|
||||
|
||||