Controller/Software Question

Order #16167 so plenty of time for planning and over thinking things. I currently have a home built machine based on OpenBuilds/Ox. Using OB Blackbox with either Universal GCode Sender or OB Control software. In looking at the BuildBotics controller system (and in particular the software side of things) I’m less than enthused. I know there have been others who have used a separate controller/software system with OF machine and I’m looking at the prospects for doing the same. My specific question right now (which I suspect I know the answer to) is can the Buildbotics controller software be separated from the hardware.

For instance, the OpenBuilds BlackBox provides a USB interface allowing one to use a computer or the OpenBuilds Interface pad to control the hardware. Nearly any GRBL-based G-code sender software can be used to drive the hardware. The advantage of this system is that I have a few different software choices for sending GCode to the machine. While I haven’t used the BuildBotics software, in reviewing its features and reading numerous forum posts, I feel that there are capabilities and UI features of Universal GCode Sender or OpenBuilds Control that are more attractive than the BB software. I’m wondering if one could ‘drive’ the BuildBotics hardware with external software such as OpenBuild Control. I suspect that is not an option.

What hardware are you hoping to reuse? There’s a power supply, probably some motor controllers, a computer of sorts. You can probably cut it up and reuse different pieces.

Is it worth $440 in parts would be the question.

1 Like

I’m actually wondering if I could use the BuildBotics control hardware with an external GRBL-based software package such as OpenBuilds Control or Universal G-Code Sender. Not necessarily planning on or wanting to do this just curious if it is an option.

Separate hardware (running say GRBL) interacting with the BuildBotics hardware? Or new software running on the BuildBotics hardware?

Essentially different software (e.g. OpenBuilds Control or Univ GCode Sender) controlling the BuildBotics hardware via USB interface (for instance).

I would guess your initial suspicions are correct and this is not feasible. At the very least, I don’t think it’s feasible without a lot of work.

Figured. Kind of unfortunate. With all I’m reading about shortcomings of the Buildbotics software it would kind of nice to have more options.

Doug - you can use any control HW and SW you want (assuming it can drive the steppers). However, you can not mix and match control HW/SW with the buildbotics solutions - it is integrated.


1 Like

Hi Doug … did you ever come up with a way to use a different GCode sender with Buildbotics? I’m hoping to do the same thing on my Journeyman X-50, probably with GSender. I’m also wondering if it’s hardware or software that prevents the X-50 from being able to vary feedrate on the fly?

– Brad

Hi Brad. I never used the Buildbotics controller but I’m not sure that alternative genders are an option with that controller. I came to OneFinity from an OpenBuild machine so when I ordered my Woodworker I ordered it without the controller and used the OPenBuilds BlackBox controller that I already had on hand. The BlackBox is a generic GRBL-based controller so you can use any GRBL based g-code sender that you choose. I use gSender from Senci Labs as it works great and supports on-the-fly changes in feedrate and spindle speed. The limitation on implementing on-the-fly is software/firmware. GRBL supports these changes easily; LinuxCNC (basis of Buildbotics) does not as I understand it. One the course of the two+ years I’ve had my OneFinity I am so glad I opted to not go with the Buildbotics controller as it just doesn’t do what the BlackBox can do.

1 Like

Hey Brad @Dainbramage1, hey Doug @martindg, hey all,

Buildbotics is not based on LinuxCNC, as Buildbotics is the own work of its creator, but its g-code syntax is patterned after the LinuxCNC g-code syntax. The Buildbotics Controller is a new CNC Controller written from scratch and not based on LinuxCNC code. It would be rather correct to say, the Buildbotics Controller is based on the knowledge that its authoracquired when he was writing the Camotics 3D Simulation Software (Ref.: History of the Buildbotics Controller).

The Onefinity Controller is a software and a hardware fork of the Buildbotics Controller (bbctrl-firmware, bbctrl-pcbonefinity-firmware, onefinity-pcb)

The buildbotics-based Onefinity Controller works as you can see in the circuit diagram here. On the software side, the user interface is a web interface that runs in a chromium browser on top of a Raspberry Pi OS or on any web browser on a computer you connect remotely via Ethernet or Wifi. The CNC commands input by the user are sent from the Raspberry Pi 3B to the AVR mainboard through a synchronous serial communications interface that the buildbotics author implemented as a bbserial.ko kernel module through the Raspi GPIO pins now called SERIAL_TX, SERIAL_RX and SERIAL_CTS. On the AVR mainboard, the AVR microcontroller controls the four Texas Instruments DRV8711 stepper drivers over the

  • step{X,Y,Z,A},
  • dir{X,Y,Z,A},
  • motor enable, and
  • motor fault inputs.

On the original Buildbotics controller, which evolved a bit further ([1], [2]), these control ports are accessible from the outside over a a 15-pin Auxiliary motor control port. This allows you to drive any external stepper driver, including closed-loop drivers. Unfortunately on the Onefinity hardware fork, you don’t have this 15-pin auxiliary port.

The internal DRV8711’s run the stepper motors over MOSFETS.


Thanks Doug … I’m just getting back in here and seeing your reply. I understand that when Onefinity releases an Elite upgrade for the X-50, it will include the Masso controller which can adjust feedrate on the fly. I’ll probably wait for that and decide whether it’s worth the extra money (I understand the feeds will be significantly faster, so it might be), but if it’s not, I’ll consider switching to the OpenBuilds Black Box.

Thanks! I’m a little surprised given how impressive a machine the X-50 is, that Onefinity didn’t go a little further on the controller, or find a way since introduction to get BuildBotics to make it happen.