May 27, 2016, 2:26pm
Is there any place I can check upstream version that corresponds to specific package version?
Eg. framework-mbed is currently listed at version “13” but this is not the upstream version (currently 120, in PIO I guess is 117), and same for framework-arduinoavr which is listed as “30” but Arduino is currently at 1.6.9, installed version.txt in PIO reads 10608 and is described as 1.6 in package.json. Not to say this is confusing.
May 27, 2016, 6:04pm
+1, this will help us to know on which ‘real’ version we work.
I propose to forget about PlatformIO 2.0. We are working on the PlatformIO 3.0 and new decentralized architecture for development platforms. All platforms related code has been moved to separate repositories. You will be able to clone/modify or create own development platform in a few steps.
Now, each development platform defines own requirements, contains own build scripts, LD scripts, examples and etc. See:
Related GitHub issue from PlatformIO 3.0 roadmap:
01:00PM - 27 Jan 16 UTC
02:37PM - 11 Jun 16 UTC
We are very happy that PlatformIO community is growing up extremely fast
… . The last weeks have brought us a lot of requests to add new board or platform https://github.com/platformio/platformio/issues. This forces us to refactor PlatformIO 3.0 development platforms logic from the scratch. The main aim is to allow users, developers or even embedded vendors to create own "development platform" which can be easily installed using PlatformIO.
## Platform developer
Developer of "development platform" should provide the next information for PlatformIO Platform Manager:
- Generic platform information (name, version, etc)
- Package dependencies
- Platform build script
- Frameworks (supported by this platform) build scripts
- Boards list (only for embedded platforms)
**Package dependencies** should allow to use `semver` notation. For example, `"framework-mbed": "~1.2.0"`. In this case default PlatformIO Package Storage should be used. If package does not exist in PlatformIO Package Storage or developer wants to use own package, then allow to specify "direct download link" to it.
## PlatformIO Core
### PlatformIO Platforms Registry
Need to implement public Platforms Registry where will be located information about existing "development platforms". They will by used by http://docs.platformio.org/en/latest/userguide/platforms/cmd_search.html
# Platform is registered in Platforms Registry
It should look from the CLI as generic CLI for PlatformIO 2.0http://docs.platformio.org/en/latest/userguide/platforms/cmd_install.html
# Platform is not registered in Platforms Registry
Allow to install it directly using archive or folder which contains `platform.json`
platformio platform install file:///path/to/platform.zip
platformio platform install https://github.com/path/to/platform.zip
platformio platform install file:///path/to/platform/dir
Comments are welcome!
May 30, 2016, 4:39pm
I see lot of development in 3.x area, is the code usable yet?
Do you use PlatformIO IDE or only PlatformIO CLI?
On a related note, is there any way to update a package?
framework-mbed is “latest” at version
13 (which, looking into
mbed.h means actually
$ platformio platforms update
Updating framework-mbed package:
Versions: Current=13, Latest=13 [Up-to-date]
Updating toolchain-gccarmnoneeabi package:
Versions: Current=3, Latest=3 [Up-to-date]
Far as I can tell, this version has a bug in its implementation of
Serial.printf() which prevents emitting
floats - however, if I build my very same code in the mbed online IDE, (which links with revision
framework-mbed) the code runs correctly.
How do we go about updating the framework?
(I’m using platformio 2.9.5 – let’s assume I’d rather not upgrade to 3.0, unless you tell me it’s stable and fully usable).
@valeros please update ARM mbed framework. Thanks.
Thanks, guys - you’re heroes!
The ARM mbed framework package has been updated today and released with new PlatformIO 2.10.0.
PlatformIO CLI 2.10.0 is released!
Added support for emonPi, the OpenEnergyMonitor system ( issue #687)
Added support for SPL framework for STM32F0 boards ( issue #683)
Added support for Arduboy DevKit, the game system the size of a credit card
Updated ARM mbed framework package to v121
Check program size before uploading to the board ( issue #689)
Improved firmware uploading to Arduino Leonardo based boards ( issue #691)
Fixed issue with -L relative/path when parsing build_flags ( i…
Well, thanks for that - it didn’t work: it wasn’t a bug in mbed’s
printf() library, but something in platformio.
I’ve posted a more detailed description here (here’s to hoping I can post the link here…)
I’m using the latest version:
$ platformio --version
PlatformIO, version 2.10.1
which also has the latest mbed-platform (rev 14 - aka 121 in mbed versioning).
When I compile and run a very simple “hello world” type of program with the online mbed compiler (mbed org) I get this (expected) output:
Starting LED flashing every 0.200 sec
Exiting now - 3.142; 99; 2.768000
when using (exactly the same code) compiled with plaformio run, this is the output:
Starting LED flashing every sec