Skip to content

Document Serial Monitor changes #271

Closed
@tigoe

Description

@tigoe

The 2.0 IDE and the Pro IDE introduced a major change to the UX of the Serial Monitor. Instead of being its own window, it now is attached to a sketch window. This is a change that is likely to cause confusion in many classrooms, and requires better thought to the UX and more documentation so as not to lose users.

Example:

  1. Open a serial sketch (say AnalogReadSerial, from the Basics menu)
  2. Pick a board and port
  3. upload code
  4. open serial monitor
  5. open a new sketch window, write a new sketch
  6. attempt to upload

The result will be that the second sketch will not upload and you;'ll get a "port busy" error. But you can't see the Serial Monitor, because it's in the sketch window behind the current one, so you don't know where to look.

This will result in beginning users wasting hours trying to solve the problem. It could be addressed by a better error message, e.g. "error: serial port is in use. Check to see if you have the Serial Monitor open in another sketch window."

it could also be solved by moving the Serial Monitor to the in-focus window, however, this is a problem if you have more than one board attached at time.


Example 2:

  1. Attach a board to USB port 1
  2. Attach another to USB port 2
  3. In one window, select board 1 on port 1
  4. Upload a sketch to board 1
  5. Open serial port 1
  6. In a second window, select board 2 on port 2
  7. Upload a sketch to board 2
  8. Attempt to open port 2

This is a nice change, it allows you to have two serial monitors open at a time. But it doesn't work by default. When you click the Serial Monitor icon in window 2, it attempts to open serial port 1 rather than the port it just uploaded to! You have to explicitly pick the second port AFTER you upload to open both ports. That's confusing. Whatever board and port you select for a given window should be the default for all the serial operations associated with that window.


There are a series of pop-up toasts that pop up when you upload a changed sketch while the serial monitor is open warning that the port's not available, etc. These are distracting, and not useful if you're handling the closing of the port, the upload, and the re-opening in the background. They should be kept in the error log, not in pop-up toasts.


These problems will become more confusing as more cases pop up. If the new model is a strong connection between window, board, and port, and the Serial Monitor (and later, the Serial Plotter) is no longer independent, that needs to be made very clear in announcements, documentations, and tutorials. It is a potential advantage, but it is also a potential learning hazard, as teachers are used to the old way and will trip over the new way if they're not informed. I did.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions