Archim2 Journey

Downloaded the Firmware Here

  • After reading the forums, it seems like this may not of actually been fully baked yet…if it has could someone please point out the error of my ways?!

Reviewed this for wiring and additional notes @ https://reprap.org/wiki/Archim2

Added the following to configuration.h

  • #define X_DRIVER_TYPE TMC2130
  • #define Y_DRIVER_TYPE TMC2130
  • #define Z_DRIVER_TYPE TMC2130
  • #define E0_DRIVER_TYPE TMC2130
  • #define E1_DRIVER_TYPE TMC2130

in configuration_adv.h uncommented(removed the “//”)

  • #define TMC_USE_SW_SPI

Display Issues

  • I tried adding U8Glib, but it sounds like per Jeffeb below it’s already bundled
  • My pinouts on the archim were backwards from the Full Graphic Smart Controller, so I trimmed the little tab on the connector so I could turn it around on the board end. BOOM

Dual Endstops

  • Still need to rewire Y and Z from Series, Install the endstops, and validate the firmware config
1 Like

Yeah. Archim was working well enough (I think the version you found). There is some trouble trying to attach a laser that we found. But the basics were working. In 2.0.6, it builds in platformio but not arduino and there are some open issues about the watchdogs not working right. So I would stay with this version for now.

I compiled and got it moving fine with Arduino, just running into problems with the aforementioned issues.

I’ll try it with platformio and see if I have any better luck

No, I think the version you have is pre-2.0.6. So it should build with arduino and not platformio. I think that is preferred in this case.

They also bundled u8glib, I think. So you shouldn’t need to install it separately.

So what is the remianing issue?

I didn’t find better luck using platformio
‘DIO105_WPORT’ was not declared in this scope
‘DIO105_PIN’ was not declared in this scope

My display didn’t light up, in fact when i tried to turn the knob it was crashing the board, it disconnected and reconnected to my laptop. Turns out that the cable pinouts for this board were backwards, so I removed the notch from the cable, flipped it over, and BOOM…Display

1 Like

Getting error when i try to compile with #define Z_DUAL_STEPPER_DRIVERS, tried it with just the Y and that compiled but still didn’t work as expected. I’m assuming I have to actually modify the pins file.

#error “Z_DUAL_STEPPER_DRIVERS requires Z2 pins (and an extra E plug).” & “No E stepper plug left for Z2!”

Current Steppers section from Archim2 pins file
//
// Steppers
//
#define X_STEP_PIN 38 // PC6 X-STEP *
#define X_DIR_PIN 37 // PC5 X-DIR *
#define X_ENABLE_PIN 41 // PC9 EN1
#ifndef X_CS_PIN
#define X_CS_PIN 39 // PC7 X_nCS
#endif

#define Y_STEP_PIN 51 // PC12 Y-STEP *
#define Y_DIR_PIN 92 // PC11 Y-DIR -AddOns *
#define Y_ENABLE_PIN 49 // PC14 Y-EN *
#ifndef Y_CS_PIN
#define Y_CS_PIN 50 // PC13 Y_nCS
#endif

#define Z_STEP_PIN 46 // PC17 Z-STEP *
#define Z_DIR_PIN 47 // PC16 Z-DIR *
#define Z_ENABLE_PIN 44 // PC19 Z-END *
#ifndef Z_CS_PIN
#define Z_CS_PIN 45 // PC18 Z_nCS
#endif

#define E0_STEP_PIN 107 // PB10 E1-STEP -AddOns *
#define E0_DIR_PIN 96 // PC10 E1-DIR -AddOns *
#define E0_ENABLE_PIN 105 // PB22 E1-EN -AddOns *
#ifndef E0_CS_PIN
#define E0_CS_PIN 104 // PC20 E1_nCS -AddOns *
#endif

#define E1_STEP_PIN 22 // PB26 E2_STEP *
#define E1_DIR_PIN 97 // PB24 E2_DIR -AddOns *
#define E1_ENABLE_PIN 18 // PA11 E2-EN
#ifndef E1_CS_PIN
#define E1_CS_PIN 19 // PA10 E2_nCS
#endif

You should be able to set EXTRUDERS=0 to get an extra driver.

I get an array error when I do that, I had tried previously, and still looking through marlin forums and issues…

When i did it with just the Y, the Y the one attached to E1 still didn’t move like it was supposed to.(I’m assuming because of the pins)

I read @vicious1 instructions, and it makes sense, but making sense and actually implementing are two different things.

Ryan, any help with the above?

Nevermind, I got it working, changed my PINS.Archim2 to look like this, are there better spare pins to use? i used some from the GPIO connector for the moment.

#define E0_STEP_PIN 93 // PB10 E1-STEP -AddOns *
#define E0_DIR_PIN 94 // PC10 E1-DIR -AddOns *
#define E0_ENABLE_PIN 95 // PB22 E1-EN -AddOns *
#ifndef E0_CS_PIN
#define E0_CS_PIN 98 // PC20 E1_nCS -AddOns *
#endif

#define E1_STEP_PIN 107 // PB26 E2_STEP *
#define E1_DIR_PIN 96 // PB24 E2_DIR -AddOns *
#define E1_ENABLE_PIN 105 // PA11 E2-EN
#ifndef E1_CS_PIN
#define E1_CS_PIN 104 // PA10 E2_nCS
#endif

#define E2_STEP_PIN 22 // PB26 E2_STEP *
#define E2_DIR_PIN 97 // PB24 E2_DIR -AddOns *
#define E2_ENABLE_PIN 18 // PA11 E2-EN
#ifndef E2_CS_PIN
#define E2_CS_PIN 19 // PA10 E2_nCS
#endif

If it works it works. I have not had any experience with that board in years.

I got it because the Rambo was out of stock at the time, and it didn’t seem really clear that it was going to be more than flash and run, but it’s good experience, and I’m excited to get this thing cutting!

1 Like

What repo did you use for the arduino software as the repository URL? I seem to have loaded the archim1 board, but can’t find archim2.

Okay, I think I’ve actually got the right repo/board. Can you share the final versions of the configuration.h & Configuration_adv.h & pins files? I’m making some progress from your previous posts, but still feel like I’m flying blind here.

Give me a few, I’m getting you all the things…assuming you are doing dual endstops?

Downloaded the Firmware Here

  • I thought this would be a download, install, win…it was not

This is the firmware as I edited on 8/17/2020 I will not be keeping up with it as I moved to Bart Dring’s Board.

Reviewed this for wiring and additional notes @ https://reprap.org/wiki/Archim2

Added/uncommented the following to configuration.h

  • #define X_DRIVER_TYPE TMC2130
  • #define Y_DRIVER_TYPE TMC2130
  • #define Z_DRIVER_TYPE TMC2130
  • #define E0_DRIVER_TYPE TMC2130
  • #define E1_DRIVER_TYPE TMC2130
  • #define USE_XMAX_PLUG
  • #define USE_YMAX_PLUG
  • #define USE_ZMAX_PLUG
  • #define INDIVIDUAL_AXIS_HOMING_MENU

in configuration_adv.h uncommented(removed the “//”)

  • #define TMC_USE_SW_SPI
  • #define Y_DUAL_STEPPER_DRIVERS
  • #define Y_DUAL_ENDSTOPS
  • #define Z_DUAL_STEPPER_DRIVERS
  • #define Z_DUAL_ENDSTOPS

Display Issues

  • I tried adding U8Glib, but it sounds like it’s already bundled
  • My pinouts on the archim were backwards from the Full Graphic Smart Controller, so I trimmed the little tab on the connector so I could turn it around on the board end. BOOM(I did download the U8Glib, I just didn’t add it, so if you have issues try that first.

Dual Endstops

  • rewired Y and Z so that Y2 is on the E0 plug, and Z2 is in the E1 Plug. Took me a minute to figure out which way was the right way wiring the endstops as they’re not clearly marked on the limit switches. for me it was black at the closed end of the switch V, white in the middle

You will need to modify the pins_ARCHIM2.h file, there may be better pins to use, I think i picked ones from the breakout.
Current Steppers section from Archim2 pins file (marlin\src\pins\pin_ARCHIM2.h)

//
// Steppers
//
#define X_STEP_PIN 38 // PC6 X-STEP *
#define X_DIR_PIN 37 // PC5 X-DIR *
#define X_ENABLE_PIN 41 // PC9 EN1
#ifndef X_CS_PIN
#define X_CS_PIN 39 // PC7 X_nCS
#endif

#define Y_STEP_PIN 51 // PC12 Y-STEP *
#define Y_DIR_PIN 92 // PC11 Y-DIR -AddOns *
#define Y_ENABLE_PIN 49 // PC14 Y-EN *
#ifndef Y_CS_PIN
#define Y_CS_PIN 50 // PC13 Y_nCS
#endif

#define Z_STEP_PIN 46 // PC17 Z-STEP *
#define Z_DIR_PIN 47 // PC16 Z-DIR *
#define Z_ENABLE_PIN 44 // PC19 Z-END *
#ifndef Z_CS_PIN
#define Z_CS_PIN 45 // PC18 Z_nCS
#endif

#define E0_STEP_PIN 93 // PB10 E1-STEP -AddOns *
#define E0_DIR_PIN 94 // PC10 E1-DIR -AddOns *
#define E0_ENABLE_PIN 95 // PB22 E1-EN -AddOns *
#ifndef E0_CS_PIN
#define E0_CS_PIN 98 // PC20 E1_nCS -AddOns *
#endif

#define E1_STEP_PIN 107 // PB26 E2_STEP *
#define E1_DIR_PIN 96 // PB24 E2_DIR -AddOns *
#define E1_ENABLE_PIN 105 // PA11 E2-EN
#ifndef E1_CS_PIN
#define E1_CS_PIN 104 // PA10 E2_nCS
#endif

#define E2_STEP_PIN 22 // PB26 E2_STEP *
#define E2_DIR_PIN 97 // PB24 E2_DIR -AddOns *
#define E2_ENABLE_PIN 18 // PA11 E2-EN
#ifndef E2_CS_PIN
#define E2_CS_PIN 19 // PA10 E2_nCS
#endif

At this point I was able to successfully flash the firmware, and tested all the motors and limit switches. I was a bit surprised that Z2 used the top left connection if you’re looking at the board with the stepper motors at the bottom, but all steppers and switches flagged appropriately. you can test this by sending m119 gcode with none or a single limit switch tripped and it will tell you which one is tripped.

Holy smokes it worked. Thanks for your assistance buddy. I’ve still gotta map out the limit switches & etc, but I’ve finally got all of the steppers moving. Thanks again!