New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Infer more defaults in platformio.ini #21

Closed
pelikhan opened this Issue Oct 6, 2014 · 5 comments

Comments

Projects
None yet
2 participants
@pelikhan

pelikhan commented Oct 6, 2014

Make the platform command line easier to use by providing more defaults for 'well-known' boards like the uno. If the user specifies that he is using an Arduino Uno, the platform and framework can be inferred.

@ivankravets

This comment has been minimized.

Member

ivankravets commented Oct 6, 2014

PlatformIO was developed like a cross-platform code builder. The board option was implemented later. There is no reverse compatibility from BOARD->FRAMEWORK->PLATFORM. Because the different platforms/frameworks can have the same "board" name (theoretically).

In general, this works like:

  1. If board is specified, then go to step 2
  2. Check if framework is defined, if yes go to 3
  3. Check if framework has boards.txt file, if yes, go to 4
  4. Parse board.txt and lookup for board's options by board value.

I think there is no big problem to define 2 lines with platform and framework 😄

Thanks a lot for your issues and ideas! 👍

@ivankravets ivankravets closed this Oct 6, 2014

@pelikhan

This comment has been minimized.

pelikhan commented Oct 7, 2014

From the user perspective, it adds friction. What about:

  1. if (1), then go to (1.5)

1.5. if not framework, infer framework, go to (2)

you get the idea ;)

@ivankravets ivankravets added this to the 1.0.0 milestone Nov 29, 2014

@ivankravets ivankravets self-assigned this Nov 29, 2014

@ivankravets

This comment has been minimized.

Member

ivankravets commented Nov 29, 2014

I've just re-written some of PlatformIO parts from the scratch (future 0.9.0 release). I hope I will find time to implement your proposition. Thanks 👍

@ivankravets ivankravets reopened this Nov 29, 2014

@ivankravets ivankravets modified the milestones: 0.10.0, 1.0.0 Dec 19, 2014

@ivankravets

This comment has been minimized.

Member

ivankravets commented Dec 29, 2014

Updated Quickstart.

See new options for platformio init command.

If you use PlatformIO for "Cloud Compiling", then you can initialise project for the specified boards with disabled "auto-uploading" feature:

$ platformio init --board uno --board=Engduino3 --disable-auto-uploading

P.S: Thanks a lot for your ideas! Now, the updated Quickstart looks REALLY SIMPLE and EASY :)

@ivankravets

This comment has been minimized.

Member

ivankravets commented Dec 29, 2014

@pelikhan If it isn't hard for you, can you try and verify all your reported issues which are fixed in 0.10.0 Milestone? I want to release it tomorrow.

# firstly, uninstall current version of PlatformIO
$ pip uninstall platformio

# then install development version
$ pip install https://github.com/ivankravets/platformio/archive/develop.zip

P.S: Don't forget to downgrade to stable release (0.9.x) after testing. Thanks a lot!

ivankravets added a commit that referenced this issue Jan 1, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment