What's new
What's new

Hurco BMC30 problems with SW2018

RadeinCnc035

Plastic
Joined
Apr 22, 2024
Location
London
Hello everyone,

I hope you're all doing well. I'm new here, so if anyone has any information on this topic, please feel free to share it on this thread.

To get straight to the point, I'm working with an old Hurco BMC 30 machine. It's a good machine, but I'm having some problems with the electronics. Overall, it's working fine. I'm using SOLIDWORKS 2018 to create G code for the machine. SOLIDWORKS has a generic post processor for BMC30.

I'm experiencing several issues with the G code that's written in SW2018. These include:

- The machine doesn't recognize G41 or G42, so I have to replace them with G40, as BMC30 has a built-in tool correction.
- It doesn't recognize G17.
- It can't read G54 (I think it can't read G80 also).
- If SW2018 writes F100., the machine can't read it. Instead, I have to write F100
- G81 must be written as G81 G01 to run the drilling cycle.
- It can read pecking or spot drilling from SW2018.

Currently, I'm using Notepad++ to rewrite the G code. Is there a better text editor? Or is there a better program for Hurco BMC30 that has a better G code generator? If possible, I'd like to have an auto-correct or auto-replace feature in a text editor to save time in correcting the generated G code. Any info will be appreciated.
 
What control is on your Hurco? I have a BMC25 with ultimax 2 and pretty much none* of things you've written apply...

*except G54 and maybe the decimal feedrate
 
I mean Notepad++ is a pretty decent text editor that already has find and find/replace functionality. You could look at Cimco too, but unless you're editing multiple pathways at once, it doesn't give add much that notepad++ doesn't already do for free.
 
Yes. For yewnix, Nedit is a favorite also. Does the same thing, looks nicer :)

But this is normally what we'd call a postprocessor problem. Since SOLIDWORKS doesn't do cam, seems like some necessary information is missing.
Bluntly, it's an OP problem - most of the statements he's written are not true of the Hurco control, which makes his entire post questionable.

As for solidworks, he presumably means solidworks cam, which has been bundled in most solidworks licenses for a few years now. It's based on camworks and it sucks.
 
You'd be far better off modifying the post processor to suit. I use Fusion 360 and they publish quite a lot of information regarding modifying their posts. It's pretty daunting at first but now I've done a few I'm more than happy to dive in and make adjustments as I see fit. I imagine the post for other CAM systems is somewhat similar.

I would start by saving a copy of your current post processor and renaming to something suitable, opening that up in Visual Studio Code (much better for larger posts and programs IMO) and search for the outputs you're looking to change (although they don't often have say G41 rather something like "writeBlock(gMotionModal.format(1), gFormat.format(41), x, y, z, dOutput.format(d), f);"). In that instance I'd change gFormat.format(41) to gFormat.format(40), save then test.

Only change one thing at a time and it helps to initial and / or date stamp with a brief comment on the change you can refer back to later (using // YourInitials with the // being a bit like block delete in that it is ignored). If that doesn't work or has unintended consequences you can then just search for your initials to see where you made the changes and adjust as required.

Once you've done this then you shouldn't have to edit the code every time which has the potential to be dangerous if mistakes are made.

In the short term though Visual Studio Code has the ability to find and replace all instances in one go which is a big timesaver when you need it.

The feedrate may be more of a problem to change. If I program feed per tooth for instance it'll often equate to a decimal feedrate. In that instance if you modified the post it may throw up some funny results.
 
I get programming offline, and using CAM for complicated part contours or better control of dynamic tool paths, but this is a 24+ year old HURCO. Why are you not using the ultimax software? From your post it looks like you are drilling holes. And why the canned cycles? Unless you are changing peck values at the control, why not just post it out long hand? No need to worry about the G17/18/19, unless you are doing arcs in those planes, what does it matter?

Having programmed (offline) for the Hurco ultimax control, you haven't even begun to find the fun "quirks" of programming g-code to this machine.
 
I have some things I like to change on my posted Gcode also, I use Notepad++
I have created a long list of macros for ALL my frequent post edits.
watch some Youtube videos on creating Notepad++ macros.
 
You'd be far better off modifying the post processor to suit. I use Fusion 360 and they publish quite a lot of information regarding modifying their posts. It's pretty daunting at first but now I've done a few I'm more than happy to dive in and make adjustments as I see fit. I imagine the post for other CAM systems is somewhat similar.

I would start by saving a copy of your current post processor and renaming to something suitable, opening that up in Visual Studio Code (much better for larger posts and programs IMO) and search for the outputs you're looking to change (although they don't often have say G41 rather something like "writeBlock(gMotionModal.format(1), gFormat.format(41), x, y, z, dOutput.format(d), f);"). In that instance I'd change gFormat.format(41) to gFormat.format(40), save then test.

