ePCon is a CNC control system for plasma cutting, with a C++ GUI and Ethernet (UDP) communication with a controller based on a 32-bit microprocessor at 240 MHz. It drives the X, Y, Z axes and an A axis (gantry slave on dual-motor tables, or 4th rotary axis), plus the torch and accessory outputs.
ePCon has the THC built in (Torch Height Control): it measures the arc voltage in real time and corrects the Z height during the cut, with no external module.
Part I — First commissioning
If this is the first time you set up the machine, follow these steps in order: each one depends on the previous.
2. Connectivity: physical layer first
Power and cable. With the controller powered, connect the Ethernet cable. If you connect the PC directly to the controller (no router or switch), use a crossover cable: the controller does not cross the pairs automatically. Through a switch or router a straight cable is fine.
Watch the RJ45 connector LEDs. Solid link LED = physical layer OK (cable and power good). Blinking LED = traffic. No lights at all = stop here: check the cable (crossover?), connectors and power before touching anything in the application.
USB cable driver (Windows 7 only). Windows 10 and 11 recognise the controller on their own, nothing to install. On Windows 7, with the USB cable connected, open the drivers folder that ships next to the program and run CH341SER.EXE → INSTALL button. When it finishes, a new port appears in Device Manager under Ports (COM & LPT), something like USB-SERIAL CH340 (COM5); the number does not matter, the program tries them all. If one or two yellow-marked entries called USB JTAG/serial debug unit stay under Other devices, that is normal and needs no fixing: they are the chip's debug side, which the program never uses. The same steps are written down in drivers\LEEME.txt.
Find out the controller IP. Settings → connectivity has two buttons for this. Try Find (network) first: it asks over the network cable, needs no USB and no drivers, and behaves the same on Windows 7 as on 10 or 11 — but it only finds the controller if the PC is already on its subnet. If it does not show up, use Detect IP (USB), which asks over the USB cable (this one does need the driver from the previous step). Either button fills in the IP and port for you. The factory setting of the controller is 192.168.157.111, port 2055.
Set the PC IP on the same subnet. If the controller is 192.168.157.111, the PC needs a static IP 192.168.157.x other than that one (for example 192.168.157.2), mask 255.255.255.0. How: Control Panel → Network and Internet → Network and Sharing Center → Change adapter settings; right-click the network connection the controller is on → Properties → select Internet Protocol Version 4 (TCP/IPv4) → Properties → Use the following IP address, and type the IP and the mask. Gateway and DNS can be left blank.
Verify. The Verify button checks, before trying to connect, that the IP and port are valid and that they fall in the same range as one of the PC network adapters. If they do not, it lists the adapters and their addresses so you can see where the mismatch is.
Press Connect. If it fails while the LEDs look fine, it is almost always the PC IP (wrong subnet) or a firewall blocking UDP.
The rest of the board connections
This is the terminal map of the controller, with the board as it sits in its enclosure. Along the top are the RS485 link to the VD board and the outputs terminal block; along the bottom, left to right, the power, the encoder, the inputs and the axes terminal block. The drawing is of the eMCon V3.0 board: if yours is older the layout differs — check it before wiring.
2.1 — How to wire each terminal
The drawing above says where each block is; here is what goes on it. Except for the emergency stop and the limit switches, every input and output is isolated from the controller electronics.
Axes (U4). Each axis leaves with Step and Dir towards its driver, plus a ground. Watch the grounds: the whole block has only two Gnd terminals and they are shared — one between Xs and Yd, another between Zs and Ad — so two axes hang off each. These are 3.3 V signals that go straight to the driver, unconditioned: check your driver manual accepts them, because plenty ask for 5 V. If an axis runs backwards, do not swap the wires: mark it as inverted in Settings → Axes.
A axis (second gantry motor). It gets the very same signals as its master, generated only once, so the two motors cannot drift apart. If the motors face each other and one has to turn the other way, do not cross its phases: tick Invertir dir. in Settings → Eje A. If your table has no second motor, those two terminals stay free.
Outputs Out1, Out2 and Out3 (U7). Each one is two terminals acting as a dry contact: a solid-state relay that opens and closes, with no voltage of its own and no polarity. They take 60 V and 550 mA at most. If what you want to drive asks for more — a contactor coil, for instance — put a relay in between: the board's contact drives the relay, and the relay drives the load. Out1 goes to the cutter's torch-start input (it is the one M3 and M5 drive), Out2 arms the THC and Out3 is the auxiliary one.
Spindle (10V, PWM and ACM). Milling only. It is the speed reference for the VFD: 0-10 V on the 10V terminal, referred to ACM, which is their ground (that is why it is black). The PWM terminal gives that same signal unfiltered, in case your VFD prefers it that way. On plasma these three stay free.
Emergency stop (P3) and limit switches (P4). They are dry contacts to Gnd and come in not isolated: do not feed them any voltage, just a clean contact. The limits all go in series into the same terminal, which is why the controller knows one has tripped but not which: all three LEDs light at once. If one works the wrong way round, invert its polarity in Settings → Inputs.
Probe (P6). Three terminals: Gnd2, Vout and Signal. The block feeds it, because Vout gives out the same voltage you fed into Vin. With a three-wire inductive sensor: blue (0 V) to Gnd2, brown (+) to Vout and black (the output) to Signal. It comes in isolated and takes 5 to 24 V. If the Probe LED works the wrong way round, invert the polarity in Settings → Inputs; the wiring stays as it is.
Input1 (P1). A spare input, for whatever you need. A warning if you come from Mach3: many cutters provide an arc established signal and this terminal will take it, but ePCon does not use it to decide anything — what says whether there is an arc is the VD board, measuring the voltage (step 7). You can enable and invert it in Settings → Inputs, but today it does not govern the cut. It is a floating input: its two terminals are the two ends of the optocoupler and share no ground with the board — not even with the probe or the encoder, which do hang off the common Gnd2. It is activated by applying 5 to 24 V across its two terminals, with the + on 1; if you swap them nothing happens, it has a protection diode. If what you have is a dry contact (a relay, a pressure switch... what many cutters give for Arc OK), close the loop with a voltage from the board itself: 5 V from P8 → contact → terminal 1, and the Gnd2 of that same P8 → terminal 2.
Encoder (P5). Three terminals — A, B and Z —, isolated, fed from the 5 V and Gnd2 of P8. It is not used yet: it is there for later, so for now it stays free.
Power (P8). The board is powered from the USB, which is also how you program it: no external supply is needed. The Vin input is only used if some accessory asks for it, a 24 V probe for instance. It accepts 12 to 30 V DC. The lower limit is not set by the board but by the proximity sensor: Vout (P6) puts out the same voltage you feed into Vin, and an SN04 runs on 10 to 30 V. 12 V leaves you plenty of room; below that the sensor will not start. The 5 V on P8 feed the encoder and Input1. On that block, looking at the enclosure from the front, you get 5 V on the left, Gnd2 in the middle (the black terminal) and Vin on the right.
RS485 (P2). The two wires, A and B, coming from the VD board. How that is wired is covered in step 7.
Three rules for all the wiring. Keep the signal cables away from the power ones (motors, torch) and do not run them in the same conduit. Use shielded twisted pair where you can, with the screen earthed at one end only, never at both. And never join the arc ground with the controller's or the PC's.
3. Axis calibration (steps/mm)
Theoretical steps per millimetre come from motor, driver and transmission, but the real check is done by measuring. The practical rule, axis by axis:
Zero the axis with its DRO button and mark the physical position (or set up a dial indicator/ruler).
From the MDI command a 100 mm move, e.g. G1 X100 F500.
Measure the real displacement with a ruler or caliper; call it d.
Correct: new steps/mm = current steps/mm × 100 / d. Apply the value in Settings → Axes.
Repeat with 1000 mm (G1 X1000 F1000): the longer the travel, the smaller the measuring error, and the tuning gets fine. Same formula with 1000 instead of 100.
Mind the units: these tests count in millimetres. If the app is set to inches, G1 X100 means 100 inches (about 2.5 m) and the axis will run into its limit switch. Calibrate with Settings in mm, or put the unit on the line: G21 G1 X100 F500.
Start with conservative speeds and accelerations; raise them once the mechanics are proven. If an axis loses steps during the test, lower acceleration before speed.
4. Testing the probe signal
On this machine probing is done by the floating torch: when it touches the plate, the torch lifts on its slide and an inductive sensor detects it. Before trusting the automatic touch-off:
With the machine idle, watch the Probe LED in the Inputs group: at rest it must be off.
Lift the torch by hand: the LED must light up. If it works the other way round, invert the polarity in Settings → Inputs.
Dynamic test: jog the Z axis slowly down towards the plate and watch the LED at the moment of contact. Keep your hand on the button: in this test nothing stops Z automatically.
5. Testing the emergency stop and limit switches (alarms and reset)
E-Stop. With the machine idle, press the mushroom button: the E-Stop LED must light and the outputs (torch included) must turn off. While it is pressed the application blocks Run and jog.
Limit switches. Press them by hand and check their LED. If one works the other way round, invert its polarity in Settings → Inputs.
How to reset an alarm. First remove the physical cause: release the E-Stop (twist to unlatch) or jog off the limit switch (jog IS allowed with a limit pressed, precisely to free it). Then press Reset. While the cause is still present, Reset will not clear the alarm.
6. Adjusting the Offset (real pierce height)
The Offset (mm) in Cutting parameters compensates the dead travel of the floating torch: from the moment the nozzle touches the plate until the sensor trips, the Z axis has gone down a few extra millimetres. To adjust it:
Do a touch-off (a test M3 from the MDI over the plate, or the macro's probing) to set the work zero.
From the MDI move up to the configured pierce height, e.g. G0 Z3 if your Pierce height is 3 mm.
Measure the real nozzle-to-plate distance (feeler gauges).
Correct the Offset until the real height matches the configured one: if you measure too much, lower the Offset by that difference; if too little, raise it.
7. Connecting the VD board and calibrating the THC
The THC needs to know the arc voltage, and what measures it is the VD board: a small board wired to the plasma cutter on one side and to the controller on the other. Wiring first; calibration comes after.
7.1 — How to wire it
There are two ways of picking up the voltage from the cutter and you use only one, whichever your machine allows. Check your cutter manual first: if it has a divided arc voltage output, go straight to option B.
Option A — straight to the arc. One wire to the torch terminal (the electrode one) and the other to the work clamp or the table, both into the red terminal of the board (the 1:1 input). The orange terminal is left free.
Option B — to the 1:50 output of the cutter. The two wires of that output go into the orange terminal of the board (the 1:50 input), and the red terminal is left free. It is the better option when available: only a few volts reach the board instead of the hundreds of the arc.
Whichever option you use, the rest is the same:
The order of the two wires from the cutter does not matter. If you swap them the board reads exactly the same. You do not need to worry about which one is positive.
Power. The board is powered from its USB-C port (a phone charger or a PC USB port will do). With no USB it does not measure: that is the first thing to check if the application receives nothing.
The cable to the controller. Two wires, A and B, from the green terminal of the VD board to the P2 terminal block of the controller. Here polarity does matter: A to A and B to B; swapped, there is no communication. Use a shielded twisted pair and bond the shield to ground at one of the two ends, not both.
Safety. Do all the wiring with the cutter switched off and unplugged: the 1:1 input sits at arc voltage, which is around 300 V open circuit. The VD board is isolated inside, but that only protects you if you do not tie the grounds together: the arc ground must never touch the controller ground or the PC ground. And keep the A/B cable away from power cables and from the torch lead, like every other signal.
Quick check, without firing the plasma. With the VD board powered, open the THC tab: if the wiring is right you will see a waiting state and a 0 V reading. If it reports no data from the VD board and the voltage shows as --- V, nothing is arriving: check the board USB first, then whether A and B are swapped.
7.2 — Calibration: Set Point and correction speed
Reference cut without THC. On a flat plate, program a straight cut and run it with the THC off, at the cutting height your plasma cutter's manufacturer states for those consumables and amperage (its cut chart).
Read the voltage. During that cut, watch the live arc voltage (Varc) reading in the THC tab. That value is YOUR real cutting voltage at the correct height.
Paste it into the Set Point. Enter the value you read into THC Set point (V) in Cutting parameters. From then on the THC will move Z to hold that voltage = that height.
Tune the correction speed. Start low. If the torch oscillates up and down (spring / porpoising effect), lower the correction speed or widen the dead band. If it reacts late to plate changes, raise it little by little.
Arc voltage varies with consumables, amperage and material: if you change your consumable set or your usual plate, repeat the reference cut.
8. Configuring the pendant keys
All of this lives in Settings → Remotes. First pick which pendant you have in Pendant type. Picking it loads its factory key map:
XHC WHB02: the XHC pendant (HB02 and family). It is not a keyboard: it speaks HID and comes in through a separate path.
Keyboard / generic: a wireless numeric keypad, which the PC sees as just another USB keyboard. Use it with Num Lock off.
CNC remote: the «Mach3 CNC manual remote controller».
The screen draws the pendant as it is: every key in its place, with the name printed on it. The colour tells its function (blue X/Y, green Z, grey A, yellow speed, purple step, orange trace, red Stop). Grey keys exist on the pendant but do nothing in ePCon. To change one: click it and press the pendant button.
The numeric keypad mirrors the on-screen jog panel:
Num Lock
Run/Pause (/)
Torch (*)
←
A+ (7)
Y+ (8)
Z+ (9)
J- (-)
X- (4)
Step (5)
X+ (6)
J+ (+)
A- (1)
Y- (2)
Z- (3)
Ok (Enter)
Go to zero (0)
Stop (.)
J+ / J- change the jog speed, Step cycles the jog mode (continuous, x1, x10, x100), and Ok captures the point in Trace mode. While tracing, 0 undoes the last point instead of going to zero (point 18).
On the CNC remote: Start = Run/Pause, Torch (the SPINDLE ON/OFF button) = torch, Recut (RE DO), F+ / F- = Feed Override ±5 %, J+ / J- = jog speed, Step = step, Origin = Go to zero, and Trace+ / Trace- (SPEED UP / SLOW DOWN) = capture / undo point in Trace mode. Recut, F+ and F- have no factory key: assign them once.
Actions your pendant has no button for are not drawn. If they already had a key assigned, it keeps working.
The application also remembers which physical device sent the last captured key. Input from that pendant remains active even while the cursor is in a text field; ordinary PC-keyboard input continues to respect typing. If the wrong device was learnt, capture any binding again with the correct pendant.
The bindings are stored in the machine's configuration file. To go back to the factory map, pick another pendant type and then yours again.
The factory maps deliberately avoid plain letters. The keyboard is listened to globally, so a T assigned to the torch would fire while typing in the MDI.
Part II — Daily use
9. Preparing a job: part zero and dry run
Referencing here is manual: the Ref All Home of Mach3 does not exist. You find the zero by hand, on the edge of the plate, and on a plasma table that is more practical — the plate is laid wherever it lands, and what matters is where it is, not where the machine is. The limit switches protect the travel, they are no good for referencing: they all go in series into the same terminal, so the machine knows one has been hit but not which one.
Part zero (X/Y). With the plate in place, jog the torch to the point your CAM used as the nesting origin (typically the lower-left corner) and zero X and Y with the DRO buttons. The Z zero is not set by hand: the M3 macro sets it with the touch-off at every pierce.
Check in the graphic view that the drawing falls inside the plate: the cross marks the torch's current position relative to the program.
Dry run (highly recommended with a new program). Run the program with the plasma source off and the Arc monitor disabled (otherwise it would pause with "arc did not fire"). Check the travel, the heights and that nothing collides. Then: source ON, Arc monitor ON, and cut.
10. Basic workflow
Press Connect to establish communication with the controller.
Load a G-code file with the Load file button.
Review the toolpath in the G-code list and the graphic view.
Set the part zero (point 9) and the cutting parameters (THC Set point, pierce height, offset, piercing time) in the right panel.
Press Run to execute the program (it starts by raising to Safe-Z).
Use Pause/Resume to pause and resume (smooth braking), Reverse to run backwards along the path, and Cancel to abort.
11. Main tabs
Main: execution, graphic view, coordinates (DRO), G-code list and MDI.
Settings: split into three tabs of its own:
General: connectivity, axes, A axis, inputs, speeds and parameters (junction deviation / jerk), cutting heights and Recut.
Remotes: everything about the pendant (point 8).
Firmware: controller identity — serial number and version — and the update over the network (point 23).
THC: height control settings and live arc voltage reading.
About: this manual.
Settings quick reference
Torch Off delay (s): delays switching the torch off after the end of a cut. The value takes effect immediately and is saved when the application closes.
Working units (mm / inches): change what you see and what you type by hand: the DRO, the feed, the axes, the MDI and the length fields (Safe Z, Pierce height, Offset, Recut margin, Junction deviation, Jerk and the THC correction speed), which show their unit in brackets. settings.ini is always saved in mm, so switching units never alters a setting. The change applies when the application is restarted: when it opens, everything is already in the new unit. G-code files do not depend on this selector (see FAQ).
Tab Logs / Macro editor: show or hide the diagnostic-log viewer and the advanced Lua macro editor. The Logs tab groups the session, THC/Arc, Pause/Cancel and pendant traces.
A axis: with Slave of X enabled, A is the second gantry motor and receives the same Step/Dir pulses as X. Untick it to use A as an independent rotary axis; its values are then steps/degree, degrees/minute and degrees/s². Invert direction reverses that motor without changing its wiring.
Junction deviation (mm or in): look-ahead tolerance at corners. A larger value carries more speed through corners but rounds them slightly more.
Jerk (mm/s³ or in/s³): enables the smoother S-curve speed envelope. A lower maximum reduces abrupt acceleration changes but lengthens the ramps; a useful starting range is 10–30 times the highest axis acceleration. It applies to the next Run.
Safe Z / Pierce height: Safe Z is the absolute clearance used before XY travel; Pierce height is measured above the plate zero established by touch-off and is where M3 fires the torch.
Recut margin (mm or in): distance before the failure point at which the arc must already be established. Increase it if the arc only becomes ready at the old cut endpoint; reduce it if too much of the existing kerf is melted again.
Probe the plate on every pierce: enabled, M3 establishes Z zero at each pierce. Disabled, the manually entered Z zero is trusted; a wrong zero can drive the torch into the plate or fire it in mid-air.
12. Main controls
Connect: connects or disconnects the controller.
Run / Cancel: starts the loaded program or aborts it.
Pause / Resume: pauses with smooth braking or resumes forward (at the machine's real acceleration). See below what you can do during the pause.
Reverse: while paused, runs backwards along the already executed path (torch off).
Recut: appears when the Arc Monitor has paused due to an arc failure; it re-engages the cut automatically (see point 15).
Torch: turns the torch on or off (SSR output).
THC On/Off: enables or disables height control during the cut.
Cutter: auxiliary cutter output.
Go to zero: moves the machine to zero with a safe strategy.
Arc monitor: enables/disables the arc watchdog (see point 15).
Jog X / Y / Z / A: manual movement. Each button carries its axis and direction written on it (X+, Z-...), and the colour groups them: blue for the X/Y cutting plane, green for the Z height, grey for the A axis. Continuous or by steps x1/x10/x100 with the selector in the centre of the cross; step jog also works while paused.
Feed Override / Jog Override: feed adjustment during execution (in steps of 5) and manual jog (in steps of 10).
What you can do during a pause
A pause is not just "waiting": it is meant for stepping in on the cut. What you do with the jog changes what happens on resume:
If you only correct the height (Z). This is the typical move: the torch is running too high or too low and you raise or lower it by hand. On Resume, your correction is respected and the cut carries on from where it was, with no extra movement.
If you move the machine in the plane (X or Y). Then the geometry has to be recovered. On resume the machine lifts to Safe Z, travels back through the air to the exact point where it stopped, comes down and carries on. The torch is never dragged across the plate. The same applies to Reverse.
In short: moving Z during a pause is your decision and it stands; moving X/Y is undone, because otherwise the rest of the part would come out shifted.
13. Graphic view
Mouse wheel: zoom. Right-button drag: pan the view. Right double-click: recentre.
Tapping a shape selects its line in the G-code list (and the other way round: selecting in the list highlights the shape in red).
Arrows on the rapid moves (G0): each rapid carries an arrowhead showing its direction; following a shape's outgoing arrow shows which one is cut next, and the incoming one tells where it comes from. Very short rapids carry no arrow to keep the drawing clean.
14. THC (torch height control)
ePCon reads the arc voltage (Varc) through the VD sensor board (over RS485) and moves the Z axis to keep the voltage at the Set Point, i.e. to keep the cutting height constant. In the THC tab you adjust:
Dead band (V): margin around the Set Point where no correction is applied (avoids jitter).
Correction speed (mm/s/V): the higher, the faster Z corrects the height error.
VD calibration: scales the complete VD measurement chain; it is not simply the cutter's advertised divider ratio. On a v2 board it is typically around 150. During a reference cut, compare Varc with a voltmeter and adjust this value until both agree. It normally changes only when measurement hardware changes, or when a different cutter is used through its divided-voltage output.
Anti-dive (% of feed): if the real feed drops below that % of the programmed one (corners), the THC freezes so the torch does not dive.
Activation delay (ms): after the pierce, the THC waits this long before correcting (lets the arc stabilise).
Max Varc (% of Set Point): if the voltage exceeds that % steadily, the arc is not transferring to the material (open-circuit voltage) → pause.
If the voltage shown by the application does not match the one you measure with a voltmeter, trim it with the Divider factor: new factor = current factor × real V / displayed V. Wiring of the VD board is covered in point 7.
The idea, in one picture. A plate is never perfectly flat: the heat of the cut warps it. If the Z axis stays put, the torch closes in on the humps (until it crashes) and drifts away over the hollows (the arc stretches and the cut suffers). Because arc voltage rises as the torch moves away and drops as it gets closer, that voltage works as a measuring stick: the THC compares it against the Set Point and moves Z to bring it back, keeping the cutting height constant.
The dead band keeps Z from twitching on the normal noise of the reading, and anti-dive freezes the correction in corners, where the machine slows down and the voltage rises even though the height has not changed. Calibrating the Set Point is point 7 of the commissioning.
15. Arc Monitor and Recut
The Arc Monitor watches the arc during the cut and pauses the machine (turning the torch off) if it detects: lost arc, arc that never fired, arc not transferring (open-circuit voltage) or collision. A banner shows the reason for the pause.
After a pause due to an arc failure the Recut button appears; it re-engages the cut without leaving a mark: it backs up a few millimetres over the already cut path, resumes with the torch off, and fires it on the move with just the right anticipation so the arc arrives established slightly before the point where it went out — it neither dies for lack of material nor leaves a re-pierce mark. It uses two values: the Piercing time from Cutting parameters (the time your plasma source needs to establish the arc) and the Recut margin (mm) from Settings (how many mm before the cut-off point the arc must arrive ready).
Recut can also be fired from the pendant: the Recut key of the CNC remote, or whichever key you assign in Settings → Remotes. It does the same as the button and only acts when the button is available.
16. MDI and Run from line
The MDI tab sends quick manual commands (only with the machine idle):
M3 / M4 (torch ON) and M5 (torch OFF), standalone.
G0 / G1 with X, Y, Z coordinates and F for the feed.
MDI coordinates and feed are in the Settings units. To force the other unit, write it on the line: G21 G0 X10 (mm) or G20 G0 X1 (inches).
Run from line: starts execution from a specific program line, first positioning with a safe move (Safe-Z lead-in). It works even while paused.
17. Piercing (touch-off + pierce) and macros
Torch ignition is handled by the M3 macro (in Lua): it probes the plate (floating torch + inductive sensor), sets the work zero, raises to the pierce height, fires the torch and waits the piercing time before the G-code starts cutting. The parameters come from the Cutting parameters box: THC Set point (V), Offset (mm), Piercing time (ms) and Pierce height (in Settings).
ePCon supports Mach3-style Lua macros (custom M-codes) with a built-in editor (enabled in Settings).
18. Trace mode (digitising)
This is for copying a real shape: you drive the torch by hand around the contour of a part or a template, capture vertices as you go, and export it as DXF when you are done to take it into the CAM. Only with the machine stopped (Idle).
Set the origin. Jog the torch to the corner you want to start from and zero X and Y with the DRO buttons. That point becomes vertex 0 of the trace.
Enter the mode with the Trace button. Its LED blinks orange while you digitise.
Capture the vertices. Move the torch to the next point of the contour and press the capture point key; a vertex is added with the X/Y shown on the DRO. The polyline is drawn in amber over the graphic view.
Numeric keypad
XHC
CNC remote
Capture point
Enter (Ok)
YES
Trace+
Undo the last one
0
NO
Trace-
Undo never deletes the origin: it stays as the anchor. On the numeric keypad, 0 is Go to zero outside Trace mode; while tracing, it undoes.
Num . (with Num Lock on) clears the whole trace and leaves only the origin.
Finish by pressing the Trace button again. A dialog with three buttons appears:
Export to DXF: opens the save dialog and writes the file.
Discard: deletes the trace and leaves the mode.
Keep tracing: goes back to the mode with nothing lost, in case you pressed it by mistake. Closing the dialog or cancelling the save does the same: the trace is never lost by accident.
After exporting, the shape stays on the graph so you can see it. The next press of the Trace button only clears it, and the one after starts a new trace. If you leave without capturing any vertex, nothing is asked and the graph is left clean.
The DXF is written as an AutoCAD R12 POLYLINE, the format Vectric Aspire/VCarve and the usual CAM packages import without trouble. Coordinates are in millimetres and the R12 format does not store the unit: when SheetCAM or another CAM asks on import, choose mm (choosing inches makes the part 25.4 times larger).
19. Keyboard navigation
Tab / Shift+Tab move the focus to the next / previous control.
Enter in single-line boxes confirms the value and moves on.
The jog keys (X/Y/Z/A and speed) are configured in Settings (see point 8).
While tracing, Enter (Ok on the numeric keypad) captures the point and does not press any on-screen button. Outside Trace mode, Enter is an ordinary Enter.
20. Frequently asked questions
What G-code does ePCon understand?Mach3 / SheetCAM style plasma code: G0/G1 (lines), G2/G3 (arcs with I/J centre or R radius; Mach3 convention: negative R = arc over 180°. Full circles require I/J: in R format they are geometrically ambiguous and ePCon warns and ignores them when loading the file), G4 (dwell), M3/M5 (torch at the start and end of each shape) and M30, in millimetres (G21) or inches (G20). The header G53 (raise Z in machine coordinates) is skipped without moving anything. A program with incremental coordinates (G91), another work offset (G55–G59) or kerf compensation (G41/G42) is rejected as a whole on load. No variables or subroutines: the file must arrive "flat", which is exactly what Mach3 plasma posts generate.
Am I forced to buy SheetCAM? No. Any CAM with a "Mach3 plasma" (or compatible) post-processor works. Options: SheetCAM (the de facto standard in plasma; affordable licence and a free demo limited in lines), Fusion 360 (free for personal use, ships a Mach3 plasma post), Inkscape + Gcodetools (free, for simple contours from vector drawings) or FreeCAD (free, CAM workbench). Arcs work in both I/J and R formats.
Where is the kerf (the cut width) compensated? In the CAM (SheetCAM, Fusion 360, etc.), not in ePCon: the G-code must arrive already compensated.
Where do I get the feed (F), amperage and heights? From your plasma cutter manufacturer's cut chart, for each plate thickness and consumable set. That chart rules: the CAM sets the F, and the heights and piercing time are configured here.
What units does it work in? Internally, always millimetres. The file decides with its code: G21 = mm, G20 = inches (converted to mm on load and cut at its real size). A file with neither G20 nor G21 is taken as mm: if your post works in inches, make sure it writes the G20. If you load an inch file with the app in mm, ePCon tells you in a window; the editor keeps showing the file's values and the DRO the app's. The units selector in Settings only changes what you see and type by hand (see Settings quick reference); settings are always saved in mm.
21. Safety recommendations
Always keep the physical emergency stop at hand: it stops motion and turns the outputs off even if the PC hangs. How to reset it: point 5.
If the PC stops talking, the machine stops by itself. The controller watches the link: if three quarters of a second go by with nothing from the PC — network cable pulled, application closed abruptly, PC hung — it turns the torch off and brakes on its own. It never keeps cutting blind. When the connection comes back the machine is found paused.
Grounding and interference (EMI): the plasma pilot arc generates a lot of electrical noise. Ground the table well and keep the signal cables (Ethernet, USB, the VD board's RS485) away from power cables and the torch lead. It is the most common cause of disconnections and absurd Varc readings.
Check limits, torch and material before running; with a new program, do the dry run first (point 9).
Check height and possible collisions before using Run from line or Go to zero.
Do not run moves before setting the work zero and going over the configuration (step 9).
22. Saving the configuration (and how to recover it)
There is no save button: the application saves ALL the configuration automatically on exit, to the settings.ini file (and, if connected, also to the controller's memory). The per-block Apply buttons push changes to the controller live, without waiting for exit.
Automatic backup: on every start, if settings.ini is healthy, the application saves a copy as settings.ini.bak. Saving is also atomic: a power cut in the middle of a save does not leave the file corrupted.
Taking your configuration to another PC. In Settings → General there are two buttons, Export and Import. Export writes all your settings into the file you choose; Import replaces the current ones with that copy. Use it when you change computers, to set up an identical second machine, or to send your configuration to service. On import the application first saves a copy of what you had, and you must restart it for the new configuration to come in whole.
If the INI still gets corrupted (the application starts with everything at defaults or absurd values): close the application, delete settings.ini, rename settings.ini.bak to settings.ini and reopen. You recover the configuration of the last good start.
23. Updating the controller firmware
The firmware is the program running inside the controller. It is updated over the network, from Settings → Firmware: no need to open the cabinet, remove the board or install anything.
That tab shows the controller's serial number and the version currently running. Keep both at hand if you call technical support: they identify your unit without ambiguity.
With the machine stopped and the torch off (otherwise it is refused), press Update firmware.
Pick the file the manufacturer sent you.
Wait. It takes a few seconds; a bar shows the progress.
The controller restarts on its own. The connection comes back within seconds and the new version appears in this same tab.
This cannot brick the controller. The new image is written to a spare memory area and only becomes active if it arrives complete and correct. If it is cut off halfway, or if the new version failed to work, the controller falls back to the previous one by itself.
Do not cut the power or unplug the network during the update. There is a safety net, but the sensible thing is to let it finish.
Depending on how your unit is configured, the file may come prepared specifically for your machine: in that case only your controller accepts it, and it is useless on any other one, even an identical machine. If you pick the wrong file, the application says so and nothing happens.
24. Quick troubleshooting
If it does not connect: RJ45 LEDs first (point 2); then PC IP/subnet, Verify button, firewall.
If it disconnects or misbehaves right when the arc fires: almost certainly grounding/EMI (point 21).
If an axis does not respond or measures wrong: check steps/mm (point 3), max speed, acceleration and limits.
If the torch does not fire: SSR wiring and configured polarity.
If the THC does not correct: VD board reception, Set Point and divider factor (watch the live reading in the THC tab).
If the touch-off fails or false-triggers: Probe LED and its polarity (point 4).
If the machine will not move and you do not know why: check the E-Stop and limit LEDs — there may be a latched alarm (point 5).
If the machine brakes on its own and the torch goes off with no alarm raised: the link with the PC was lost (point 21). Check the network cable, and if it happens when the arc fires, it is grounding/EMI.
If «Board not checked» appears when connecting: the application lets you look at the board (position, settings, firmware update) but not cut or move. The reason is shown in the message bar. Disconnect and connect again with the machine stopped; if it keeps appearing, update the firmware to 1.7.6 or later (point 23) or contact the manufacturer.
If a firmware update is refused: the machine had to be stopped and the torch off. If the message is about the file, that firmware is not for this controller (point 23).
25. Final note
This manual is an operation guide. Before cutting a real part, always verify toolpath, references, torch and safety conditions.