Software
The driver for the Apex Pro keyboard and other recent SteelSeries peripherals is aptly named SteelSeries Engine, and the latest version, 3.17.4 at the time of the review, can be downloaded
from this page. The installer is 154 MB, and the installed driver takes up 258 MB. System utilization is minimal, and it is fairly obvious that the software has matured to its current stable state.
Opening it for the first time with the keyboard connected, we see a homepage that detects the keyboard and pulls up a pop-up to learn more about the keyboard as well as some of the software features. Closing the pop-up revealed that the keyboard firmware was out of date, which was no surprise given the long delay between the time SteelSeries shipped this and I actually received it.
The firmware update happens in-engine, if you will, and is quick. It goes through the relevant steps outlined above and alerts you to when the process has successfully finished, which is when you should start tinkering with the drivers.
Now that everything is good to go, there are two aspects to the driver. SteelSeries Engine 3 is more akin to a set of modules working separately, tied together in a home page. Clicking on the Apex Pro module pulls it up in a different window. I do wish SteelSeries would somehow manage to make things cohesive by putting everything into the same window, but it was the exact same back in 2017, so I am not holding my breath.
When I last looked at SteelSeries Engine, the global program only had three "apps" in PrismSync to coordinate lighting across compatible devices, Discord-integration, and an audio visualizer. These three apps are still present, but the company added many more, including Tidal and some game-specific apps which also support the OLED display onboard the Apex Pro (and the other Apex keyboards as well as some of their mice with OLED displays) for real-time in-program/game status indicators. You can also configure these settings in detail, and there are even more apps to be found
here. The company also allows you to make your own app, but it is not a trivial process upon closer examination, so I don't expect the average end user to use it. All these apps are thanks to their GameSense SDK, and this is very promising for the driver's future functionality and integration. Overall, SteelSeries Engine 3 is very powerful in itself, but the more they go for discrete app-based control, the more they risk alienating features and users alike. I urge them to figure out a better way to get everything together even though its individual parts are well designed.
The Apex Pro-specific module opens in a new window as we saw and is laid out well for the user experience. The configurations (profiles) are on the left to choose from and edit, and there are menus in tabs at the top for the various option groups. The first is Key Bindings, and you have a lot of options which are laid out in a logical manner. So if QWERTY is not to your liking, this allows you to use Dvorak, Colemak, or other typing layouts easily. The macro editor opens up when needed, even though it has a dedicated place already, and live preview works as intended in that any change done but not saved is still in effect when used on the keyboard (which of course does not translate to the footage captured). The configurations can be associated with applications such that you have a set of software configurations that are active when said application opens up. You thus don't have to worry about manually setting up and activating configurations.
The second menu is specific to the Apex Pro with the SteelSeries OmniPoint switches in the alphanumeric section, which we do see highlighted by default as a clear indicator of which keys you can customize the actuation point of via a slider in 10 levels for a range of 0.4 mm to 3.6 mm. This means each level corresponds to ~0.32 mm of travel, so it is best to go with larger steps for a tangible effect, especially since expecting people and hardware on a retail product to reliably measure two decimal points of travel in millimeters is a hard sell. You can customize on a per-key basis, a group of keys, copy over the previous action, or do so for all, which makes for a significant degree of actuation control akin to analog switches, which Topre tried to replicate to some degree with their recent RealForce keyboards.
Backlighting is a big part of the keyboard, and the software lighting controls in the Illumination tab do not disappoint. I dare say the options here are excellent and second only to Corsair's iCUE from among those I have experienced to date, which is really something to be proud of. I do wish these effects were shown on screen, but since there is no real library of lighting profiles to create and download at this time, you can just set it to live preview to see it on the actual keyboard in front of you. The various effects are separated as active and reactive, in addition to idle/lock status effects, and you can have one of each saved and running. These are saved to the device, which is partly also why SteelSeries Engine 3 does not have the higher degree of freedom other drivers offer. The user interface here is messier than the rest of the software experience, however, with what appear to be some bugs with the wrong effect named in the drop down menu when selected.
The final menu has the keyboard specific settings we also saw in the general driver setting. Use these to change the language (and region associated with it). There is another bug here with displaying the actual MCUs used, but more important is the OLED customization. By default, the keyboard shows the SteelSeries logo at startup, and a smaller version in idle, but the pre-programmed media controls associated with the button underneath also show here, as do any real-time configurations or apps set in SteelSeries Engine. You can also upload images or monochrome GIFs (10 FPS max) at the fairly low resolution of 128x40, and have some more control via their brush to fill in the gaps caused by the resolution itself.