ik1xpv hamradio software & hardware

CNC laser modifications

The starting point is the CNC in figure:


The manual refers to it as CNC2-Axis-4030B and the laser module power is declared 2500 mW.


After the kit assembly I started testing operation.  I was a little disappointed as I was not able to cut poplar playwood of 3mm thickness.
I had some better result with the modification here following.



The light from the laser module is dangerous and may permanently damage the eyes of the user or persons close to it.

- Operate the unit only when everybody is equipped with protective glasses.

When the machine is power on the laser is dangerous also when is stopped as for a software or hardware fault it could light the laser.

- Keep the laser machine power off when not needed.

The laser “burns” the target material to engrave or cut it. Some setting of engraving or cutting can cause fires.

- Operate the laser with an operator ready to stop it and extinguish eventually fire.

During cutting of material some smoke is generated. Some material may generate poison fume that are dangerous.

- Use the machine at open air or well ventilated room.

I prefer to engrave and cut just natural soft wood. Wood is easy to take fire, pay attention.

- Remember that you are responsible for the safety of your actions.



I made a table for the CNC unit using three IKEA LACK table and some aluminum profile.
Here after some pictures:


A sheet of iron 0.6 mm thick protects the IKEA LACK table surface. Magnets are used to fix the target to the table and to keep protection panels in place. The front panel has an acrylic orange transparent window to monitor the laser operation, nevertheless use always protection glasses too.
I plan to add air blower to ventilate the cabinet.



The laser module has adjustable focus deep moving the lens into a 9mm threated tube. The lens module theads movement is contrasted by a spring.

The lens mount of the 2500mW laser module showed some slack. In addition, the lens vibrates during normal operation of the laser module.

I modified the lens module to a fixed one inserting some spacer (2.5 mm thick in my case) and screwing the lens to the spacer.




 The spacer thickness defines the focal length. A higher focus distance causes a wider focus spot size and a wider depth of focus.


The distance between the laser module aluminum profile bottom plane and the focal plane is about 67 mm in my setup. To evaluate the depth of focus I made some cuts and analyze a section of the cut:




The limit I reached is a cut of 8mm with an estimated width of 0.25 mm with speed of F100 with three or more passes.

In a second test I cut some figures using a speed of F100 and S1000 with 8 passes to obtain a clean cut on 8mm poplar plywood. Air assist is needed to get the result.




Use the lens with a fixed focus requires to adapt the height of the target plane accordingly.
I decided to modify the laser fixing to add air assist. A screw was added to the top to adjust the height of laser over the plane as described in the following.


Compressed air can be supplied from a variety of air compressors. There are many factors to consider when selecting an air source for laser material processing, noise other than the air cleanliness and oil and moisture content.
I decided to use a simple blower on the laser head. The air will flow into the laser diode aluminum profile cooling it and will be forced by a nozzle to the laser cutting area.


I carefully dismounted the laser and the electronics control board. Two blowers (12V -15mm thickness) are mounted on the top of the aluminum laser profile, while a cone nozzle is fixed al the bottom to force the air coaxial to the laser. I made test with 4, 6, 8, 10 mm air nozzle and 6 mm seems the best to me.



The base to which the laser is screwed slides on the front plexiglass plane with four flexible skids that reduce backlash according to the Z axis and a screw allows the laser position to be corrected up to 20 mm high.

The electronics that powers the laser is mounted with some spacer on the left while a DC-DC module is added on the right to power the blowers with 14.5V instead of 12V nominal, it increases the air flow a little bit.



I wired the module 12V power with bigger wires to decrease the voltage drop. The switching regulator in the laser power control should compensate the thinner wires drop, nevertheless it seems to me that it improves the laser performance.

You can find my 3D files in https://www.thingiverse.com/thing:4204645

The design is specific for the CNC2-Axis-4030B model, nevertheless ideas can be improved and generalized.




CNC Xaxis carriage tension adjust:  https://www.thingiverse.com/thing:4188039



CNC belt tensor: https://www.thingiverse.com/thing:4188852



Filament weight scale for Ender-3

When the filament reel of a 3D printer begins to decrease, it becomes difficult to tell whether the remaining filament in the reel will be sufficient for the next print.

A similar scale to the vehicle's fuel gauge would be needed.


