4. Electronics Production
This week we learned how to create an electronic board from its cutting on the CNC PCB to soldering the components and finally programming the blinking of a LED light.
Group assignment
Our assignement was to build a microcontroller development "Quentorres" board and make it work by programming the blinking of a LED light
We did several tests to choose the right material and tips.
Tip test
We launched a small PCB model on the CNC and used 2 types of tips : a "V" one and an "helocoidal" one.
As you can see below, the helicoidal tip is giving a much better and precise result than the "V" one.

Material test
We also tried out the Quentorres board on 2 different materials : FR1 (phenolic paper) and FR4 (epoxy glass).
The Epoxy Glass (first picture below) gives a much better result, that's why we used it to complete this assignment.


Preparing the G-Code files
To get the Quentorres board cut and engraved, we had to prepare the G-Code files that will run the CNC to get the physical base of the board (without its components).

We prepared the G-Code files in Mods.
For that, we saved the Quentorres PNG files that are in the Fabcloud (no need to rename the files).

Discovering Mods
The Mods website is simple to use and has a minimalist interface.

To create the G-Code files, you have to right-click on the interface and choose "G-Code > mill 2D PCB". This will open all the parameters you'll need to configure the Quentorres PCB cutting and engraving.


First we worked on the "traces" file by opening it in the "read png" box.
To create the traces, we had to insert the path parameters in the "path to G-code" box.

- cut speed :
- plunge speed :
- jog height :
- spindle :
- dwell :
- tool :
- coolant :
- format :
Then we changed the mill raster parameters in the "mill raster 2D" box.

- tool diameter :
- cut depth :
- max depth :
- offset number :
- offset stepover :
- direction :
- path merge :
- path order :
- sort distance :
After entering all the parameters, clicking on "Calculate" (in the bottom of the "mill raster 2D" box) will generate the G-Code file and open a view of the result. This shows where the tool will engrave.

After the "traces" file, we did the same for the "drill" file and changed the path parameters by :
- cut speed :
- plunge speed :
- jog height :
- spindle :
- dwell :
- tool :
- coolant :
- format :
And the mill raster 2D parameters by :
- tool diameter :
- cut depth :
- max depth :
- offset number :
- offset stepover :
- direction :
- path merge :
- path order :
- sort distance :
Here's how a G-Code looks like when you open it in a simple text computer program :

Last but not least, we opened the "interior" file and also changed the parameters.
Here are the path parameters :
- cut speed :
- plunge speed :
- jog height :
- spindle :
- dwell :
- tool :
- coolant :
- format :
And the mill raster 2D parameters :
- tool diameter :
- cut depth :
- max depth :
- offset number :
- offset stepover :
- direction :
- path merge :
- path order :
- sort distance :
Engraving, drilling and cutting the board with the CNC
The CNC we have for PCB boards is a Wegstr.

To get the finished Quentorres board, we have to start by the engraving part.
First we had to change the tip and insert a ... .

Then to open the G-Code file on the Wegstr computer program.

We had to configure the "zero" level on the Z-axis of the machine by connecting a little cable and move the Z-axis until the light goes on.

After that, we checked the level every 5 mm on the plate by using the "auto-level" option so that the machine remembers where the levels change a bit and will adjust by itself during the engraving process.

When we were sure that every basic parameter was ok, we launched the machine.

Next step was the drill part of the board. We had to change the tip and calculate again the "zero" level of the Z-axis. We could then launch the machine.

Last step, the cutting of the board.
The result looks pretty good but the boards will need to be cleaned to get all the little copper pieces off.


Here's the final result after cleaning.

Link to our Group page
Individual assignment
Soldering the components
Time to solder the components to the board.

To be sure that the wire won't spread everywhere, we put some flux on it.

Then we put some wire on each piece of the board that will get a component solder on it. For that, we checked the board design file to be sure to put it on the right places.



When the board was ready, we started adding the components :
- 1. the resistors
- 2. the leds
- 3. the button
- 4. the 6 Position Receptacle Connector
- 5. the 10 Position Receptacle Connector
- 6. the SEEED STUDIO XIAO RP2040 ARDUINO

To check the connections before connecting the board to a computer, we used a multimeter.

Little failure
Soldering little pieces like these isn't so easy. You have to practice to get the right amount of wire and to place the components correctly.
I learned for example to be more careful at the time a big piece of wire fell right on the board, of course where it didn't belong... Fortunately, the Seeed Studio piece covered it and we took off most of it with braid.

As a perfectionist, I'm also frustrated that the pieces don't lay flat on the board. That's because of a wrong amount of wire beneath them.

Connecting the board and launching the blinking program
The board is ready and the connection was successfull ! YAY !

Time to install Arduino and code the led blinking program.
In File->Preferences, we had to add the URL of the additional boards, the Arduino-Pico by Earlephilhower.
The next step was to download Pico in the boards manager by going in Tools->Board->Board manager
Then we configured the Arduino IDE for the Seeed Studio XIAO RP2040. The Seeed Studio XIAO RP2040 will appear in the COM port.
Small issue The first cable we used seemed to malfunction. But after trying with another one, we found out that it was because the COM port wasn't selected...![]()
![]()
We loaded the Blink program so that the LED on pin 26 blinks every second. It worked well.
Some extra
We tried out another program to also use the button on the board.
For that, we asked Gemini from Google to help us create the program and it worked.

But pushing the button, the LED goes on. When we release the pression on the button, it goes off.
My journey
This was a new skill to learn and I enjoyed it !
I mostly enjoyed the soldering of the components, even though it wasn't so easy.
The pieces are so small that I've lost one by pinching it to hard with the pliers... (and I fortunately found it a bit later !)

My Final Project
I'm still searching for inspiration for the base, structure, size and accessories of the modular pet house.
I've found some more picture of existing models that I keep in a folder.
Files and resources
My files
- Traces PNG
- Drill PNG
- Interior PNG
- Traces G-Code
- Drill G-Code
- Interior G-Code
- Arduino LED blinking
- Arduino LED light by pushing button
Resources