Close
0%
0%

G-EDM

The G-EDM is an electrical discharge machine that supports sinker EDM, EDM engraving, EDM drilling and Wire EDM operations. #Drahterodieren

Similar projects worth following
The G-EDM is a fully automated ESP32 based three axis EDM CNC machine that supports different kinds of electrodes like brass tubes or brass sheets and is highly customizable. With the wire EDM extension it is possible to cut high precision parts out of different metals. It uses 3D printed parts where it is possible and in the future it may support even laser and mill operations. The firmware provides many EDM specific features and is available on Github too: https://github.com/G-EDM/G-RBL The G-EDM pulse generator is a modern buck converter based pulse power supply that does not need a power resistor. All PCBs use big ground planes, feedback signal traces are fenced with via stitches and in general all ground zones on different layers are connected together with via stitches to get the best possible performance out of it. Contact: gedm-support@proton.me

Github: https://github.com/G-EDM?tab=repositories

  • Cutting 50mm steel with a DIY wire EDM machine

    gedm-dev12/12/2025 at 23:09 0 comments

    Never thought this would be possible but it did the cut through 50mm steel.

  • Updating the sensor unit on the pulseboard

    gedm-dev11/27/2025 at 04:38 0 comments

    The G-EDM is one of the few DIY wire edm machines that not only comes with the pulse electronics and sensing circuits but also provides it's own firmware.

    Making the firmware was and still is the core of the project while the hardware was left as it is for most of the time. It worked very well and there was no reason to look at the hardware much.

    Recently I took some time to take a very close look at the sensing circuit and it turned out that the circuit does not fully maximize the potential it has.

    I spend countless hours analyzing all aspects of it and test different things.

    Many of the tiny discharges where not captured by the current sensing. Based on the information available this is not a big issue and capturing a single static discharge would require very expensive hardware and to run a wire EDM it is not needed as long as the firmware is well programmed.

    But that doesn't mean it shouldn't be tried. And while working on the existing unit it turned out that by changing some resistor values and capacitors the sensitivity heavily increased making the current sensing section reacting much faster to even small discharges.

    The current channel had three 100pf capacitors in total. One between the shunt inputs, one at the low pass filter and another one on the opamp feedback that controls the linear optocoupler.

    I removed the 100pf capacitor on the input and changed the capacitor on the low pass filter stage and also the one on the optocoupler. This improved the reaction by a lot already.

    Another thing is the gain of the low pass stage. It was using a zero Ohm gain resistor making it a unity gain opamp. Tiny jumping sparks that are like static discharges create very tiny currents and a very fast. They don't create much feedback but they can indicate reaching the discharge gap distance where sparks start to jump and therefore it would be nice to capture at least some more of them and therefore I changed the gain of the low pass filter. And to make the circuit faster the LM358 was replaced by an OPA2350. The current limiting resistor on the optocoupler was also changed to a lower value.

    Those changes can be done to existing boards. There is no change except the component values.

    Another thing is voltage sensing. The current way is to monitor the powe rinput provided by the DPM or DPH and use a drop in voltage as a hard short circuit indicator. Once the current exceeds what is set on the DPM/DPH it will start to switch and create a voltage drop and it is almost always are true short circuit then.

    But other then that the voltage channel did not provide much usable information. By connecting the input of the voltage at the Mosfet drain instead of the power input it creates a linear voltage feedback. The nature of a low side switch makes it a little tricky to work with as the voltage drops to zero while the Mosfet is conducting in the ON phase but this is still doable. The conductivity of the water, size of electrode also heavily impact the feedback. The recent developments are very promising and this little video shows how the feedback reacts now.



  • Surface finish of the big aluminum G

    gedm-dev11/20/2025 at 00:54 0 comments

  • Cutting a big "G" from 20mm Aluminum

    gedm-dev11/19/2025 at 19:49 0 comments

    Single pass cut at 20khz. No issues.

  • Reviewing the code (again)

    gedm-dev11/18/2025 at 17:26 0 comments

    Over time the focus shifted from sinker EDM to wire EDM and the sinker mode was never really touched by me for a long time now. Until lately. And of course it did not survive all the changes made for the wire mode.

    The core issue is that sinker runs higher currents and also has a larger electrode surface. Even without actually sparking the conductivity of the water can draw high currents in the on time of the pulse. No matter of there is an ignition or not. And this gets worse the deeper the electrode sinks into the material.

    The logic was not prepared for this situation and at some point the axis will just stop moving. And to make things worse the code did not adjust to the increasing current while getting deeper into the metal and this would require manual adjustments over time while cutting.

    So pretty useless. I removed half of the sensor loop and switched to single discharge analytics now. A discharge that generates a spark has a very high peak current compared to discharges into the conductive water.

    It was possible to distinguish sparks from no spark discharges and this gives much easier control over the process. Some confusing parameters are gone and there should be no need for manual adjustments while cutting. Even if the average empty discharge current increases the code is aware that those aren't sparks.

    A new firmware should be available within a month.

  • Pulseboard EVO IV - Prototyping

    gedm-dev11/10/2025 at 19:48 0 comments

    Thanks to PCBway for providing the new PCB prototypes. They look nice. 

    The EVOIII board works like a charm but it has a few things I wanted to change to make it more user friendly. The most important change is the removal of the VFD poti and the JST wire bridge.

    This is one of the confusing things on the EVOIII board. Even if the poti is only adjusted once it makes it less plug&play friendly so I decided it is time to remove it and use a static voltage divider network instead and replace the JST wire bridge with some SMD jumpers.

    This removes the need for users to mess around with any of this initial setup stuff. Just wire it up and press start as I like to say. 

    The large 5v regulator used to power the optocoupler on the gate driver side was replaced with a smaller one. 

    Those are the major changes but there are also some smaller adjustments that I had in mind for a long time but did not found time to get into until now.

    The sensing circuit itself did not change. I did add some round corners to the traces for fun but the schematics remains the same as on the EVOIII board.

    But there was always one thing that I wanted to test. The circuit uses two LM358 OpAmps to control the HCNR201 linear optocoupler. I always thought using a better Amp there could make the circuit faster. Not to get anything wrong. The EVOIII sensing delivers a fast and rock solid feedback but I have to wait for parts to arrive before I can finish the board and that means boredom and boredom equals time for fun.

    In the past the first versions of the circuit used OPA2350UA amps that where replaced with single channel OPA350UA for the EVOIII. 

    Those OPA2350 and OPA350 amps are really good. Fast, low noise, rail to rail. Compared to the LM358 there is a whole world between them. But that doesn't mean they will operate better in the given circuit.

    Both Amps share the same pinout and replacing the LM358 is a matter of unsoldering it and soldering the OPA2350UA on there. Each channel (vfd/cfd) has one of them so all changes are done to both channels.

    Since the OPA is rail to rail it can swing from 0 to 5v while the LM358 does not fully swing to the supply rail. 1.2-1.5v below the supply is what I remember.

    This means the current limiting resistor on the HCNR LED input needs a replacement too. Well. I tested it and it doesn't seem to ever reach any critical voltage levels but just to be safe the resistor was upgraded from 200 to 330 Ohm.

    This already is enough to use the OPA. But there are a view other things that I looked at. There is a little capacitor on the amps output to the inverting input. It is 100pf. Changed that one to 47pf hoping for faster signal edges.

    And another thing that changed is the voltage divider after the low pass stage. It scales the 0-5v feedback down to 0-1.6v using a 10k / 4k7 voltage divider.

    Pretty high values. More resistance equals more noise and slower reactions. Based on the math it is no problem to use lower values so those dividers changed to 1k / 470 Ohm instead. Lower resistance, less noise, faster reactions.

    In theory. 

    I was not able yet to test the board in a real scenario. The signal itself does not look much different if I supply a constant voltage to the circuit. Still a solid feedback. But it "feels" like the rising and falling edges are a tiny little faster. But without testing it in a real cut this could be fantasy too. Signal jitter does no show any difference in the test rig.

    The test rig is just a poti connected to the 5v output and the output wire soldered to the vfd pad to provide a variable 0-5v feedback.



    I am happy about every nanosecond and once the board is ready it will receive some in depth testing of the changes. 

    The changes done to the sensing circuit can be done to any existing EVOIII board too by replacing the affected parts.

    R22, R23 changed to 1 kOhm 1% (was 10k)
    R26, R27 changed to 470 Ohm 1% (was 4k7)
    C31, C32 changed...
    Read more »

  • G-EDM EVOIII PCBs on PCBway

    gedm-dev10/23/2025 at 10:11 0 comments

    The EVOIII PCBs are available on PCBway.

    Pulseboard EVOIII

    https://www.pcbway.com/project/shareproject/G_EDM_EVOIII_Pulseboard_47cdc1b8.html

    Motionboard EVOIII

    https://www.pcbway.com/project/shareproject/W532897ASC41_motionboard_evoIII_rev3_bb113e0f.html

    For those without account there is an affiliate link. You will get a 5.- coupon from PCBway if you create your account through this link: https://pcbway.com/g/fRtV7e

  • G-EDM goes sinker again

    gedm-dev10/20/2025 at 17:51 0 comments

    So far wire EDM was the main focus of all the latest updates and changes. Nobody had a need for sinker/ram EDM and even if the code still supports sinker mode it was not really well tested or maintained.

    The default settings are specialized for wire EDM and provide a heavy burn for rapid cuts. But this seems to be an issue with sinker electrodes. The wear seems to be too high and I assume that it is related to the aggressive burn at high frequency.

    In order to provide sinker settings and maybe even change the sinker code I need a sinker.

    It is a work in progress and may take some time to finish.

    Both machines can be operated with the same control unit. XY to the wire router and Z to the sinker tower.

  • Working on the next revision of the EVO Boards - EVO IV

    gedm-dev10/16/2025 at 19:02 0 comments

    Just improving the EVO PCBs. The EVOIII Motionboard is still the current thing and may not change anytime soon. It is very nice but can only be used with the ILI display.

    The new concept with the waveshare display requires a different board. That's where the EVOIV will take over.

    It provides a power USB port that is required to power the waveshare display. Even if the display, a CAN interface and also a UART2 interface. Both a used for the display. The CAN bus may be used to drive two Makerbase Servo42D motors in torque mode later. 

    The board supports up to 6 steppers and is designed with XYUV compatibility in mind but can also be used as normal XY/XYZ/Z controller.

    It also has a little mosfet that can switch a little load. No planned use of it yet but nice to have.

    The pulseboard itself also got a little remake. Instead of using a poti to adjust the vFd feedback voltage it will now use a fixed value voltage divider network. The small JST wire bridge is also gone and was replaced by SMD jumpers. 

    Another change is the FAN connector. It provides a 3Pin connector that matches the Arctic P12 Fan I use.

    More plug and play, less troubles.

    G-EDM EVOIV Motionboard

    G-EDM EVOIV Pulseboard

  • New discord

    gedm-dev10/11/2025 at 21:09 0 comments

