Install & KiCad
Install SRM-CAM, learn the four regions of the window and Novice and Pro, and get the right files out of KiCad. Then go on to Mill a board.
Install
| Platform | Get it | Notes |
|---|---|---|
| Windows | SRM-CAM-Setup.exe | No Python needed. Start-menu entry, Documents\SRM-CAM\ workspace. Install a new version over the old one; setups and profiles survive. |
| Linux | SRM-CAM-x86_64.AppImage from the latest release | chmod +x, run. No install, no root; it carries its own Qt. The machine link is Windows-only: prepare and export on Linux, send the files from VPanel on a Windows PC, and carry a probed height map over as a CSV. |
| From source | pip install -e ".[gui]" then python -m gerber2rml | After a git pull, python -m gerber2rml.doctor installs anything new. |
No PC at the mill?
The lab's CNC PC has SRM-CAM and VPanel on it. If it isn't free, install both on your own Windows laptop (the link and VPanel are Windows-only) and plug in the two USB cables yourself.
Staying current
The app checks GitHub for a newer release a moment after it opens and says so once, with the download link. asks any time. It never installs anything by itself: you download the new file and install it the same way as the first time.
The first interface is still shipped: SRM-CAM --original from an install, python -m gerber2rml.gui from source. Same engine, same files.
Workspace folders
| Folder | Contents |
|---|---|
Documents\SRM-CAM\sessions | Setups (.srmcam) and height maps (.csv) |
Documents\SRM-CAM\exports | Exported .nc / .rml files and the run plan |
Documents\SRM-CAM\photos | Board photos for the overlay |
Documents\SRM-CAM\gui2.log | Where a start-up problem ends up when there is no console. Read it first if the window never opens. |
The window
Four regions that never move, and a header. Tap one to see what it is for; tap a step on the rail and the stage draws its toolpath, as the app does.
- The rail (left) is the plan. In Novice it is three rows. In Pro it is the whole run plan: the same order, and the same files, that the export writes. Numbered steps are files you send; the rows between them (fit the bit and set the Z origin, flip the board) are things you do by hand. Click any step at any time; nothing is locked. A finding that matters stays on the red banner until it is fixed. Export the job is at the bottom.
- The stage (middle) is the bed in machine coordinates: the copper sheet, the board, the toolpaths of the selected step, the spoilboard's screw grid. Drag the board, or tap the arrow keys to nudge it 0.1 mm (Shift 1 mm, Ctrl 0.01 mm). Scroll to zoom, right-drag to pan, Fit to frame the work. Bed — as cut is the only frame the machine understands; Design X-ray is for checking that the two faces of a double-sided board register.
- The inspector (right) shows the selected step: the setup page, the checks, or a step's parameters, estimate and file.
- The machine bar (bottom) is always there: Connect and the port, the position readout (always machine coordinates), the jog pad, Probe Z, Zero Z, Spindle, Click to jog, and STOP. Esc stops the machine from anywhere, including with a dialog open.
Novice & Pro
Two profiles, on the menu. Novice is the default and is built around one thing: Mill a board. Pro has everything. It is the same program and the same plan, and exported files are identical in both.
| Novice | Pro | |
|---|---|---|
| Rail | Your board, Check it, Run it | The whole plan, step by step |
| How it cuts | By itself, sent directly to the mill | Files you play from VPanel, or Automatic from the Machine menu |
| The stock | Held in the corner bracket | Bracket, found by its edges, clamped or screwed |
| Levelling | Part of the run | Also its own page, and by hand |
| Double-sided | One tick | Fiducials or dowels, every setting |
| Cutting parameters | From the tool profile | Per operation, and your own profiles |
| Also only in Pro | — | Export, rework, several boards on a sheet, drilling a board made elsewhere, output format, streaming, machine test, simulated mill |
| Both | The pre-flight checks, the jog pad and arrow keys, Click to jog, and STOP | |
lists it in the app. A lab that wants the profile fixed sets SRM_CAM_MODE to novice or pro in the environment or the shortcut.
The machine, in five minutes
is the part that is true at every step: VPanel's three coordinate systems and why G54 is the one that matters; zero Z and leave X and Y alone; keep machine Z above −50 mm with the bit on the copper (−55 is the end of the travel); the probe's one wire, the red clip on the copper; STOP against Pause; and where the files go.
Files from KiCad
Set the net class clearance to at least the width of the bit (): a 0.8 mm endmill cannot enter a gap narrower than 0.8 mm. For finer boards, use the ball mill profile. The app's checks list every gap that is too narrow, but it is quicker to fix before routing. in SRM-CAM adds a button to KiCad's PCB editor that draws the SRM-20's build area around your board and says whether it fits.
- Plot Gerbers : at least B.Cu and Edge.Cuts (and F.Cu for double-sided), into one folder. Add B.Mask if the board will get solder mask. If KiCad asks to refill the zones, say yes.
- Drill files Same dialog, Generate Drill Files…: Excellon, millimetres, into the same folder. KiCad writes the plated and unplated holes as two files; keep both.
- Open In SRM-CAM, (Ctrl+O) picks up the layers and the drills and names the job after the KiCad project.
Demo board on loads a bundled 40×30 mm coupon that exercises every operation.
Setups
(Ctrl+S) writes one .srmcam file with everything: the boards and where they sit, the tool, the copper sheet, the screws, the height maps of both faces, the measured flip. brings it back. A setup written by the first interface loads too.
A probed height map is minutes of machine time. Save the setup right after probing; the map is in it.
Reach out to Mads Rudolph, or to the TAs of the course, if you need guidance with the milling.