Fixes SmartLCT and V-Can communication with Novastar VX400 on Windows 11.
After Windows 11 updates, SmartLCT and V-Can stop detecting your LED controller. This repo contains a working fix.
You're running SmartLCT or V-Can on Windows 11 and suddenly your VX400 (or similar Novastar controller) isn't detected:
- SmartLCT shows "The communication services are not working properly"
- Mars Service Provider log shows "server register: false"
- Device appears in Device Manager but software can't see it
- Reinstalling doesn't help
- Different USB ports don't help
- You're losing your mind
During troubleshooting, we tried:
- Zadig driver swap (libusbK, WinUSB) - didn't fix the communication issue
- Reinstalling SmartLCT - installs the same broken files
- Compatibility mode - no effect
- Running as admin - no effect
- Registry cleanup - no effect
- Different USB drivers - red herring, not the real problem
After decompiling MarsServerProvider.exe with dnSpy, we discovered the actual root cause:
SmartLCT and V-Can ship with a broken MarsServerProvider that fails to initialize properly on Windows 11. Specifically, it doesn't call LCTServerStub.Initalize(), which means the IPC window (with GUID title A7F89E4D-04F4-46a6-9754-A334B3E8FEE5) never gets created. Without this window, SmartLCT can't communicate with the Mars service.
The driver was a red herring. The real fix is replacing MarsServerProvider.
Replace the broken MarsServerProvider with a working version from NovaLCT V5.8.1, which properly creates the IPC window.
- Download this repo
- For SmartLCT: Double-click
Fix-SmartLCT.bat - For V-Can: Double-click
Fix-VCan.bat - Click "Yes" on the UAC prompt
- Done! Launch your app.
- Double-click
Install-Everything.bat - Follow the prompts
- Both apps installed and fixed automatically
If you prefer to do it yourself:
- Close SmartLCT/V-Can completely
- Kill
MarsServerProvider.exein Task Manager if running - Navigate to your app's Mars folder:
- SmartLCT:
C:\Program Files (x86)\Nova Star\SmartLCT\Bin\MarsServerProvider\ - V-Can:
C:\Program Files (x86)\Nova Star\V-Can\Bin\MarsServerProvider\
- SmartLCT:
- Copy everything from
MarsServerProvider_Fixed\into that folder (overwrite all) - Launch your app - should now show "Service is connected"
- Open Device Manager
- Find the NovaStar device (might be under "libusb-win32 devices" or with a yellow warning)
- Right-click → Update driver
- Choose "Browse my computer for drivers"
- Choose "Let me pick from a list"
- Select "Nova ProHD" under "libusb-win32 devices"
- Device should now be detected
├── Fix-SmartLCT.bat # One-click fix for SmartLCT
├── Fix-SmartLCT.ps1 # PowerShell script (called by .bat)
├── Fix-VCan.bat # One-click fix for V-Can
├── Fix-VCan.ps1 # PowerShell script (called by .bat)
├── Install-Everything.bat # Full installer + fix
├── Install-Everything.ps1 # PowerShell script (called by .bat)
├── MarsServerProvider_Fixed/ # Working Mars files from NovaLCT V5.8.1
├── Driver_NovaProHD/ # USB driver files
├── Installers/ # SmartLCT and V-Can installers
│ ├── SmartLCT V3.5.13 Setup.exe
│ └── V-Can V3.8.0 Setup.exe
└── README.md
Tested with:
- Novastar VX400
Should work with other Novastar controllers using the same STM32 USB interface:
- VX600, VX1000, VX16S
- MCTRL series
- Any device with VID
0483/ PID5720
For the curious:
- VID/PID: 0483:5720 (STMicroelectronics STM32)
- IPC Mechanism: Shared memory "LedInfo" (100MB) + hidden window for WM_COPYDATA
- Window GUID:
A7F89E4D-04F4-46a6-9754-A334B3E8FEE5 - Root cause:
LCTServerStub.Initalize()not called in SmartLCT/V-Can's Mars - Fix source: NovaLCT V5.8.1's MarsServerProvider (which works correctly)
Q: Why not just use NovaLCT?
A: You can! NovaLCT works fine. But SmartLCT and V-Can are simpler for basic configuration. This fix lets you keep using the tools you prefer.
Q: Will this break anything?
A: The scripts create a backup before making changes. Run with -Restore to undo:
.\Fix-SmartLCT.ps1 -Restore
.\Fix-VCan.ps1 -RestoreQ: Do I need to run this after every Windows update?
A: No, the fix is persistent. You only need to run it once (unless you reinstall SmartLCT/V-Can).
Still not detecting device?
- Make sure you selected "Nova ProHD" driver in Device Manager
- Try a different USB port (directly on PC, not through a hub)
- Unplug device, wait 10 seconds, plug back in
Multiple "NovaStar" entries in Device Manager?
- These are ghost devices from different USB ports
- Right-click and uninstall the ones not currently in use
MIT - Do whatever you want with this.
Fix discovered through extensive debugging, decompilation, and stubbornness.