View all 111 project logs

Enjoy this project?

Share

Discussions

jb333 wrote 12/28/2024 at 17:05 point

Just placed my order with PCBWay for motion boards! :)

  Are you sure? yes | no

gedm-dev wrote 12/28/2024 at 17:29 point

You need the pulseboard too. Go for the EVOIII board as it is much easier to setup compared to the evoII cube.

  Are you sure? yes | no

jb333 wrote 12/29/2024 at 07:00 point

Of course! :) 

I agree with you, the EVO2 cubes are works of art, but the EVO3 boards have to be a lot easier to cool! And, I appreciate the minimal number of connectors; That reduces costs a bit!

See, I'm very poor, minimum disability payment, so I can only afford to do one step at a time; Here's my plan:

1st: I bought a 38-pin ESP32-WROOM-32 with CP2102 USB Interface, a 38-pin breakout board, and rainbow wires with 2.54mm female terminals. Prices = $7, $3, and $0.20, respectively.

2nd: Installed VSCode and the platform.IO extension, then compiled and uploaded the firmware to the ESP32. Price = FREE - Yay Roland! :)

3rd: Bought a 2.4-inch iLi9341 Display with XPT2046 Touch Input. Price = $10

4th: Soldered J1 on rear of screen, then confirmed firmware and touch input, using the breakout board and rainbow wires. Price = FREE - Yay Roland! :)

