ePCon — Application manual

Version: v1.6.0
By Nortec @ 2026

1. Overview

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

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.

Controller terminal map (eMCon V3.0 board) View of the controller board as it comes out at the edges of its enclosure. Along the top edge, left to right: the orange P2 terminal block for the RS485 link to the VD board, the green U7 output block with Out1 torch, Out2 THC, Out3 auxiliary and the 10V, PWM and ACM terminals for the VFD, the last one in black because it is their ground, and on the right the RJ45 network connector and the service USB. Along the bottom edge, left to right: the red P8 power block with Vout 5V, Gnd2 in black and Vin; the white P5 encoder block with A, B and Z; the blue P1 for Input1 and P3 for the emergency stop; the white P6 probe block with Gnd2, Vout and signal; the blue P4 for the limit switches, and the green U4 axes block with Xd, Xs, Gnd in black, Yd, Ys, Zd, Zs, Gnd in black, Ad and As. The black terminals are always the grounds. Controller connections what goes on each terminal, in the colours of the block eMCon V3.0 board A B P2 Out1 Out1 Out2 Out2 Out3 Out3 10V PWM ACM U7 5V Gnd2 Vin P8 A B Z P5 Input1 P1 E-Stop P3 Gnd2 Vout Signal P6 Limits P4 Xd Xs Gnd Yd Ys Zd Zs Gnd Ad As U4 RJ45 USB RS485 OUTPUTS Spindle Network USB Power Input1 Probe AXES (motors) Encoder E-Stop Limits The BLACK terminals are the grounds.

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.

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:

  1. Zero the axis with its DRO button and mark the physical position (or set up a dial indicator/ruler).
  2. From the MDI command a 100 mm move, e.g. G1 X100 F500.
  3. Measure the real displacement with a ruler or caliper; call it d.
  4. Correct: new steps/mm = current steps/mm × 100 / d. Apply the value in Settings → Axes.
  5. 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:

  1. With the machine idle, watch the Probe LED in the Inputs group: at rest it must be off.
  2. Lift the torch by hand: the LED must light up. If it works the other way round, invert the polarity in Settings → Inputs.
  3. 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)

  1. 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.
  2. Limit switches. Press them by hand and check their LED. If one works the other way round, invert its polarity in Settings → Inputs.
  3. 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:

  1. Do a touch-off (a test M3 from the MDI over the plate, or the macro's probing) to set the work zero.
  2. From the MDI move up to the configured pierce height, e.g. G0 Z3 if your Pierce height is 3 mm.
  3. Measure the real nozzle-to-plate distance (feeler gauges).
  4. 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 A: the VD board wired straight to the arc (1:1 input) One wire runs from the torch terminal to the 1:1 input of the VD board and the other from the work clamp to that same input. The board is powered from its USB-C port and leaves with two wires, A and B, as a shielded twisted pair, to the A and B terminals of the ePCon controller. OPTION A · straight to the arc (RED terminal) for cutters that do NOT have a divided voltage output PLASMA CUTTER up to ~300 V open circuit Torch (electrode) Work clamp / table VD BOARD measures the arc voltage The orange terminal (1:50) is left unconnected 1:1 input RED terminal GREEN terminal USB-C 5 V: this is what powers the board twisted pair shielded A B A B CONTROLLER ePCon RS485 input terminal block P2 1. The order of the two ARC wires does not matter: the board takes them either way and reads the same. 2. On the A/B pair polarity DOES matter: A to A and B to B. Swapped, there is no communication and the app reports no data from the VD board. 3. Do all the wiring with the cutter SWITCHED OFF and unplugged, and never tie the arc ground to the controller ground or to the PC ground.

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.

Option B: the VD board wired to the 1:50 output of the cutter The two wires of the cutter divided voltage output go to the 1:50 input of the VD board. The board is powered from its USB-C port and leaves with two wires, A and B, as a shielded twisted pair, to the A and B terminals of the ePCon controller. OPTION B · to the 1:50 output of the cutter (ORANGE terminal) the best option if your machine has it PLASMA CUTTER already divided voltage output 1:50 output (+) 1:50 return VD BOARD measures the arc voltage The red terminal (1:1) is left unconnected 1:50 input ORANGE terminal GREEN terminal USB-C 5 V: this is what powers the board twisted pair shielded A B A B CONTROLLER ePCon RS485 input terminal block P2 1. The order of the two 1:50 output wires does not matter: the board takes them either way and reads the same. 2. On the A/B pair polarity DOES matter: A to A and B to B. Swapped, there is no communication and the app reports no data from the VD board. 3. Do all the wiring with the cutter SWITCHED OFF and unplugged, and never tie the arc ground to the controller ground or to the PC ground.

Whichever option you use, the rest is the same:

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

  1. 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).
  2. 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.
  3. 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.
  4. 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:

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 LockRun/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.

10. Basic workflow

11. Main tabs

Settings quick reference

12. Main controls

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:

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

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:

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.

How the THC works: arc voltage measures the height and the Z axis corrects it Two scenes compared over a warped plate. On the left, with the THC off, the Z axis stays at a fixed height: the torch cuts well at first, crashes into the hump of the plate and ends up too high over the hollow. On the right, with the THC on, the Z path copies the profile of the plate and the cutting height stays the same at all three points. Below, a bar with three zones: if arc voltage is below the Set Point the torch is too low and the THC raises Z; inside the dead band the height is right and Z is left alone; above it the torch is too high and the THC lowers Z. How the THC works arc voltage measures the height, and the Z axis corrects it THC offZ stays fixed: the height changes with the platewarped plateZ fixedright heightcrash!arc far too long THC onZ follows the plate: the height is keptwarped plateZ follows the platesame height all the way Arc voltage (Varc) is the measuring stickSet Pointdead bandVarc belowthe torch is too lowthe THC raises ZVarc inside the bandthe height is rightZ is left aloneVarc abovethe torch is too highthe THC lowers Z

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):

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).

  1. 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.
  2. Enter the mode with the Trace button. Its LED blinks orange while you digitise.
  3. 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 keypadXHCCNC remote
    Capture pointEnter (Ok)YESTrace+
    Undo the last one0NOTrace-
  4. Finish by pressing the Trace button again. A dialog with three buttons appears:
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

20. Frequently asked questions

21. Safety recommendations

22. Saving the configuration (and how to recover it)

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.

  1. With the machine stopped and the torch off (otherwise it is refused), press Update firmware.
  2. Pick the file the manufacturer sent you.
  3. Wait. It takes a few seconds; a bar shows the progress.
  4. 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

25. Final note

This manual is an operation guide. Before cutting a real part, always verify toolpath, references, torch and safety conditions.