-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
525648d
commit 6c232ef
Showing
3 changed files
with
77 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
12 changes: 6 additions & 6 deletions
12
config/examples/Elegoo/Neptune 2/Native_USB_modification.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,21 @@ | ||
### How to modify ZNP Nano v1.x board for native USB. | ||
### Modifying ZNP Nano v1.x for Native USB | ||
|
||
#### Why? | ||
|
||
STM32F103/F407 have native USB capabilities, but this board use CH340 USB-serial chip, which greatly limits communication speed (realistucally, no more than 250kbps) and raise the chance of communucation error and missing data. This is most critical in case you use Octoprint or other host software. Native USB-CDC mode communicate at much greater speeds (in our case it'll be around 1.5Mbps) which drastically lowers chance of communication timeout and/or buffer overrruns. | ||
STM32F103/F407 have native USB capabilities, but this board uses a CH340 USB-serial bridge that greatly limits communication speed (realistically, no more than 250kbps), increasing the chance of communication errors and dropped bytes. This is most critical when using Octoprint or other host software. Native USB-CDC mode communicates at much greater speeds (in our case around 1.5Mbps), drastically reducing the chance of communication timeout and/or buffer overrun. | ||
|
||
#### How? | ||
|
||
1. Cut two traces near CH340 chip (1), two going to endtops (2) and remove two resistors (3) as shown. Scratch off some of the mask from traces on the microcontroller side (2). Optionally you can remove CH340 chip too. | ||
1. Cut two traces near the CH340 chip (1), two going to endstops (2) and remove two resistors (3) as shown. Scratch off some of the mask from the traces on the microcontroller side (2). You can also remove the CH340 if you want. | ||
|
||
![](images/1cut.jpg) | ||
|
||
2. Solder wires as shown, make new USB wires (under) are exact same length and stick together closely. Use thinnest insulated wires you can (photo show thickest possible). Great choice are wires from laptop screen cable, or good lacqered wire. | ||
2. Solder wires as shown, making sure the new USB wires (below) are exactly the same length and group closely together. Use the thinnest insulated / lacquered wires you can find (the photo shows the thickest possible). The wires used in laptop screens are ideal. | ||
|
||
![](images/2wire.jpg) | ||
|
||
3. Add 1.5kΩ pullup resistor for D+ signal as shown: | ||
3. Add a 1.5kΩ pullup resistor for the D+ signal as shown: | ||
|
||
![](images/3pullup.jpg) | ||
|
||
4. Set `default_envs = mks_robin_nano_v1v2_usbmod` or `default_envs = mks_robin_nano_v1_3_f4_usbmod` in platformio.ini, add/uncomment `USB_MOD` in `Configuration.h` and build Marlin. | ||
4. Set `default_envs` to `mks_robin_nano_v1v2_usbmod` or `mks_robin_nano_v1_3_f4_usbmod` in `platformio.ini`. Add/uncomment `USB_MOD` in `Configuration.h` and build Marlin. |