1.4.0 Alpha 3 (Macros update) (outdated)

New build!


1.4.0 Macros Update ALPHA 3

This is the third test release version of firmware 1.4.0

This is test firmware. As with all test/alpha/beta software, DO NOT INSTALL unless you like to be on the bleeding edge and can live with potential bugs.

Alpha 3 adds:

This update includes:

  • Add the ability to have up to 20 custom Macros.

Known Issues:

  • If you name a macro the same as a file name, when deleting the file name or macro, it will delete both.

Download here (click the blue link below to download. Do not unzip the file.):
bbctrl-1.4.0_alpha3.tar.bz2 (2.7 MB)

How To Install:

Updating via USB
You’ll do an update via USB using the following steps:
After downloading, DO NOT UNZIP THE FILE!!!
Copy the blue .bz2 file above onto a usb stick (it must be formatted as fat 32 or ntsf). Click the flyout menu (three bars on top left), general, under firmware click ‘UPLOAD’. Select the 1.3 file.
If you are on firmware 1.0.8 or lower, it may ask for a password.
the password to update will either be buildbotics or onefinity

Manual on how to update.

Why would you want Macros?

Macro buttons on a CNC (Computer Numerical Control) machine, such as the Onefinity CNC, can offer several advantages for users. Here are some reasons why Onefinity CNC users might want macro buttons:

  1. Workflow Efficiency: Macro buttons allow users to automate sequences of commands or repetitive tasks with a single button press. This can significantly streamline the workflow and reduce the time and effort required to perform certain operations.
  2. Customization: CNC users often have specific preferences and workflows. Macro buttons provide a way to customize the machine’s operation according to individual needs, making it easier for users to work with the machine in a way that suits their style.
  3. Complex Operations: CNC machining may involve complex operations with multiple steps. Macro buttons can be programmed to execute these sequences, simplifying the process for users and reducing the chance of errors.
  4. Repeatability: Macros ensure consistent and repeatable results. Users can save specific toolpaths, speeds, and other parameters in macros, ensuring that the same settings are applied consistently across different projects.
  5. Reduced Operator Fatigue: Automation through macro buttons can help reduce operator fatigue by automating repetitive tasks, allowing users to focus on more critical aspects of the machining process.
  6. Emergency Situations: In case of an emergency or unexpected situation, having macro buttons with predefined emergency procedures can be crucial for quickly stopping or pausing the machine, preventing potential damage.
  7. Learning Curve: For users who are new to CNC machining, macro buttons can simplify the learning curve. Instead of memorizing complex commands, users can rely on macro buttons for common tasks until they become more familiar with the machine’s operation.

How the Macros work:

Upon install you will notice 8 unassigned Macro buttons below the probe buttons and above the play/stop buttons.
You can assign any gcode you want to these buttons. It will always show a minimum of 8 buttons but up to 20 macro buttons can be created.

How to assign the Macros.

Push the 3 line button in the upper left of the main screen to access the flyout menu. The MACROS word will be near the top. Tap this access the macros setting.

Macros Configuration Page

The macro configuration page is how you add or remove or edit the macro functions. At the top you have the delete all button, which deletes all macros you’ve created and sets Macros back to default of 8 with nothing assigned.
The New Macros button assigns a new macros button starting with Macro 9 through 20.
Delete Selected button will delete any selected macros from 9-20. It will not delete the default 1-8 macro buttons. 8 will always be showing.

Below that is the ‘select a macros’ drop down. You will click this drop down to access the macros button you want to assign a function to.