Here is a weight scale that allows you to estimate how much filament remains in the printer roll and helps to predict whether it will be sufficient for the print you are about to undertake.
There are many other similar projects on the web at www.thingiverse.com and other sites dedicated to 3D printing.
The particularity of this realization is that it is housed between the support bracket of the filament roll and the 20x20 mm profile at the top of the Ender-3. The power supply is taken from the 24V rail from the nearby power supply. I added a rocker switch to the 24V input to turn off the scale when not needed, it is useless to waste even a small energy of a few watts. 

lt shows weight readings averaged over several seconds and therefore display is quite stable. Note that the force applied to the filament by the extruder generates a variation in the reading of some grams. I modified the pin that supports the roll by inserting a support with two ball bearings that allows rotation with less friction. See Thingiverse "Another Ball Bearing Filament Support Ender-3"



A printed circuit board connects the pre-assembled economic modules together:

a 5kg load cell and an ADC HX711 module - M1, http://bit.ly/2TgD3bu ;
an ESP12E module -M4 , http://bit.ly/2TVHokU or ESP12F http://bit.ly/2TSCXHz ;
a graphic OLED display - M2, http://bit.ly/2TlLhyW ;
a button - S1, http://bit.ly/2TPz4Tx (the plastic cap is not used) ;
a power DC-DC 24V to 3V3 module -M3, http://bit.ly/2TqkHoI
a rocker switch, http://ebay.to/2uFnEYn ;


Directly on the printed circuit board there are few filter capacitors and some resistors.
A programming connector for the ESP-12 is made with a strip of aligned pads and is also used in the firmware development phase. In the development phase I soldered a female strip connector tilted inwards to easily connect the serial interface and programming switches.
The power supply wire added to the 24V is a double insulated plastic cable, since it runs outside the profile is black. I recovered it from a broken laptop power supply

Here: Circuit diagram and pcb layout pdf.



To program in circuit the ESP-12 module I used the following adapter scheme:


 I used this USB - serial adapter.

The FS101 software has been compiled using the Arduino environment for ESP8266 and the subsequent libraries:

- ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display , https://github.com/squix78/esp8266-oled-ssd1306
- HX711 , https://github.com/aguegu/ardulibs/tree/master/hx711 ;
- OneButton , https://github.com/mathertel/OneButton ;
- eeprom , https://github.com/esp8266/Arduino/tree/master/libraries/EEPROM.

The current firmware ( FS101 version 1.0 )  does not activate the WIFI function of the ESP12 and the module is used as an economical micro-controller.

In order to configure the weight scale and modify some parameters I used a single button library user interface with 3 events: button pressed once, button pressed twice, timeout for unpressed button.  The parameters are saved in Flash (Eeprom). Among the parameters is selectable the density in grams per cm3 of the filament. It is used to calculate the estimation in meters of the filament assuming a diameter of 1.75mm.
The default calibration parameters can be modified into the ESP-12 module program by recompiling.

Hereafter a map of the user interface.



I used my 3D printer (Ender-3) to make the weight scale box, the cover and some spacers, see https://www.thingiverse.com/thing:3537459

The box has dimensions of 215 x 32 x 20 mm and is fixed to the top profile of the Ender-3 using 2 bolts of 25mm and one of 8 mm that will be screwed in captive data to the groove of the profile.
I have used bolts and M5 data, however this requires drilling the two M5 holes in the load cell with a 5 mm drill bit to allow the bolts to pass freely and thus tighten the load cell at the base and at the profile.


Two holes in the box allow the passage of the hex key and are also used to cool the electronic circuit and to pass with a small screwdriver to open the rear cover.


Alternatively, M4 bolts and nuts can be used; drilling of the load cell is not necessary.
Be careful to drill holes in the load cell. Do not damage the wiring, and use a column drill and vice to secure the load cell securely. CAUTION: Do not pierce the cell by holding it temporarily - you would be seriously injured!
The roll support bracket has two 5mm fixing holes 20mm apart, while the load cell has two M4 threaded holes 15mm apart.
I designed a small spacer that fits the 5mm holes and has two 4mm holes.
It is necessary to mark and cut the second 4 mm hole in the original metal bracket.

