First let me say that I am impressed with the ease of use of the Arduino IDE. The pointy-clicky editor is not my cuppa perhaps, but the ability to use any external editor of choice (in my case vim with appropriate syntax formatting) makes everything OK. Colour me happy.
The only complaint I have about the editor is that I really wish it would remember which port is associated with which sketch! I routinely work on a 2-Leonardo project (for whatever reasons, these devices are persistently identified as HIDM and HIDF so port assignment is consistent and apparently permanent). There is one sketch per Leo, and I always work on both at the same time (they are intimately entangled in a distributed architecture with i2c data exchange). At least once or twice a week I get too absorbed in the coding and forget to change ports manually before uploading an edit to one or the other, and of course that breaks everything.
This is hardly fatal -- I notice right away and fix it -- but it's always darned irritating. So I would really like the following feature:
- Port ID to be associated with sketch, so that when you hit Upload on sketch, the correct port is automatically selected prior to upload, no more manual port switching.
and while I'm telling Santa what I want for xmas, I'd also really like to have 2 serial monitors up at the same time, one on each port; I sometimes really want to see what both of my Leos are logging, since they are talking to each other and performing interlocking operations! Being able to see only one log at a time is so frustrating. So, wish number 2:
- Ability to view one Serial Monitor window per live USB port, so that switching upload focus from one port to the other does not kill the serial monitor window for the first port.
I guess these two features could be called one patch for "multi-Arduino development support".
I believe some alternative IDEs (Platformio?) do offer this feature but frankly, I tried Platformio and Atom and found the whole setup too complicated. The Arduino IDE satisfies me, except for this one gripe: I like building multiprocessor systems and would like just these small (?) tweaks to make it less tedious, more efficient, easier. Any hope? Or does this limitation reach so deep into the IDE design that it would be horrendous to implement?
Or (hmm, could be embarrassing) does this feature exist somewhere, and I just haven't found it yet?