Macros name has a default white box on the left and a text box on the right. The left box assigns the macros a color, and the text box names the macro. The text can contain up to 15 characters. Special characters (like &%^$(*(#, etc) MAY not work (as this hasn’t been tested n it’s alpha firmware state).

Below that is the Macros G-Code section.
The left has a drop down box that says Create G-Code by default. To the right is the upload button, and to the right of that is the delete button.

The drop down allows you to select any Macros you’ve written or uploaded in the past. The upload button will upload gcode (must be a file that ends in .nc). We have some premade Macros in this linked forum post.
The delete button will delete the gcode assigned to this macro.

The text box at the very bottom is where you can write custom gcode on the fly, see the gcode of any uploaded macros, or edit any macro gcode.

Finally, the save button is at the bottom and must be pushed for any changes made to occur.

Default view of the macros setting:

Parking Gcode example:

Confirmation box

What it looks like when a macro is assigned:

Where can I get premade Macros?

1 Like

Looks like the problems with the filenames hanging around after deletion is gone.

BUT, while disconnecting my laser just now the interface went into ESTOP mode saying i triggered an estop which i did not. not physical or screen. a reboot was required to get me going again. I will try and reproduce in the next couple of days. hopefully just a one off.

Thanks again for all your hard work!


I just loaded 1.4.0 a3 and I’m not convinced the configuration for the PWN-CNC spindle, parameter “stop-write” is set to 6. The spindle still free-spins to a stop, whereas when I select “Custom VFD”, where I know that “stop-write” is set to 6 (stop by deceleration), the spin down to stop is much much shorter.

Can you please help us with more details? Thank you!!

The change that was made in 1.4.0a3 firmware for PwnCNC simply doesn’t work.

When I select “PwnCNC” from the tool menu and press “Save”, then subsequently start the spindle to 20,000rpm, then stop it…it takes 35.49 seconds for the spindle to wind down to a complete stop.

I posted a very comprehensive solution to this issue here: How to reduce deceleration time of spindle - #36 by tjp52 that details how to fix this. When “Custom ModBus VFD” is selected from the tool menu, which is configured as described in the above referenced post and the spindle is spun up to 20,000rpm then stopped, it takes only 5.75 seconds to come to a complete stop.

I don’t know how to explain the configuration of the pre-configured tool profiles since I can’t see or change those parameters, but in the “Custom ModBus VFD” profile, those parameters are exposed and can be customized as needed. I know that the “stop-write” parameter needs to be changed from 5 to 6 as shown in the above referenced post.

It just works if it’s configured correctly. Also it has been confirmed to work by a couple other fellow “OneFinity” users as shown elsewhere in that thread.

1 Like

Ok, since the firmware is in a state of flux here…just a minor observation and not to be overly critical…

The “Run Macro” window would be more grammatically correct and professional if you removed the ‘s’ as shown. You would want that, wouldn’t you?

Ok. I’ll shut my mouth. :blush:

Tried a couple macros…so far, so good.


Couple of question regarding macros:

  • When you back-up your configuration, are the macros also backed up?
  • Are the macros preserved over firmware upgrades/updates?
1 Like

It would be better if it actually said:

Run Macro?
[Macro name] is being loaded

What if I click on the wrong button, I won’t notice until it actually run, but this message can serve as a double check

1 Like

Okay, sorry for the lateness here been crazy busy.

I can confirm that the fix to PWNCNC profile does NOT work. I wish I steer you to the issue but since the PWNCNC settings are not shown I can’t tell you what is wrong.

Thanks again for everything

Found a graphical glitch in the edit macro area. See attached video

1 Like

Ran into a problem running my warm up macro. I could not STOP the macro. But as soon as the P60 timer ran out it did stop. See attached video.

This also happened on other macros where they just won’t stop. Sorry I’ll grab video when I can on others.

1 Like

When you delete a gcode it still shows in the list even after a refresh. But if you select it, it will try to calculate but stay stuck at 0%. The only thing that can be done is to E-stop…

I tried deleting from the laptop or deleting from the touchscreen or even both and refresh. Sometimes they stick in the dropdown list even after rebooting the CNC. How is that possible?

Which version of the Alpha are you running?

I’m using 1.4.0 alpha 3

Try reloading it again, that particular bug disappeared for me with alpha3

Also when it happens try refreshing the screen and see if it gets you going again instead of the estop

I did try to refresh on both my laptop and the touchscreen, but there was nothing working unfortunately. And I can’t click anywhere, not even the settings or the e-stop on the screen. A hard reset was the only way :slightly_frowning_face:

Here is what I would do. I would back up my settings…I would reload the defaults… then reboot…on a fresh reboot…reload alpha 3 make sure your doing it with USB from the touchscreen NOT from your laptop. I personally have had issues doing it that way. then reload your settings and see if that clears things up.

I normally run headless no touchscreen and operate from a laptop in the shop, but when i do updates I now always load through USB and the touchscreen. Your milage may vary.

hope that helps

hi @ahandeman , Thanks for the feedback. Unfortunately, we are unable to reproduce the issue on our end, is there any possibility to reproduce from your end. Please help us with the detailed steps. If it is happened only once. i might be some glitch. if it is happening frequently then we will investigate further on this. Appreciated your support here. Thank you!!

@tjp52 , Done. release in the next beta version.

@ahandeman , Done. Release in next beta version.