Repository navigation
Releases: marcusisdahl/NetUsb360
Release list
NetUsb360 1.1.2
NetUsb360 1.1.2
Original Xbox games now work over the USB adapter.
Original Xbox games can now use the USB network adapter. These are games that run in the Xbox 360's original Xbox emulator, such as Halo: Combat Evolved streamed from a PC with NetDisc360. With 1.1.1 and older, two things went wrong. Either the console froze as soon as such a game started, or DashLaunch kept showing "Fatal Crash Intercepted!" and the game stopped getting data.
What changed
- Sent packets are handed back the way the console's own network port does it: a moment later, not inside the send call itself. The emulator's network layer hung on the old way.
- The small pieces of code the driver uses to call the console's own network functions now sit in memory that may run code. While the emulator runs, the console refuses to run code from data memory.
Upload speed is unchanged. Same test, same evening, 1 GiB uploaded to FastFTP360 with the acksmall build: 25.7 MiB/s with 1.1.1, and 26.3 and 23.7 MiB/s in two runs with 1.1.2. Through Aurora's own FTP the numbers were 11.7 and 12.8 MiB/s.
New file names
The files are now called NetUsb360.xex and NetUsb360-acksmall.xex (in 1.1.1 they were UsbNet360.xex and UsbNet360-acksmall.xex). Coming from 1.1.1? Change the plugin1 line in launch.ini to the new name, or give the new file the old name.
| File | SHA-256 |
|---|---|
NetUsb360.xex |
195508cf56312cc93c13d0d3b8941952150f7800fd32367753c60e669ac7d164 |
NetUsb360-acksmall.xex |
c61132e12fbe3ddcfa6477b24bbe5692a5af6d7c0b8b116330921d7ec6c8e85c |
Both builds are for a retail kernel 17559. See Which file to use.
Tested
Tested on a retail 17559 console (ABadAvatar + XeUnshackle) with a TP-Link UE306 (AX88179), using the acksmall build:
- Halo: Combat Evolved streamed with NetDisc360: started from its Aurora tile, played, and returned to Aurora through Xbox Home, with no freeze and no crash.
- Normal Aurora use and FTP uploads worked as before.
The release acksmall build is the tested code: compared section by section before packing, it is identical to the test build except for a timestamp. The standard build has the same changes, without the experimental options.
Full change: #9
UsbNet360 1.1.1
UsbNet360 1.1.1
CUsbEnet for Xbox 360 is now UsbNet360, our faster fork of proferabg/CUsbEnet. This release changes only the name: the files are the 1.1 driver, byte for byte, under their new names.
Downloads
Both files are Release builds for a retail kernel 17559.
| File | Use it when |
|---|---|
UsbNet360.xex |
Default choice |
UsbNet360-acksmall.xex |
Experimental. Original AX88179 adapters where PC → Xbox speed matters most |
SHA-256 (the same as 1.1's CUsbEnet.xex and CUsbEnet-acksmall.xex):
8B576051BADD1C4D6C503A66AB857CC1C732B9089CE3912FEE5EE4B5B67C7504 UsbNet360.xex
8FD9FF61DCD4011FFC5E3A9A58A2E74890EC1752ACD8B0AEF8FE56C21DDAB529 UsbNet360-acksmall.xex
Coming from CUsbEnet
Put UsbNet360.xex where CUsbEnet.xex was and point that line in launch.ini at it, for example plugin1 = Hdd:\Plugins\UsbNet360.xex. Don't load both. If you already run CUsbEnet 1.1 from this repo, you have this driver already.
Install
Copy the XEX to the console and load it as the first plugin: before xbdm.xex in DashLaunch's launch.ini, or first in RGLoader's rgloader.ini. Keep your previous working driver so you can switch back.
Notes
- What changed from CUsbEnet 1.0 is in the 1.1 release. The files were built from
6d72335; since thenmainhas changed only the README and the build's output file name. - acksmall: unlimited Xbox → PC transfers with All data are not verified yet, and a freeze was seen in that direction. Keep the standard build as a fallback.
- The driver uses private kernel interfaces for dashboard/kernel 17559. Other kernels need porting.
CUsbEnet 1.1
CUsbEnet 1.1
Throughput release for the Xbox 360 USB Ethernet driver, built from main at 6d72335.
What's new since 1.0
- Faster PC → Xbox transfers on the AX88179 (TP-Link UE306 and similar): 24 KiB USB receive transfers (the Linux USB 2.0 gigabit profile) instead of 16 KiB.
- Lower receive overhead: received frames are handed to XNet in batches with one lock round trip per batch.
- 16 KiB transmit buffers, with RTL8153 aggregating up to that size. Other ASIX chips keep their original 12 KiB limit.
- Cheaper transmit scheduling: the backlog scan stops at the first queued tracker.
- TP-Link UE300 (
2357:0601) is now recognized as an RTL8153. - Opt-in build switches for ACK batching, AX88179 RX transfer sizes and CPU-time performance logging. All are off by default.
Downloads
Both files are Release builds for a retail kernel 17559 (DEVKIT_ONLY=0).
| File | Build | Use it when |
|---|---|---|
CUsbEnet.xex |
Standard, all experimental switches off | Default choice |
CUsbEnet-acksmall.xex |
Adds USBENET_AX88179_TX_AGGREGATION=1, USBENET_COALESCE_TITLE_SMALL_FRAMES=1, USBENET_TX_AGGREGATE_SMALL_ONLY=1 |
Experimental. Original AX88179 adapters where PC → Xbox speed matters most |
acksmall batches TCP ACKs and other small frames into shared USB transfers. Full-size frames still go out one per transfer. On a TP-Link UE306 it reached 27.66 MiB/s PC → Xbox with NetBench360's All data check. Not yet verified: unlimited Xbox → PC transfers with All data. A freeze was seen in that direction, and its cause isn't known yet. Keep the standard build available as a fallback.
SHA-256:
8B576051BADD1C4D6C503A66AB857CC1C732B9089CE3912FEE5EE4B5B67C7504 CUsbEnet.xex
8FD9FF61DCD4011FFC5E3A9A58A2E74890EC1752ACD8B0AEF8FE56C21DDAB529 CUsbEnet-acksmall.xex
Install
Copy the XEX to the console and load it as the first plugin: before xbdm.xex in DashLaunch's launch.ini, or first in RGLoader's rgloader.ini. Keep your previous working driver so you can switch back.
Notes
- The driver uses private kernel interfaces for dashboard/kernel 17559. Other kernels need porting.
- Do not build with
USBENET_AX88179_TX_AGGREGATION=1on its own (full TX aggregation). It froze the console during testing.