Comments (16)
Reference for Pins and board schematic here:
https://github.com/makerbase-mks/MKS-Robin-Nano/tree/master/hardware/MKS%20Robin%20Nano%20V1.2_004
My Code:
https://github.com/swalsh11/Marlin-2.0.X-MKS-Robin-Nano/tree/Sapphire-Plus/Marlin
This compiles in both hardware serial and software serial mode, but has ot been tested on my (son's) machine just yet
My Pins file: ( Where hardware or software serial mode is assigned)
https://github.com/swalsh11/Marlin-2.0.X-MKS-Robin-Nano/blob/Sapphire-Plus/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO.h
My References:
https://www.reddit.com/r/3Dprinting/comments/gthxb6/mks_robin_nano_v12_diagram_for_5x_tmc2209_v30/
https://www.gitmemory.com/issue/MarlinFirmware/Marlin/15873/552647130
https://www.youtube.com/watch?v=dOJbSrWVu_Q
from mks-robin-nano-marlin2.0-firmware.
Some youtuber managed to connect all the stepper drivers to 2 pins (PA1 and PA6, which are the Step and Dir pins of stepper driver slot #5) to setup a serial connection with TMC2209. He used jumpers to give each stepper driver a dedicated hardware address. Then it works. I'm not sure if it's UART or another type of serial connection however. And I don't understand polish, so I don't know what he did exactly. Maybe I'll figure it out within the next few days/weeks. https://www.youtube.com/watch?reload=9&v=ZK9ttGcpiC4
from mks-robin-nano-marlin2.0-firmware.
@Miraculix200 I had a chat with some folks in the Marlin Discord, and they said you can run 4 stepper drivers off one line in UART, just use the jumpers to set hardware addresses. Sound good, but ideally, I wouldn't have to use any of the pins from the 5th slot.
The instructable mentions the possibility of running the drivers in UART without the EN pin connected; if the EN pin isn't necessary, then I could try using that for UART instead. However, the instructable also mentions not being able to get it to work for some reason.
from mks-robin-nano-marlin2.0-firmware.
WIFI Pins method here apperently done here; https://www.reddit.com/r/3Dprinting/comments/gthxb6/mks_robin_nano_v12_diagram_for_5x_tmc2209_v30/
from mks-robin-nano-marlin2.0-firmware.
Got the information I needed from the Marlin discord, I should be all set.
from mks-robin-nano-marlin2.0-firmware.
video from Makerbase Team
How to use UART mode on MKS Robin Nano V1.2 https://youtu.be/7ShcFKXrVHo
from mks-robin-nano-marlin2.0-firmware.
Alright, done some more research:
- I'm thinking of using the TMC2209 instead, but the wiring and code is probably basically the same.
- Most of the pins made redundant by UART would not be connected to the microcontroller anyways. As such, which pins, if any, would be free to be connected for UART?
from mks-robin-nano-marlin2.0-firmware.
@VIXIVIXIV
You can configure your firmware like this๏ผ
You also need to define your UART pins in the pins_MKS_ROBIN_NANO.h file:
I also need to confirm whether these pins are correct.
// Software SPI pins for TMC2130 stepper drivers
//
#if ENABLED(TMC_USE_SW_SPI)
#ifndef TMC_SW_MOSI
#define TMC_SW_MOSI PD14
#endif
#ifndef TMC_SW_MISO
#define TMC_SW_MISO PD1
#endif
#ifndef TMC_SW_SCK
#define TMC_SW_SCK PD0
#endif
#endif
#if HAS_TMC_UART
/**
- TMC2208/TMC2209 stepper drivers
- Hardware serial communication ports.
- If undefined software serial is used according to the pins below
*/
//#define X_HARDWARE_SERIAL Serial
//#define X2_HARDWARE_SERIAL Serial1
//#define Y_HARDWARE_SERIAL Serial1
//#define Y2_HARDWARE_SERIAL Serial1
//#define Z_HARDWARE_SERIAL Serial1
//#define Z2_HARDWARE_SERIAL Serial1
//#define E0_HARDWARE_SERIAL Serial1
//#define E1_HARDWARE_SERIAL Serial1
//#define E2_HARDWARE_SERIAL Serial1
//#define E3_HARDWARE_SERIAL Serial1
//#define E4_HARDWARE_SERIAL Serial1
//
// Software serial
//
#define X_SERIAL_TX_PIN PD5
#define X_SERIAL_RX_PIN PD5
#define Y_SERIAL_TX_PIN PD7
#define Y_SERIAL_RX_PIN PD7
#define Z_SERIAL_TX_PIN PD4
#define Z_SERIAL_RX_PIN PD4
#define E0_SERIAL_TX_PIN PD9
#define E0_SERIAL_RX_PIN PD9
#define E1_SERIAL_TX_PIN PD8
#define E1_SERIAL_RX_PIN PD8
// Reduce baud rate to improve software serial reliability
#define TMC_BAUD_RATE 19200
#endif // TMC2208 || TMC2209
from mks-robin-nano-marlin2.0-firmware.
You can probably also use some of the pins of the wifi module slot instead of using the 5th stepper slot. E.g. PA9 and PA10. Or use the PE6 pin (material detector 2). That's what le3tspeak does in his Marlin version: https://github.com/le3tspeak/Marlin-2.0.X-Sapphire-PRO/blob/2.0.5.3-EEPROM/Marlin/src/pins/stm32/pins_MKS_ROBIN_NANO.h
Edit: Actually PE6 probably won't work
from mks-robin-nano-marlin2.0-firmware.
Got the information I needed from the Marlin discord, I should be all set.
Care to share them, I am a bit stuck... Also using 2208 not 2209
from mks-robin-nano-marlin2.0-firmware.
I am working through this too, in the Marlin fork I am using, I can edit, Pins_mks_robin_nano, to #define SOFTWARE_SERIAL
this diables E1, and re-uses the communications pins for UART.
this then defines:
#define X_SERIAL_TX_PIN PA3
#define X_SERIAL_RX_PIN PA3
#define Y_SERIAL_TX_PIN PA6
#define Y_SERIAL_RX_PIN PA6
#define Z_SERIAL_TX_PIN PA1
#define Z_SERIAL_RX_PIN PA1
#define E0_SERIAL_TX_PIN PE5
#define E0_SERIAL_RX_PIN PE5
PA 3 is located in JC1_M2, EN2 Pin
PA 6 is located in JC1_M2, STEP2 Pin
PA 1 is located in JC1_M2, DIR2 Pin
(close to Xstop / E1)
PE 5 is on the TCmax31855 header near THM header
I still have a bit of figuring out to do, it is not compiling , but I Hope this helps.
Edit, Compiles in hardware_serial mode, using PA9.
I just joined Marlin Discord too, https://discord.gg/n5NJ59y
from mks-robin-nano-marlin2.0-firmware.
I am working through this too, in the Marlin fork I am using, I can edit, Pins_mks_robin_nano, to #define SOFTWARE_SERIAL
this diables E1, and re-uses the communications pins for UART.
this then defines:
#define X_SERIAL_TX_PIN PA3
#define X_SERIAL_RX_PIN PA3
#define Y_SERIAL_TX_PIN PA6
#define Y_SERIAL_RX_PIN PA6
#define Z_SERIAL_TX_PIN PA1
#define Z_SERIAL_RX_PIN PA1
#define E0_SERIAL_TX_PIN PE5
#define E0_SERIAL_RX_PIN PE5PA 3 is located in JC1_M2, EN2 Pin
PA 6 is located in JC1_M2, STEP2 Pin
PA 1 is located in JC1_M2, DIR2 Pin
(close to Xstop / E1)
PE 5 is on the TCmax31855 header near THM header
I still have a bit of figuring out to do, it is not compiling , but I Hope this helps.Edit, Compiles in hardware_serial mode, using PA9.
I just joined Marlin Discord too, https://discord.gg/n5NJ59y
Thanks for the help, I was wondering if you have a resistor between tx/rx pins on your tmc?
Also when you say ' Compiles in hardware_serial mode, using PA9 '
This is in your config_adv right? Can you share the tmc snippet of your comfig_adv too. Thank you.
from mks-robin-nano-marlin2.0-firmware.
Thank you @swalsh11 really appreciate your help, got it working after looking at the info and resources you posted. Thank you again.
from mks-robin-nano-marlin2.0-firmware.
como configurar a placa rumba tmc 2209 v3
from mks-robin-nano-marlin2.0-firmware.
from mks-robin-nano-marlin2.0-firmware.
from mks-robin-nano-marlin2.0-firmware.
Related Issues (20)
- No USB flash menu item when compiled with TFT_COLOR_UI HOT 1
- [BUG] HAL_SD_IRQHandler HOT 1
- White screen - FW: MKS update on 11. April HOT 8
- Enabling Thermal Runaway Protection causes complier error HOT 2
- Extruder stops after a few minutes but x,y,z continue normally HOT 5
- [BUG] LCD has no display but touch sensor is still usable
- Marlin 2.1.1 error: #error "SERIAL_PORT must be from 1 to 6."
- Zoffset not work!!![BUG] (bug summary)
- not compiling with MKS_Robin_nano35 for MKS Robin Nano v1.2 HOT 2
- [BUG] Can't compile v3.1
- Cant Compile for Nano v1 HOT 1
- Latest version does not work. In the previous version, there is no double z motor and driver.
- icons are missing on robin nano v2 HOT 1
- DO NOT FLASH IT IN TT SP-5
- [BUG] Robin Nano v3.1 datatransfer by wifi => No temp-crontrol during transfer
- Marlin 2.0.9 impossible to compile for MKS Robin Nano V3.1 [SOLVED] HOT 1
- Please someone help with my MKS Robin Nano v3.1
- [BUG] Icons/Font will not update Robin Nano v1.2 HOT 1
- [BUG] When using TFT_LVGL_UI E0 won't move
- MKS WiFi module does not work with MKS Eagle and H43 display
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mks-robin-nano-marlin2.0-firmware.