Thanks @waynespringer79, it does help! You gave a very clear and understandable answer. But it also corroborates what I was saying, that the documentation isn't clear enough for, I would say, most people.
The terms themselves don't help either. Are these terms already in use by other platforms, or is this an HE-thing?
If so, I would definitely change the terms to something more tangible. Calling "Devices" to both HW and SW components is sure to create confusion. This may make sense in coding, as the definition would be pretty much the same, but a regular user would never see the distinction if the same word is being used.
The same thing goes for "Virtual Device". I understand the concept (thanks to wayne), but in practice it is still a REAL device, not virtual. It's just an unsupported device, which needs some extra steps in order to be integrated with HE.
Instead of "HEcommand --->device", it goes "HEcommand---middleman-->device". But that's it. It's still a real device.
Also, regarding the "Virtual Device" menu, instead of having the title greyed out and replaced when something is typed, it should have a permanent title in black, and a small explanation of what it wants in the greyed out area, just like in most websites.
An example: Title: "Zigbee ID"; Greyed out: "You can find this number on the device" OR "check your device's box for locating this number". Something that, if I don't intrinsically know what I'm being asked for, at least can point me in the right direction.
I don't know, maybe I'm overcomplicating things. Does anyone agree with this, or am I subconsciously passing on the blame? lol