A few simple wiring questions for DIY build

Machine: DIY
Board: LaserBoard
Firmware: I have a new board and I’m using whatever it came with

Hi everyone,

I’m building a DIY 80w laser, primarily using OpenBuilds hardware. Nearly done building out the frame and just getting into wiring, and I think I’ve already made a little mistake… I wired in the X-axis limit switches NO, and from searching around here it looks like NC is expected. I’ve already sort of embedded those wires and it’s a bit of a pain to fix, but easier now than later if it’s necessary. I saw you can switch via software by adding ! to the end of the lines in the config file…
So my first question is, is it better to rewire NC or is it all the same if I just change the software config? And if I keep them NO and change the config file, should I wire all of the other limit switches the same and correct via config, or should I wire the rest NC (not sure if mixing would create problems).

Second question concerns the SD card slot and finding an extension for it with a panel face mount… I’ve had no luck trying to find one besides custom 3D printed ones. Can anyone recommend one that works well?

Thanks in advance for any help.

Yes, you can easily invert the switch logic in your config file as you describe. It is adjustable per switch/ pin on the board.

I believe that NC is more tolerant to electrical noise and is safer in case a wire gets cut/ disconnected and try to use it when I can. You should also twist your switch wire pairs together for noise immunity.

The official response will be to not use an SD extender as it can damage the SD slot on the board, and probably also some concerns about noise. That said, I am sure people do, but I am also not sure about finding a panel mount one off the shelf.

A generic SD Extender looks like this, and then you make a little holder to attach it to a panel using 3D Printing/ Laser Cutting/ Hot Glue, whatever your preference:

And again, official stance is don’t do it :slight_smile:

Thanks for the quick reply, Ray. Interesting about noise… what sort of issues would that cause? I would assume random triggering? I’m using some 2-conductor wire that I’m not sure is twisted, however it’s buried along the inside of the extruded aluminum and I’d think that might provide some protection if I ground it properly. Would you agree?

That’s funny… almost every customized layout I’ve seen on youtube is doing this. Honestly at this point I don’t think I’ll really need it… originally I was thinking I’d have the laser in a different room from the computer and would have to transfer jobs via SD card, but I found a better spot for it and can run USB. Thought I’d run the extension to the panel anyway for easy access, but if it’s a bad move I’ll just leave it off.


Remember, I live in the world of the what if within the what if (synonym: engineering). Ideally everything works. Do what you can in advance. If you have problems then we look at potential improvements.


Another quick question, as I’m going thru the docs concerning firmware/config files on the memory card, it all seems to imply that I should already have one. I didn’t receive one with my board… should I have? I see where the files are available to make a replacement card myself, are there any specific requirements for the SD card itself?

The memory card is typically in a small plastic case in the bubble wrapped pouch that contains the board and C3D Sticker. I have seen people misplace it, probably more often than I would like.

Max 32gb and format it FAT32, at least a reasonable brand would be good, not some generic junk.

that’s unfortunate… I must have thrown it away. Maybe you should consider putting it in a small envelope or something that makes it harder to miss? I don’t recall there even being bubble wrap, just an anti-static pouch, but I’ve unwrapped so many overwrapped things in the past month I really couldn’t say… kinda sad I missed the sticker, too… I like stickers…
Thanks for the specs, I’ll add that to the list.

Sorry if this has already been asked somewhere, but I just want to make sure I don’t make a wrong assumption here. In the board diagram I found here it shows the on-board stepper connections as B2 B1 A1 A2. Is that B- B+ A+ A- or B+ B- A- A+? Thanks :slight_smile:

I don’t think the nomenclature actually matters. Identify the coil pairs of the motor. Plug them in. Try commanding the motor to turn. If it buzzes and doesn’t move, flip a pair.

Fair enough… I should have power wired up soon (waiting for parts again) and will give it a go. Have my motors and stepper drivers all wired now, and finishing up limit switches today…

