Multi-Monitor Support

Are there any plans to add multiple-monitor support to Embeetle?

And in the meantime, has anyone discovered any workarounds that will trick the ID into allowing it?

We currently don’t have any plans to add multiple-monitor support to Embeetle.

We are certainly interested in a better understanding of your use case.

Currently, Embeetle has one home window and one window per open project. If you are working on a feature requiring communication between two microcontrollers, you could open the projects for these microcontrollers on different monitor. Technically speaking, you could call that a form of multi-monitor support, but I guess that is not what you are referring to.

Could you elaborate on how you think multi-monitor mode in Embeetle should look, or maybe give an example of a tool with good multi-monitor support?

I’ve been at this a while, and will admit to being spoiled and a bit set in my ways.

I generally work at a station with three or four monitors. With other IDE’s, I’ve typically spread the IDE across all but one of however many monitors I’m using.

I use this single (non-IDE) monitor for datasheets, web-resources, and various project documentation (user manuals, technical references, project-design specifications, notes, etc.). I usually tile two windows on this monitor and, beyond this, there is usually some switching between windows.

I use the remaining (IDE) monitors for a lot. First, there’s the files I’m working on which can be as many as five files (c & h) if I’m working on a driver stack and some test code that makes use of it. Second, there are the windows that are similar in function to those found in Embeetle’s UI (Filetree, Dashboard, Source Analyzer, Diagnostics, Symbols, Debugger, Terminal, Messages, and Serial Monitor) and I think it’s obvious that this list will grow, as it has with the addition of Pieces AI.

I find it most efficient to have as much of these in view as possible without the need for laying windows on top of each other (via tabs or otherwise). I know some developers view this as being too distracting, complaining of “visual noise” & etc., and I’d never deny them their preferences, but I see it as the difference between having a large desk with a lot of information in full view as opposed to having a small desk with deep stacks to dig through every time I want to find some piece of information. (I think this is the whole point behind the multiple-monitor development station and I consider it to be the best trend in embedded development since the in-circuit debugger.)

Please don’t interpret any of this as being a condemnation of Embeetle. I really like this product. There is so much that is great about it. It’s well-organized, intuitive, and well-documented; the support is great (including the demos), it has a strong and growing user-base with good community engagement, and it is great for beginners. (And this last one is in short supply these days. I mentor young developers and the speed with which they take to this IDE is amazing – it’s fun to watch initial enthusiasm for the discipline turn into something other than frustration and resentment towards a toolstack.) And I enjoy it even as an experienced developer because I can get up and running to experiment with new hardware in just a matter of minutes and the expanding portfolio of hardware makes this even more exciting.

If I have one complaint of Embeetle, it is only that it is crowded.

My efforts to address this on my own are currently centered around the “surround” monitor-spanning feature built into NVIDIA’s drivers. As I understand it, this may make it possible to fool Embeetle into believing that two or more of my monitors are just one monitor, then I could expand the window within the boundaries of this spanned monitor. This is a hardware dependent feature (and something usually of interest mostly to some gamers) – only newer and more-capable NVIDIA GPUs will do it – and, of course, my GPU is a budget card (“this is all I’ll ever need for development”). The AI craze has left me with no real capable GPUs laying around but in a week or two I should have another pass by my desk that I can borrow to see how this spanning feature works. I’ll report with my findings.

1 Like

Update: It works.

I was able to try a better GPU in my station and experiment with the “surround” monitor-spanning feature in the NVIDIA control panel. It so happens that I didn’t have the right combination of cables though, so I could only attach two monitors. But with this configuration, I was able to stretch the Embeetle project window variably, up to the full width of both side-by-side monitors. I’ve never used the “surround” feature before but it seems quite versatile and I’m optimistic that it will work with all three monitors in my station’s final configuration after my new GPU and cable arrive.

It would be nice if there were native support in Embeetle for making the project window larger than a single [physical] monitor (without fooling Embeetle with a higher-end GPU and driver features) but, after doing a bit of tweaking with this work-around, I think it will serve my purposes well enough. I’ll take it!

2 Likes