Build from source
You need Visual Studio with the Xbox 360 SDK (XDK) integration and the xkelib submodule. The SDK isn’t included.
git clone --recurse-submodules https://github.com/marcusisdahl/NetUsb360.git- Open
CUsbEnet.slnand select Release | Xbox 360. - For a retail console, add
DEVKIT_ONLY=0to the C/C++ preprocessor definitions. Without it,Main.hbuilds for devkits. - The Release configuration copies the XEX to a configured console after building. Turn deployment off if you copy files yourself (
/p:DeploymentType=Nonewith MSBuild). - Build. The output is
Build\CUsbEnet\NetUsb360.xex.
Before trusting a self-built build with your files, check it with FastFTP’s network test using the All data check. See Safety.
Build switches
Section titled “Build switches”These are compile-time options in CUsbEnet/Main.h. Every experimental switch is off by default.
| Switch | Default | What it does |
|---|---|---|
DEVKIT_ONLY |
1 |
1 builds for devkit kernels and 0 for retail. A build for the wrong kind unloads itself. |
USBENET_AX88179_TX_AGGREGATION |
0 |
Lets the original AX88179 send several packets per USB transfer. Don’t use it alone: it froze the console in testing. |
USBENET_COALESCE_TITLE_SMALL_FRAMES |
0 |
Lets small packets join a transfer already in progress. Part of acksmall. |
USBENET_TX_AGGREGATE_SMALL_ONLY |
0 |
Only packets up to 256 bytes share a transfer, and full-size packets still go one per transfer. Part of acksmall. |
USBENET_AX88179_RX_26K |
0 |
26 KiB receive transfers on the AX88179. No measurable gain. |
USBENET_AX88179_RX_32K_UNTESTED |
0 |
32 KiB receive transfers. Untested. Can’t be combined with the 26 KiB switch. |
USBENET_PERF_LOGGING |
0 |
Prints a speed, CPU and drop summary every five seconds. |
USBENET_DEBUG |
0 |
Detailed driver output. Slows the driver down. |
USBENET_CONNECTION_LOGGING |
0 |
Extra connection diagnostics. |
The acksmall build is DEVKIT_ONLY=0, USBENET_AX88179_TX_AGGREGATION=1, USBENET_COALESCE_TITLE_SMALL_FRAMES=1 and USBENET_TX_AGGREGATE_SMALL_ONLY=1.