OK, so I’ve got all of the stepper motors, external drivers and limit switches wired, and power supply for the steppers/drivers hooked up. At this point I’d like to power it up and do some basic motor tests to make sure I’ve wired everything correctly while I still have easy access to change things if necessary. I’ve read a lot and I think I get most of it, but there are a few things I’m unsure about and would like to clarify before I power it all on. Basically I just want to make sure the motors are moving in the right directions, test limit switches, determine the bed size and test homing, maybe calibrate axis travel…

  1. can I do this using only the C3D laserboard and GLCD, or do I need to have lightburn installed and connected via USB?

  2. I don’t have the laser power supply attached yet, do I need to disable laser_module_enable in the config file to avoid alarms?

  3. I have an unknown bed size (somewhere around 600 x 295). My understanding is 0,0 is determined based on home position – which is discovered by homing to the top left limit switches – and then adding the alpha/beta/gamma_max values. Is that correct? And I can leave the bed size (alpha/beta/gamma_max) at the default in the config first, then jog to find the actual size and then change the config to match? or should I set the config to a best-guess estimate first?

  4. Using external stepper drivers, should the motor current be set to what the external steppers are putting out, or do those settings not apply? Instructions I’ve read so far seem to suggest it can’t go beyond the output max of the board (1.4A), but doesn’t elaborate on external drivers (running Nema32 motors rated 2.8A) unless I missed something.

  5. does ext stepper driver power need to be turned on first before board power for the board to recognize the external drivers, or can they be turned on after or simultaneously?

  6. finally, what exactly is going to happen the first time I power up the board? Will it immediately try to home or will it just turn on and wait for a command?

Thanks, sorry again if this has all been asked before and I just haven’t dug deep enough yet. I think I’ve read everything… Just really don’t want to screw it all up the first time I turn it on, and I might be just a little nervous :grimacing:

EDIT - followup
I decided to just go for it. Mostly success, after a few tweaks, and managed to answer these questions along the way. For other newbies like myself here are the answers I worked out:

  1. yes, GLCD control is enough, homing and jogging don’t require lightburn control.
  2. didn’t matter
  3. all correct, bed size settings in config didn’t matter for testing.
  4. motor current settings in config don’t seem to apply to external stepper drivers.
  5. turning on external stepper driver power first seemed better, but worked either way.
  6. just powers on and waits for commands, nothing happens automatically.

I still need to work out my steps_per_mm settings, I used a calculator I found here but the result is maybe 60% of true. I’ll need to research that further, and also find a better way to measure – my cheap chinese dial indicator is all over the place measuring the same spot multiple times.

However everything’s now moving the right direction and homing correctly (tho the Z axis does make some ugly noise as it’s retracting, may just be I set the slow_homing_rate too slow).

Now have just two questions concerning the GLCD:
First, the dial is backwards from what I expect… I would like CW to increase and CCW to decrease, but it’s the opposite and messes with my brain. How can I reverse that?
Second, the kill button on the GLCD doesn’t seem to stop anything, at least so far as I expected it to stop everything during homing (my x axis was originally going the wrong way and crashed when homing to the wrong switch, and I had to reset the board to stop the motor). It did work as a back button, so maybe that’s all it’s intended for and I’m reading into it wrong?

Thanks again

Switch encoder pins A and B in the config file with each other. 3.25 becomes 3.26 and vice versa.

It’s configured for screen back by default. It can be changed to other uses in the config file if you’d like. There are already halt and reset buttons on the board itself.

perfect. Is there also a way to make it a little less sensitive? it kinda bounces back and forth sometimes between menu items, ie when I scroll to the top (back) sometimes it jumps back down to the second line, or when jogging sometimes it reverses the move I just made.

That’s what I had figured… the buttons on the board are hard to reach currently, but will eventually be wired to panel switches (I assume I can just wire momentary switch directly to the headers right behind the buttons on the board). I don’t really need to change it now, just was surprised when it didn’t work like I assumed. Just in case, if I change kill_button_pin to 2.11 and comment out panel.back_button_pin will that do the trick?

Appreciate the help, hope you’re recovering from the storm damage.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.