-
-
Notifications
You must be signed in to change notification settings - Fork 435
Display output from Arduino Firmware Uploader #2220
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
Comments
Great idea!
Do you prefer IDE to print the output at the end of the command, or does it want to provide the terminal feeling? For example, when there is some data on the process's If the latter, there is an overlay when the operation is running, and the dialog is visible. Is IDE happy updating the Output with the overlay, or is there a requirement to change the UX? |
Streaming the Arduino Firmware Uploader output (as is done with the verbose compilation and upload output) would be ideal because it would provide the user with some indication of progress of the operation. But if that makes the feature significantly more difficult to implement then I think it would be fine to print all the collected output after the
The idea behind this proposal was to leverage the existing user interface of Arduino IDE rather than having to find a way to communicate the information within the "Firmware Update" and "Upload SSL Root Certificates" dialogs. I understand that it is maybe slightly unintuitive for the output to be printed to the underlying IDE window even though the operation is being performed by the user in a modal dialog. However, I don't think it will be too bad because the user is already accustomed to looking at the Output view for logs from various processes, including Library Manager and Boards Manager. |
Here is the feature in action. I see tons of stdout (
2220.mp4
2220_error.mp4 |
This is due to #1473
Definitely, but I think sub-ideal output is still better than none at all.
Just to make sure the requirements are clear, we need both stdout (most importantly because this is where any user instructions such as the need to power cycle the UNO R4 WiFi will be printed) and stderr (because this will be needed for troubleshooting failed attempts). |
OK, thanks! I wanted to make sure we are all aware of the new UX |
Describe the request
Print the output from the
arduino-fwuploader
invocations to the IDE's "Output" panel.🙂 It will be easier for the user to troubleshoot problems that might occur during the process.
🙂 Target-specific usage advice will be visible to the user.
Describe the current behavior
Arduino IDE's "Firmware Updater" and "Upload SSL Root Certificates" features allow the user to update the supplemental modules found on some Arduino boards. These features use the Arduino Firmware Uploader command line tool.
As with any other complex technical operation, the process might fail for a variety of reasons. For example:
arduino-fwuploader
is not logged #1497Currently, the only feedback provided to the user when this happens is a generic message with advice that is not always helpful:
Even when the process is successful, it might be that the target-specific plugins print helpful usage advice. For example, this important message printed by Arduino Firmware Updater when targeting the UNO R4 WiFi board:
🙁 The user doesn't receive any information about the cause of a failed operation in the Arduino IDE GUI. They must sift through the logs generated by the IDE to find any such information.
🙁 There is no way for important target-specific advice to be displayed to the user in the Arduino IDE GUI.
Arduino IDE version
73ddbef
Operating system
All
Operating system version
Any
Additional context
For the sake of transparency, I suggest also printing the
arduino-fwuploader
command to the output, as is done by Arduino IDE during the compilation and upload processes when verbose output is enabled. This information can be useful for troubleshooting and also helps advanced users to develop workflows using Arduino Firmware Uploader directly.Additional Requests
Related
Issue checklist
The text was updated successfully, but these errors were encountered: