SoflePLUS2
User Manual & Troubleshooting
Getting Started
Cable & Connection
📦 What’s Included:
✅ 1x USB-C to USB-C cable for connecting between the left and right halves of your split keyboard.
❌ Not Included:
🚫 USB-C to USB-A/C cable for PC connection (you’ll need to use your own cable to connect the keyboard to your computer).


Refer to Type C-Cable between Split & USB-C Cable
Switch Installation
✅ Best Practice for Installing Switches
Remove the top 5 screws from the switch plate.
Lift the switch plate up from the PCB.
Insert switches into the switch plate only (not the PCB yet).
Fill all switches along the edges, not just the corners.
Make sure switches sit flat and properly aligned.
Once all edge switches are installed, place the plate onto the PCB.
Place your finger under the socket area while pressing from above.
After all switches are seated, reinstall the screws.
⚠️ Why This Matters
Pushing switches in too forcefully may cause the hotswap socket to come loose, especially low
If the socket is dislodged but the pad is intact, it can usually be re-soldered.
If the pad drops off, the damage is harder to repair, though still possible.
To avoid this: Always pre-fill edge switches into the plate, then press in while supporting the socket area from below.
🚫 Disclaimer
We are not responsible for any damage caused by improper installation, including:
Dropped pads
Dislodged sockets
Switches not registering due to forceful insertion
Please handle with care. Reach out if you’re unsure.
Software and Firmware


To begin remapping your keyboard, download the Vial software or use the Vial web interface. You can access it at https://get.vial.today/. Read more on Software Key Remapping.
Vial on MacOS
This is useful if you want to use the keyboard across different operating systems, especially Windows and macOS.
Open System Settings
Go to Keyboard
Click Modifier Keys
Swap Control and Command etc.
Click Done
Now on Windows, if you register LCTL(KC_B)
, it will send Control + B. But on macOS, it will send Command + B instead.
Firmware



Latest Firmware & Flashing
This update is in beta and requires testing. Refer Flashing if you are not familiar with update firmware. If there are any issues, please report them to xcmkbtech@gmail.com.
v3.03 Click 🆕

Improved rotary-encoder middle-click; assign functions across 10 Vial layers
Other improvements: Fix vial rotation arrow, minor changes to default keyboard layout, DPI revert to DPI1 doesnt require DPI_RESET.
Signature (RGB underglow + per-key): v3.03 Signature, TPS65, TPS65R
Release date 2025-5-16.
Special request: Ando (v3.03 standard: add macros to 34, enabled Leader, Capsword and Trilayers), released date: 2025.06.01
v3.02 - Beta firmware reset fixes
Adjusted values for
wear_leveling_logical_size
,backing_size
, anddynamic_keymap_eeprom
to support 16MB flash.If you experience firmware resets, try lowering RGB brightness to a maximum of 80% and save the setting in Vial.
For Starter or Standard (without RGB underglow, with per key only), download v3.02 Beta, TPS65.
For Signature (with RGB underglow and per key), download this v3.02 Signature Beta, TPS65.
Update on 2025-3-5. Let us know if issues persist.
v3.01 (pcb after mid-dec 2024), v2.06 (pcb before mid-dec 2024). Refer Flashing if you are not familiar with update firmware.
v3.01 - Drag & refine Vbus
This is for pcb released after mid-dec 2024
Disable un-used azoteq gestures since they are not working, and interfered the usage (zoom, swipe x, swipe y)
Remove SPLIT_WATCHDOG_ENABLE and replace with #define USB_VBUS_PIN GP19
For Starter or Standard (without RGB underglow, with per key only), download this v3.01, with large trackpad v3.01 Tps 65
For Signature (with RGB underglow and per key), download this v3.01 Signature, with large trackpad v3.01 Signature Tps65
Update on 2025-1-25
v3.00 beta
This project is currently in beta.
For new pcb released in mid-dec 2024: spinning disk in v0.9, left PCB v2.09.
Remove
#define SPLIT_WATCHDOG_ENABLE
andusb detect
and replace with#define SPLIT_WATCHDOG_ENABLE
for re-plug issueCenter click (GP12) of spinning disk remains as left click, the rest remappable in Vial, new Col6 introduced with massive change on the code.
For Signature or with RGB underglow and Per key, please download this v3.00 Signature.
Update on 2024-12-13
v2.06 - Drag & refine Vbus 🆕
This is for pcb released before mid-dec 2024 and with type-c connection.
Disable un-used azoteq gestures since they are not working, and interfered the usage (zoom, swipe x, swipe y)
Remove SPLIT_WATCHDOG_ENABLE and replace with #define USB_VBUS_PIN GP19
For Starter or Standard (without RGB underglow, with per key only), download this v2.06. Large trackpad v2.06 Tps65, Tps65r.
For Signature (with RGB underglow and per key), download this v2.06 Signature. Large trackpad v2.06 Signature Tps65.
Update on 2025-1-25
v2.05a - Master oled flickering on mac
The master OLED flickers when the keyboard goes to sleep on macOS. Otherwise, everything works fine, including returning to normal upon wake.
For Starter or Standard without RGB underglow, please download this v2.05a
For Signature or with RGB underglow and Per key, please download this v2.05ua
Update on 2024-12-6
v2.05 - RGB matrix fix
Realise some lighting effects dont appear properly especially on heatmap etc. Issue fixed.
Fix default layer indicator for Layer 2, changes from yellow to the more appealing cyan.
Add last row of thumb keys and rgb underglow as layer and capslock indicator
For Starter or Standard without RGB underglow, please download this v2.05
For Signature or with RGB underglow and Per key, please download this v2.05u, source code. Kindly setup using vial environment.
Udate on 2024-11-27
Hardware Modifications
3D Case
This is for batch after 12.12.2024. Instruction: enable support, 15% infill (adjust according to your needs). Please get advice from us if you are not sure which one to download.
MX version
MX (v20250309)
LP version
Batch before 12.12.2024. If you are not sure please dm us with your order number.
2D Drawing
Stacked Acrylic Case
Kindly note that the thickness of acrylic layers may vary depending on batches or suppliers. This version has a 2.5mm design (actual thickness: 2.4mm).

Bottom silver screw m2*4
Inner standsoff m2*7, outer m2*13, oled cover m2*15, disk and trackpad holder m2*13
Top screw inner m2*4, outer m2*5
Large Trackpad
The SoflePlus2 supports both small (TPS43) and large (TPS65) trackpads. While we primarily supply the smaller TPS43 due to its compact and less protrusive design, you can opt for the larger TPS65 trackpad if preferred. Below are the details on how to request or retrofit the TPS65 trackpad.
Why TPS43 is Our Default
Compact size, reducing bulkiness.
More stable and secured.
If you wish to purchase TPS65, it’s available from Keycapsss (Germany).
Requesting TPS65 with Your Order
You can purchase the TPS65 kit directly from us via email when placing your order. We will include it with your board shipment.
The TPS65 kit includes:
TPS65 3D Mount with 0.5mm double-sided tape
1x Ribbon Cable (6-pin, 5-6cm, forward direction)
Case compatibility: Fits both TPS65 and TPS43 (LP version remains the same; MX version includes a right-side cutout)
Note: The overlay must be purchased separately.
Retrofitting TPS65 to Your Existing Build
If you’ve already purchased SoflePlus2 and want to switch to the TPS65 later, you’ll need:

TPS65 3D Mount (compatible with low-profile builds).
6-Pin FFC/FPC Ribbon Cable (0.5mm pitch, 5-6 cm length, forward direction).
0.5mm Double-Sided Tape (to attach the trackpad to the mount).
Polypropylene Overlay (to cover the trackpad).
💡 Compatibility Tip: For low-profile builds, your existing case is compatible with both TPS43 and TPS65 trackpads. No new case is needed.
💡 Firmware Changes for TPS65: If you’re retrofitting, you’ll need to download or update the firmware to accommodate the TPS65 trackpad.
December 2024 Users: Download the updated firmware directly from the Software and Firmware section.
Other Users: Modify the code and recompile the firmware.
Installation Guide
Prepare the Ribbon Cable:
Gently pull down the clip of the header. Insert the ribbon cable with the blue sticker facing you. Push back the clip to secure it. Attach the Ribbon Cable to the PCB:
Slot the ribbon cable through pcb with the trackpad from the top. Pull up the clip of the header on the PCB gently. Insert the other side of the ribbon cable, ensuring the blue sticker faces you. Push the clip back to secure the cable to the PCB. Mount the Trackpad:
Push the excess ribbon cable towards the front. Remove the seal from the double-sided tape on the 3D mount. Position the trackpad on the mount, ensuring the orientation matches the reference photo. Incorrect orientation may invert the trackpad direction. Apply the Overlay:
Remove the seal and place the overlay carefully on top of the trackpad.
Troubleshooting and Tips
Ensure all connections are secure.
If the trackpad does not respond, verify the ribbon cable orientation.
After flashing new firmware, press
DPI0
to enable the trackpad.
Common Issues and Fixes
Keyboard Not Responding - Same Animation on Both Sides
If the OLED screens on both sides display the same rocket animation and the keyboard is unresponsive:
Ensure the port supports data transmission: Some charging-only ports may not work for data, causing the keyboard to be unresponsive.
Verify that the Type-C cable supports data transfer: Make sure the Type-C cable you're using is capable of both data transfer and power delivery.
Trackpad Not Responsive
If the trackpad is unresponsive, which typically occurs after flashing new firmware:
Remap and press the
DPI0
key to activate the trackpad. You can find this key under the User tab in Vial.
Last updated