Fyi there ar multiple standards for Poe with different voltages and some Poe switches only does one or maybe two standards (most often at 48-57 V) but if you have older/cheaper Poe devices they might use passive Poe at 24-38V and not all switches supports that mode simultaneously with the more modern Poe standards. Some switches will “support” both modes but only one mode at the time for all ports or maybe its just pasively passing on the input voltage as output voltage. Luckily most Poe switches support auto detection (unless its a crappy no name brand) and having that feature will protect your non Poe devices from damage. Poe is detected by some specific resistance steps on the wires (don’t quote me) but this means if you have very long wires auto detection might not work but that will always default to off. You can usually on a proper brand switch force a port to be on but then be sure to physically mark that port with a sticker or something saying it’s “HOT” because then there’s no protection for non Poe devices any longer.
I won’t recommend any switch for you at the moment untill I know more about your skill level and use case.


I dont recognise the protocols you are mentioning, but for plc stuff, beckhoff are exelent at virtualizing their hardware and protocols. You can run it all on your laptop or you can dedicate hardware as a soft PLC. Its super easy with their package manager. They even has a Linux based software plc you can install and use as a PLC. You can generate infinite amounts of one week tiral licences for all their stuff so you can develop and learn without paying anything.
It seems like they support some of the stuff you mention
https://infosys.beckhoff.com/english.php?content=..%2Fcontent%2F1033%2Ftf6510_tc3_iec61850%2F8101905419.html&id=
And dnp3 seems to be a codesys library so you might be able to just load that into twincat.
Protip for twincat. If you install visual studio 2026 and install twincat add-on you get a much more modern development experience and much faster project complie and loading times compared to their own VS2022 twincat shell build.
Another protip. Using GIT in twincat shell is buggy AF and should be avoided. Only use visual studio with twincat add-on instead.