For those of you using an M series Mac and Window ARM. If you need to connect to a Crestron processor over USB. Here is something I tried for 5 seconds.
Warning: You should backup your system before attempting any of this. I would suggest using a new VM instead of one that has anything on it. The one I tested with only had toolbox and the two databases on it. During testing I did have a VM stop being able to boot¡
This is a three-step process. In step one, you will modify the inf file that Crestron uses for its processor driver. You will add the ARM header and then tell it what files to load for the driver.
Step two you will bypass the windows driver signing to allow the driver to load since you broke the singed driver by editing it.
Step three is loading the driver.
I used the UTM VM software for testing since it was free, and I didn¡¯t want to purchase Parallels. It was a bit interesting at first but worked really well. I found it had all the necessary features I needed like network bridging and USB passthrough. If you try it or have tried it let me know what you think.
If you set up a system from scratch. Shut off secure boot in the bios before you load windows.
##### Modify the driver inf file #####
You can grab the following file for reference. It will give you a good idea of what your file should look like.
Navigate to C:\Program Files (x86)\Crestron\Toolbox\USB Driver\
Make a backup of CtmWinUsb.inf. Now edit the CtmWinUsb.inf file in an editor like Notepad++. You will want to run the editor as administrator since you are working in a protected folder.
At line 15 add ¡°,NTarm64¡± to the end of the line so it looks like:
%ProviderName% = CrestronUSBDevices,NTx86,NTamd64,NTx86.5,NTamd64.5,NTarm64
Copy line 36-50, paste it just below line 50
Change line 52 from:
[CrestronUSBDevices.NTamd64.5]
To:
[CrestronUSBDevices.NTarm64]
Copy the following two lines and paste them just below line 169, making sure you have a blank line after them.
[SourceDisksNames.arm64]
3 = %DISK_NAME%,,,\amd64
Copy the following five lines and paste them just below line 184, making sure you have a blank line after them.
[SourceDisksFiles.arm64]
WinUSBCoInstaller2.dll=3
WdfCoInstaller01009.dll=3
CtrnWinUsbLowerFilter.sys=3
CtrnDCls2.dll=3
Save the file.
##### Bypass Windows driver signing #####
I found lots of different methods to do this. Here are two of the ways I tested and worked. The first is temporary and reverts after a reboot. Second will last through a reboot but show a water mark in the lower right corner.
Option 1: Temporary
Hold the ¡°shift¡± key while you click restart.
When it restarts it should be in recovery. Select Troubleshoot, Advanced options, Startup Settings, Restart, 7) Disable driver signature enforcement. When it reboots move to next step.
Option 2: Permanent
Open a command prompt in administrator mode. Run the following command
bcdedit -set TESTSIGNING ON
reboot the system.
You should see a watermark in the lower right saying, ¡°Test Mode¡± and the windows version.
If you are like me you will get an error. My VM had secure boot enabled. Secure boot prevents this command from running. My first try at disabling secure boot was to shut off UEFI in the VM setup. Don¡¯t do that, it will stop the VM from booting. Just after powering on the VM I started to hit F2, F12 & DEL a bunch of times. One of them got me in the bios where I could disable secure boot. The only problem I could see by doing this is, now windows has an exclamation point on the drive in explorer letting you know it is not secure? Anyways, after you disable secure boot. Boot up and try running the command again.
###### Loading the driver ######
Make sure the USB for the processor is passed to the VM.
It should just load the driver and work. If it doesn¡¯t, right click on the start button. Select ¡°Device Manager¡±. I had a Crestron device under ¡°Other devices¡±. Right click on it and selected ¡°Update driver¡±. Select ¡°Browse for drivers on my computer¡± Browse to ¡°C:\Program Files (x86)\Crestron\Toolbox\USB Driver¡± folder and hit ok. It should load the driver and move the device out of the Other devices folder and into a Crestron folder.