<p>You can use both .gcode and .gbr files one one machine. We do it where I work.</p>

<p>However, when we make prototype circuit boards, we don't print them; we acquire circuit board blanks, and then we either:</p>

<ol>
<li><p>Use a diode laser to burn off the top layer of garolite for isolation traces, then do a chemical dip to remove that copper, then another laser burn to expose pads for surface mount components; or</p></li>
<li><p>Use a spindle tool to remove the top layer of garolite where needed for pads, as well as mill through the copper layer for isolation traces.</p></li>
</ol>

<p>We have not found a printable material that has the conductivity we want in a circuit board.</p>

<p>Source: I work for <a href="http://hyrel3d.com" rel="nofollow noreferrer">Hyrel 3D</a></p>

<p><a href="https://i.sstatic.net/Gk8gV.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/Gk8gV.png" alt="enter image description here"></a></p>

<p>Note: we don't use Marlin on Arduino, we use in-house firmware on STM32F429 boards. </p>

CC BY-SA 4.0
2019-07-16T12:37:01.793Z
Would that mean I can load .gbr files just like I would .gcode files with no extra configuring? Also, I'm planning to just use a spindle, no laser or chemicals.
ChocolateOverflow
CC BY-SA 4.0
2019-07-16T12:48:55.750Z
What does your software and firmware work with? Our software and firmware can do this. [See this image](http://hyrel3d.net/images/repetrel/rep_obj_menu.png) (also added to answer). We also make our own solder paste masks (from aluminum cans), and use our pick-and-place attachment to position surface-mount components, then put them in our reflow oven to make prototypes and first runs, before sending them out for mass production.
Davo
CC BY-SA 4.0
2019-07-16T13:47:59.837Z
I'm using the Marlin firmware for my machine and I'm not sure it can use .gbr files. My machine is just supposed to etch prototype boards and 3D print.
ChocolateOverflow
CC BY-SA 4.0
2019-07-16T13:55:48.497Z
As noted above, we don't use Marlin on Arduino. We use in-house firmware on STM32F429 boards. I don't know what your setup is capable of, but it does not seem like a very big stretch to turn a different motor during "extrusion" moves.
Davo
CC BY-SA 4.0
2019-07-17T02:40:15.703Z
I asked about using Marlin on Arduino so your answer didn't really answer my question.
ChocolateOverflow
CC BY-SA 4.0
2019-07-17T11:09:24.413Z
That's true - so please do not accept it. But other users may see your title, which is more general (and which this does answer), and find this answer useful to them.
Davo
CC BY-SA 4.0
2019-07-16T12:30:10.140Z
2019-07-16T13:07:04.420Z
2019-07-16T13:07:04.420Z
Davo
<p>Well, I'm Using pronterface to send the gcode to print the traces of my PCB with an ink pen (sharpie); since the parameter in the Marlin-Rep rap1.4 is configured to fast print, So I can easily send the code just setting the origin or Zero to print on any area of the printer. </p>

<p>To set the new Zero just use the code G92, for example we need to print in the middle of the printer, so just move the spindle to that position and set G92 X0 Y0, then andjust the Z height then set G92 Z0. for your milling add a Z secure travel to avoid collide with the surface and or mechanical clamps</p>

<p>This video shows a <a href="https://www.youtube.com/watch?v=arTFvzyqAwE&amp;t=49s" rel="nofollow noreferrer">PCB print</a> in the 3Dprinter, so for the milling process will be the same. The video shows also the process making the holes on the CNC; I didn't do in the 3d printer because in that time I hadn't a dremel support. </p>

<p>Also Tech2C teach how you can configure the whole printer, just <a href="https://www.youtube.com/watch?v=6ipcdhXetHY&amp;t=5s" rel="nofollow noreferrer">follow this link</a></p>

<p>So, be happy milling in your 3d printer</p>

<blockquote>
  <p><strong>Note:</strong> for gbrl files I haven't tested but you can try to read and send
  your code thru this program (<em>pronterface</em>) probably you cand get some
  messages like "uknown code" just like <strong><em>gcode sender</em></strong> does while trying
  to send codes for laser etching (old versions).</p>
</blockquote>

CC BY-SA 4.0
2019-07-17T17:45:48.683Z
2019-07-17T17:53:36.627Z
2019-07-17T17:53:36.627Z
Fernando Baltazar
<p>I'm making a hybrid 3D printer and circuit etching (CNC milling) machine that can both 3D print and etch prototype circuit boards. I'll be using Marlin firmware with an Arduino Mega &amp; RepRap 1.4 board. It will have a 3D printer head and a milling head side by side. I'd like to have it be able to read both .gbr (for circuit etching) and .gcode (for 3D printing) files. How should I configure Marlin to read both types?</p>

CC BY-SA 4.0
2019-07-17T19:55:44.873Z
You cannot do that. .gbr files are for photo plotters.
user77232
<marlin><diy-3d-printer><cnc>
Using both .gcode and .gbr files in a hybrid 3D printer + circuit etching machine? (RepRap 1.4 with Marlin firmware)
ChocolateOverflow
# Using both .gcode and .gbr files in a hybrid 3D printer + circuit etching machine? (RepRap 1.4 with Marlin firmware)

(Asked by: username_0 on 2019-07-16)

I'm making a hybrid 3D printer and circuit etching (CNC milling) machine that can both 3D print and etch prototype circuit boards. I'll be using Marlin firmware with an Arduino Mega & RepRap 1.4 board. It will have a 3D printer head and a milling head side by side. I'd like to have it be able to read both .gbr (for circuit etching) and .gcode (for 3D printing) files. How should I configure Marlin to read both types?

**Tags:** marlin, diy-3d-printer, cnc
> **Comments:**
> **username_1**: You cannot do that. .gbr files are for photo plotters.  

---

## 2 answers

### Answer by username_2 on 2019-07-16. Score: 3

You can use both .gcode and .gbr files one one machine. We do it where I work.

However, when we make prototype circuit boards, we don't print them; we acquire circuit board blanks, and then we either:

1. Use a diode laser to burn off the top layer of garolite for isolation traces, then do a chemical dip to remove that copper, then another laser burn to expose pads for surface mount components; or
2. Use a spindle tool to remove the top layer of garolite where needed for pads, as well as mill through the copper layer for isolation traces.

We have not found a printable material that has the conductivity we want in a circuit board.

Source: I work for [Hyrel 3D](http://hyrel3d.com)

[![enter image description here](https://i.sstatic.net/Gk8gV.png)](https://i.sstatic.net/Gk8gV.png)

Note: we don't use Marlin on Arduino, we use in-house firmware on STM32F429 boards.

> **Comments:**
> **username_0**: Would that mean I can load .gbr files just like I would .gcode files with no extra configuring? Also, I'm planning to just use a spindle, no laser or chemicals.  
> **username_2**: What does your software and firmware work with? Our software and firmware can do this. [See this image](http://hyrel3d.net/images/repetrel/rep_obj_menu.png) (also added to answer). We also make our own solder paste masks (from aluminum cans), and use our pick-and-place attachment to position surface-mount components, then put them in our reflow oven to make prototypes and first runs, before sending them out for mass production.  
> **username_0**: I'm using the Marlin firmware for my machine and I'm not sure it can use .gbr files. My machine is just supposed to etch prototype boards and 3D print.  
> **username_2**: As noted above, we don't use Marlin on Arduino. We use in-house firmware on STM32F429 boards. I don't know what your setup is capable of, but it does not seem like a very big stretch to turn a different motor during "extrusion" moves.  
> **username_0**: I asked about using Marlin on Arduino so your answer didn't really answer my question.  
> **username_2**: That's true - so please do not accept it. But other users may see your title, which is more general (and which this does answer), and find this answer useful to them.  

---

### Answer by username_3 on 2019-07-17. Score: 0

Well, I'm Using pronterface to send the gcode to print the traces of my PCB with an ink pen (sharpie); since the parameter in the Marlin-Rep rap1.4 is configured to fast print, So I can easily send the code just setting the origin or Zero to print on any area of the printer.

To set the new Zero just use the code G92, for example we need to print in the middle of the printer, so just move the spindle to that position and set G92 X0 Y0, then andjust the Z height then set G92 Z0. for your milling add a Z secure travel to avoid collide with the surface and or mechanical clamps

This video shows a [PCB print](https://www.youtube.com/watch?v=arTFvzyqAwE&t=49s) in the 3Dprinter, so for the milling process will be the same. The video shows also the process making the holes on the CNC; I didn't do in the 3d printer because in that time I hadn't a dremel support.

Also Tech2C teach how you can configure the whole printer, just [follow this link](https://www.youtube.com/watch?v=6ipcdhXetHY&t=5s)

So, be happy milling in your 3d printer

> **Note:** for gbrl files I haven't tested but you can try to read and send
> your code thru this program (*pronterface*) probably you cand get some
> messages like "uknown code" just like ***gcode sender*** does while trying
> to send codes for laser etching (old versions).


---

