Board not installed, where should I get it?

Hi everyone!

I see we have a problem which astonishes newcomers. It was reported in various places by many people. Once a new xoder tries to upload a program for the first time he sees a board model drop-down with every item marked as “(not installed)” even for the “canonical” and default Arduino Uno. He has no idea how to install the board which is very confusing. However, this behavior is OK and a user will be suggested to install everything necessary if he goes on and clicks “Upload”.

Let me remind, this UX flow took place since 0.25.0 where we allowed installing arbitrary hardware packages. Before that the required packages were not installed on the first boot as well, but they were not marked as “(not installed)” and started to download themselves without any questions after clicking “Upload”. Such behavior was even more confusing especially on slow internet connections where nothing observable happened for 5-10 minutes.

The real solution to the problem is re-designing the Upload dialog along with the board selection and we’ll do it next year. However, for now, I’d like to find an elegant quick-n-dirty solution which will remove the confusion to some extent without changing the logic anyhow. I’m talking about tweaking labels/colors/enableness or something like that.

Quick ideas:

  1. Replace “(not installed)” with “(to be installed)” or “(will install)”
  2. Just remove the “(not installed)” and re-qualify the message “Arduino package required” with the button from the red error to a blue notification
  3. Same as above, but with something like a checkmark next to installed boards to clearly show what’s installed (does it matter at all? :thinking:)

Any ideas?

Hi, could it be “install on first upload”, too long? :grinning:

What about just adding context sensitivity to the upload button and have the wording change to install if the board has not been installed yet?
It is going to do the same thing anyway and ask if you want to install it after you press it…
I understand this would require a little code but not a lot.

Too long probably :confused:

Yeah, good idea, thanks. I afraid a bit that it is “too late”. A user is already confused once he dropped down the list and made no selection yet. I think this solution should be combined with an extra change to be clear.

If after selecting it the Update button changes to Install until the process is completed?

To keep changes minimal, I think the dialog will close and a user will be asked to re-upload once the package is ready. Otherwise it would require log redesign.

I have created an issue:

Thanks for sharing your thoughts, folks!

1 Like

I had trouble because I did not get the upload button until finally going to compile online then no problem after that.

Good news to share: a pull request with the tweak is in dev version master already. Will be available for everyone in starting from 0.26.0.

For the future :

  • in the upload window, only show installed boards in the dropdown + a button to open a “board manager”. If no board is installed, just show the button + help text (“you need to install your board first in order to upload, click the button above to add your board to XOD”)
  • create a new board manager (+menu entry). It shows all the available boards to be installed and allows user to install/update/remove a board.

This way the list in the upload window only shows the really used boards by the user (usually a few, even only an arduino uno for instance). It would also speed up the upload window opening since it would not have to update the available boards each time you open it.


1 Like