This week we will investigate the physical manufacturing of a PCB through CNC machining.
To develop the machining of the PCB, we will need to learn to control the virtual panel interface of the Roland MDX-540. Also IOSender interface is used to send g-code to othe generic CNC Machines.
VPanel is the user-friendly control software for the Roland MDX-540 CNC milling machine, enabling precise management of spindle speed, tool positioning, and feed rates via a computer or built-in panel. It supports the 5-station Automatic Tool Changer, optional rotary axis, and G-code compatibility for automated workflows. VPanel simplifies setup, axis adjustments, and emergency stops, integrating with Roland’s SRP Player CAM software. Feed output tweaks (0.05 to 0.2) resolve operational issues, and updates are available through Roland DG’s support wizard.
ioSender is a G-code sender for Grbl and grblHAL, written in C# for Windows. It features a user-friendly interface for managing CNC workflows, including file management, probing, jogging, and 3D visualization of toolpaths. It supports USB and Ethernet connections, with advanced settings for macros, limit switches, and spindle control, making it ideal for hobbyist and professional CNC users.
The goal is to manufacture the copper traces for power transmission on the board through CNC machining and subsequently solder the necessary components for the PCB's operation.
1. The first step is to familiarize ourselves with our work tool. I made my board using two different machines. The first test was on a CNC machine built by Fab Academy alumnus Wilhelm Schultze, with a "do-it-yourself" character, and my final board was machined on a Roland MDX-540 located at the University of Lima.
The first CNC consists of a rigid frame with a spindle that only allows rotation at 1000 RPM, so it cannot machine fiberglass, only bakelite. It helped me conduct some tests, but in the end, I needed to do it with greater safety and precision on another machine. It had overheating issues, lacked Z-axis detection, and was operated through a G-code interface called IO Sender.
The Roland MDX-540 is a high-precision benchtop CNC milling machine designed for professional and educational applications. It features a robust 4-axis system, supporting a 5-station Automatic Tool Changer (ATC) and an optional rotary axis for complex, automated milling tasks. With a spacious work area, it handles materials like wood, plastics, and non-ferrous metals, delivering detailed prototypes, parts, and molds. The machine integrates seamlessly with VPanel control software and SRP Player CAM for user-friendly operation and G-code compatibility. Its high-speed spindle and advanced engineering ensure accuracy, making it ideal for industries like product design, engineering, and education. Regular firmware updates via Roland DG’s support enhance performance.
2. The first thing to do is to select an origin point to work from by using the remote control it has.
3.It is necessary to install the appropriate milling bit to perform the task: a 2mm V-shaped bit for engraving the traces and a 1mm pre-drilling bit for the through-holes.
4. After that, the G-code that was designed is loaded, and the program is executed.
5. Together with Ofelia, we processed the test file provided by FabAcademy to test the depths of the parts and determine the working parameters.
5.The first step is to extract the PCB design files as a Gerber from the manufacturing section of Fusion.
6.To generate G-code, we need to convert the Gerber file into a vector file like SVG. For this, we will use an intermediate step with the help of the Gerber to PNG tool.
7. With the PNGs we are interested in already generated, we can convert them to SVG using another online tool.
8. These SVGs are imported into VCarve to generate the toolpaths for routing the traces, drilling the through-holes, and cutting the perimeter.
9. The existing G-code is entered into the Roland's VPanel, with which the program is executed. .
10. On the completed board, the necessary electronic components are soldered.
11. I used boards 1 and 2 during the following weeks since they were functional, but when I decided to remake the board, my Seeeduino short-circuited and stopped working. In the lab and in Peru, it is difficult to find Seeeduinos, so I made a board for the ESP32 Devkit.
12. Finally, the piece is placed inside the 3D-printed case that will serve as the housing for the PCB.
Cutting G-code File Drilling G-code File Routing G-code File