5th: Ordered motionboards. Price = ~$130 for 20 PCBs.

6th: Acquiring components to solder motionboards.

7th: Order Stepper Motors to confirm motionboards, using power supply I already have.

8th: Order EVO3 pulseboards.

9th: Order components to solder pulseboards.

10th: Order Power Supplies, Wires, Case, etc.

11th: Order 3D-printed parts, including the G-EDM v1 toolhead.

12th: Order an "Aluminum-Foil" Enclosure for RF shielding.

13th: Order gantry plate. (I'm guessing that's the right term.)

14th: Order Aluminum Extrusions.

15th: Build plexiglass tank with filters.

16th: Install extraction fan.

17th: Buy dielectric fluid.

18th: Calibrate Machine and start testing!

I think that's everything! I hope to get this done sometime this Summer, if my budget and health will allow it.

  Are you sure? yes | no

gedm-dev wrote 12/29/2024 at 11:14 point

Sounds like a plan.

  Are you sure? yes | no

gedm-dev wrote 12/29/2024 at 12:03 point

PS: I still like the cube. It feels rock solid while the EVOIII board does flex easy due to the cutouts. But for me they are too much work building compared to the new board. If you want the raw cube PCBs I would give them away for free if you pay the shipment.

  Are you sure? yes | no

jb333 wrote 12/31/2024 at 23:03 point