Here you need a column drill and a vice to fix the bracket firmly. CAUTION: do not pierce by holding the bracket temporarily: you would be seriously injured!

I populated the pcb with only the power supply module and I connected it temporarily to a 24V power supply (the module holds up to 28 volts input).
I then adjusted the trimmer to have an output voltage of 3.35 volts. I decided to desolder the resistive trimmer from the module and replace it with a fixed resistor that in my case is about 19.6 kOhm (parallel of 20 kOhm and 1 Mohm). In this way the voltage cannot be changed by mistake.


I soldered the other components on the printed circuit board. Be careful to install the spacer under the button, it serves to have the correct spacing towards the front.



Before mounting the OLED module it is necessary to configure the I2C interface by installing on the back of the OLED module the resistors R1, R4, R6, R7 = 4k7, R8 = 0 Ohm.



The FS101 pcb does not require any modification (fixing the modules when they do not exactly coincide in position may require tilting the connection pins a little and some adaptation).


I have some spare pcb, if some maker wants one pcb can send me an email (ik1xpv AT gmail.com) with the full destination address and after my email confirmation of availability, send a Paypal donation to my email for expenses incurred (I think > 4 Euro).





SMD viewer MkII

My hobby desk is limited in space nevertheless I added a SMD viewer with a relatively long working distance.

Here the result. In the screen you can see some 0603 components.


I started reading this very nice post http://operationalsmoke.blogspot.it/2014/05/diy-usb-soldering-microscope.html

I found in my cellar an old camera made in URSS (1965?). I made some test of the focusing distance of the lens. I used an empty can of tuna in oil as spacer ( use protective gloves when cutting the tin). I took the lens threaded mounting ring from the old camera and fixed it to a hole in the can.  The can is painted mat black to avoid light reflections.

A black plastic box houses the webcam.


I bought a cheap HD (720p) webcam with manual focus (www.banggood.com).

To modify the webcam remove the webcam board from its housing. Unscrew the lens mounting and cut the black plasic ring. DO NOT TOUCH the red infrared IR filter placed at bottom near the camera sensor. All optics exited the front after cutting the upper black ring. Do not touch the filter glass.  Protect the sensor with paper tape when attaching the camera to the new box. Fix the camera pcb using nylon spacers and screws.



Before attaching the camera card, experiment a little bit with the distance of the lens as the magnification depends on the lens type and the layout of the camera.

I use the camera with a Windows PC 10. The applications I prefer are VirtualDub and Windows native Camera. VirtualDub seems a bit faster.

The positioning of the camera must be very solid to ensure stable images. In my setup I placed 9 neodymium magnets on the back of the plastic box and an iron plate (from an old CD drive cover) is screwed onto the top of my holder. The magnets allow to  move and unplug the camera easily.



To obtain a wide depth of field a low aperture and a strong lighting must be used.

I made a try of a home made lamp with a 10 watt led and a focusing lens taken from an old video camera. A fan cools the led aluminum radiator. Some magnets are used to suspend the lamp. 





Lens (taken from old photocamera) --
webcam 13 €
plastic box 3 €
neodymium magnets 2 €
spacers, screws, paint etc 5 €
Led 10Watt + power supply + fan 7 €
Lens for led (taken from an old videocamera)  --
Total 30 €


 email: ik1xpv AT gmail DOT com

DIY SMD viewer

I broke the display corner of the cellphone. Then I got the idea to use it as viewer for SMD soldering.



How to

The phone I used (Elephone P10) has a 13Mp camera and a HD display. Its macro focusing is good enough for the SMD use.

The stand is made of two pieces of plastic laminate ( a rigid one).

The base is 23 x 17 cm wide. A wood spacer 6 cm high is screwed to the base.


The phone stand is 17.5 x 7 cm , 3.2 cm longer than the phone to screw it to the wood spacer.


 A hole is aligned to the phone camera position, eventually a lens can be added if the cellphone camera has no macro feature.  A lath is added to the rear to align the phone to the camera hole.

 A silicone car dashboard non-slip sticky pad has been cut to hold the phone in place during operation. You can buy it via www.ebay.com or banggood.com.

I use my desktop lamps as light sources while extra leds can be wired under the phone stand to light the target pcb.



In Android I installed the Keep Screen On Free app to keep the display on for longer time.

Good SMD soldering!