Only change one thing at a time and it helps to initial and / or date stamp with a brief comment on the change you can refer back to later (using // YourInitials with the // being a bit like block delete in that it is ignored). If that doesn't work or has unintended consequences you can then just search for your initials to see where you made the changes and adjust as required.

Once you've done this then you shouldn't have to edit the code every time which has the potential to be dangerous if mistakes are made.

In the short term though Visual Studio Code has the ability to find and replace all instances in one go which is a big timesaver when you need it.

The feedrate may be more of a problem to change. If I program feed per tooth for instance it'll often equate to a decimal feedrate. In that instance if you modified the post it may throw up some funny results.
I am currently working on BMC30, but I will start using VM1 once it's repaired. I am also interested in learning to program post-processors.
 
I get programming offline, and using CAM for complicated part contours or better control of dynamic tool paths, but this is a 24+ year old HURCO. Why are you not using the ultimax software? From your post it looks like you are drilling holes. And why the canned cycles? Unless you are changing peck values at the control, why not just post it out long hand? No need to worry about the G17/18/19, unless you are doing arcs in those planes, what does it matter?

Having programmed (offline) for the Hurco ultimax control, you haven't even begun to find the fun "quirks" of programming g-code to this machine.
bigjon61 I've recently started working on a HURCO CNC milling machine, and I'm enjoying it so far. I like the fact that it's beginner-friendly, even though I haven't had the chance to work on complex parts yet. For my current projects, I use manual programming with canned cycles, which are sufficient for my needs since the parts are not too complicated and the series is usually between 2 and 31 pieces. However, I'm finding the programming logic to be quite different from what I'm used to, and I'm struggling with it. Any help would be greatly appreciated.
 
I would like to provide more information about the machine I am currently using. The control unit runs on either ULTIMAX32 or MAX32 CNC software, and I use SolidCAM2018 to create the parts. However, I have noticed that the control unit does not have a hard disk for the NC editor. This causes all data to be lost every time I access CONVERSATIONAL, including tool height, reference points, and G code programs. Similarly, when I turn off the machine, the same issue occurs with the NC. Currently, I have to measure the tool length separately for each tool holder for every piece. Is there a way to activate calibration through the first tool so that I don't have to calibrate all the tools from the beginning? I transfer data through the serial port.
 
What control is on your Hurco? I have a BMC25 with ultimax 2 and pretty much none* of things you've written apply...

Can you answer this question please, it is pertinent.

To the best of my knowledge, the BMC series was first available with the Ultimax 2. I don't think there are any BMC machines with older controls than that. Later BMC machines were available with the Ultimax 3 and the Ultimax SSM controls.

These controls:
  • Do recognise G41/G42
  • Do recognise G17/G18/G19
  • Do recognise G80
  • Do not require a G01 in a G81 canned cycle...
The Ultimax II does not support G54, but I think the Ultimax 3 onwards do. Ultimax 4 and Winmax definitely do.

There are a good amount of old retrofitted Hurcos out there, and there were some odd machines sold with Dynapath controls instead of standard Ultimax. Are you sure you actually are using a Hurco control, and therefore the correct post processor?
 
I would like to provide more information about the machine I am currently using. The control unit runs on either ULTIMAX32 or MAX32 CNC software, and I use SolidCAM2018 to create the parts. However, I have noticed that the control unit does not have a hard disk for the NC editor. This causes all data to be lost every time I access CONVERSATIONAL, including tool height, reference points, and G code programs. Similarly, when I turn off the machine, the same issue occurs with the NC. Currently, I have to measure the tool length separately for each tool holder for every piece. Is there a way to activate calibration through the first tool so that I don't have to calibrate all the tools from the beginning? I transfer data through the serial port.

OK. The Max32 is an hardware upgrade to the Ultimax 2 with a faster cpu and maybe more memory. I haven't used one, but AFAIK programming is exactly as the Ultimax 2, and the programming rules I stated in my last post are correct.

On the Ultimax 2, there is no way to transfer data like tool offsets over serial, and no way to prevent the data loss when powering down or changing to conversational. There are unfortunately no workarounds for this. I leave mine powered on 24/7 and in NC mode.
 
Can you answer this question please, it is pertinent.

To the best of my knowledge, the BMC series was first available with the Ultimax 2. I don't think there are any BMC machines with older controls than that. Later BMC machines were available with the Ultimax 3 and the Ultimax SSM controls.

These controls:
  • Do recognise G41/G42
  • Do recognise G17/G18/G19
  • Do recognise G80
  • Do not require a G01 in a G81 canned cycle...
The Ultimax II does not support G54, but I think the Ultimax 3 onwards do. Ultimax 4 and Winmax definitely do.

There are a good amount of old retrofitted Hurcos out there, and there were some odd machines sold with Dynapath controls instead of standard Ultimax. Are you sure you actually are using a Hurco control, and therefore the correct post processor?
Georg, I'm using what I have, but I'm encountering many problems. If you could guide me on where to find additional information about the machine, I'll look it up and share the information with you. For now, this is all I know.
 








 
Back
Top