WOW!!! That's Extremely Generous! :) 

I just sent you an e-mail.

  Are you sure? yes | no

yfsnd wrote 06/11/2024 at 05:38 point

Very nice design! I am very interested. Have you shared the circuit schematics and the PCB files? Where can I check them?

  Are you sure? yes | no

Mike K wrote 03/13/2024 at 13:31 point

Amazing work. I am waiting for the PCB files to build and test one myself. I had made an edm machine in the past but my spark wasnt strong enough. Hopefully this board works in my machine.

  Are you sure? yes | no

dgourlay wrote 11/22/2023 at 22:44 point

this is GREAT!  I just saw your youtube.  Excellent work!

  Are you sure? yes | no

gedm-dev wrote 11/23/2023 at 07:41 point

Thanks. Wish it would be finished soon. But still so much to do.

  Are you sure? yes | no

H wrote 10/06/2023 at 00:59 point

Looks amazing so far! As far as I know there haven't been any other EDM makers that were willing to share their files, so thanks (even though you're not to that point yet)!

  Are you sure? yes | no

gedm-dev wrote 10/06/2023 at 02:19 point

The only thing unreleased are the PCBs and people may be surprised how simple they actually are. The ESP motion controller is jsut a breakout board that makes life easier. The pulseboard is a little more complex but still pretty basic. At some point they will be available.

  Are you sure? yes | no

H wrote 10/06/2023 at 23:51 point

Oh dam I should look more into this. I don't need the motion board since I already have individual drivers + breakout boards that are easy to wire

  Are you sure? yes | no

gedm-dev wrote 10/07/2023 at 00:34 point

The breakoutboard is very useful. It extends the SPI Mosi/MISO/CLK pins and allows to wire the display without hacking 3to1 jumper wires.

  Are you sure? yes | no

Jimmy wrote 10/04/2023 at 08:44 point

Does your GRBL version backtrack on short?

  Are you sure? yes | no

gedm-dev wrote 10/05/2023 at 07:26 point

Yes. The planner of grbl was replaced with one that can move back in history.

  Are you sure? yes | no

Piotr wrote 08/10/2023 at 00:00 point

How feedback circuit looks like? I want to build similar machine and have problem in this part.

  Are you sure? yes | no

gedm-dev wrote 08/10/2023 at 01:31 point

The feedback is just a voltage divider. that outputs between 0 and 2.8v depending on the voltage drop created. Everything else happens at software level.

  Are you sure? yes | no

joram wrote 07/12/2023 at 08:48 point

This looks interesting. Is the esp32 code already in a sharable state?

  Are you sure? yes | no

gedm-dev wrote 07/12/2023 at 12:49 point

Almost. I just need to confirm that the Y axis works too. Currently building the axis. Should be ready soon.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates