Skip to content
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

Make error message from compiling w/o board selected more user friendly #62

Closed
per1234 opened this issue Feb 10, 2021 · 6 comments · Fixed by #1353
Closed

Make error message from compiling w/o board selected more user friendly #62

per1234 opened this issue Feb 10, 2021 · 6 comments · Fixed by #1353
Assignees
Labels
conclusion: resolved Issue was resolved criticality: medium Of moderate impact topic: CLI Related to Arduino CLI topic: code Related to content of the project itself type: enhancement Proposed improvement

Comments

@per1234
Copy link
Contributor

per1234 commented Feb 10, 2021

Describe the current behavior

On the first use, no board is selected. A new user may not realize it is necessary to select one. If they attempt to compile a sketch without selecting one, they will receive only this cryptic error message:

Compilation error: Missing FQBN (Fully Qualified Board Name)

and this notification:

Error: Request compile failed with message: Compilation error: Missing FQBN (Fully Qualified Board Name)

This doesn't mean anything to even very advanced IDE users, and the user will have difficulty understanding what they need to do to resolve it.

To reproduce

  1. Quit the IDE if it is running.
  2. Simulate a fresh install by deleting the configuration folder:
    • Windows:
      C:\Users\<user name>\AppData\Roaming\arduino-ide\
      
    • Linux:
      ~/.config/arduino-ide/
      
    • macOS:
      ~/Library/Application Support/arduino-ide/
      
    This step is done because the IDE currently makes it otherwise difficult for those with internal serial ports to achieve the required state of having no port selected, due to the odd fallback port selection behavior (e.g., Port defaults to first available com port with lowest number not the last used #180).
  3. Start the Arduino IDE.
    The board/port selector menu should show "❌ No board selected".
  4. Select Sketch > Verify/Compile from the Arduino IDE menus.

Describe the request

Show a user friendly error message. Something like:

No board selected. Please select your Arduino board from the Tools > Board menu.

Desktop

  • OS: Windows 10
  • Version: 2.0.0-rc3-snapshot.1d88263
    Date: 2022-01-24T16:22:30.529Z
    CLI Version: 0.20.2 [13783819]

Additional context

Even among Arduino CLI users, I have found that the concept of "FQBN" is not widely known. IDE users are even less likely to be familiar with this acronym, and even less anxious to spend their time learning what it means, since the it is not otherwise a part of the IDE user experience.


Note that the error message produced by the reproduction instructions above is currently different than described due to a recent regression in Arduino CLI: arduino/arduino-cli#1812

Related

@ubidefeo
Copy link

@per1234
I agree on the more friendly messages, but I believe arduino/arduino-pro-ide#369 and arduino/arduino-pro-ide#338 should nonetheless be addressed

@rsora rsora transferred this issue from arduino/arduino-pro-ide Mar 1, 2021
@silvanocerza silvanocerza added the type: enhancement Proposed improvement label Mar 1, 2021
@rsora rsora added the topic: code Related to content of the project itself label Oct 21, 2021
@ubidefeo
Copy link

@giannicolab @Francesco-Stasi @Alberto-Iannaccone
would disabling the Verify and Upload buttons be a good way to address this one?
In the Java IDE, the UNO would be the default selected board.
This would also relieve us from considering this an error and having to craft and translate a message

@rsora rsora assigned 91volt and unassigned giannicolab Jan 11, 2022
@per1234 per1234 changed the title Make error message when compiling without selecting a board more user friendly Make error message from compiling w/o board selected more user friendly Jan 27, 2022
@ubidefeo
Copy link

with an upcoming minor UX facelift the Verify/Upload buttons won't be enabled unless they can yield results.

  • no board is selected > no compilation is possible
  • no board is discovered (platform/board/discovery constraints apply) > no upload is possible

Those changes are not exactly around the corner, so maybe it's worth to just map this error to a more meaningful string for now.
I'll give it a criticality label and move it to one of our upcoming sprints

@ubidefeo ubidefeo added the criticality: medium Of moderate impact label Jun 29, 2022
@kittaakos
Copy link
Contributor

Related upstream: arduino/arduino-cli#1762

@kittaakos kittaakos self-assigned this Aug 15, 2022
@kittaakos
Copy link
Contributor

they will receive only this cryptic error message:

Compilation error: Missing FQBN (Fully Qualified Board Name)

Currently blocked by this: arduino/arduino-cli#1812.

The CLI is used to log Missing FQBN, now it's Marshal called with nil if the FQBN is not set. The IDE2 has no chance to figure out the cause of the issue and translate it into a human-readable error message.

@kittaakos kittaakos added the topic: CLI Related to Arduino CLI label Aug 15, 2022
@per1234 per1234 added the status: blocked Progress on this prevented by an external cause label Aug 15, 2022
@kittaakos
Copy link
Contributor

Related: #845

@kittaakos kittaakos removed the status: blocked Progress on this prevented by an external cause label Aug 26, 2022
@per1234 per1234 added the conclusion: resolved Issue was resolved label Aug 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conclusion: resolved Issue was resolved criticality: medium Of moderate impact topic: CLI Related to Arduino CLI topic: code Related to content of the project itself type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants