Spotwelder controller info for nerds
The spotwelder controller board explained
The spot welder uses the Arduino Universal AC Power Control board and can therefore be used for many other applications such as vacuum pressure controller and thermocouple temperature controller.
Extra connectors
- Optional temperature sensor input DS18B20
- Optional custom digital output 3.3V
Code open-source on GitHub
There are no secrets, the advantage of this spot welder is that the software is open-source unlike other controllers. Of course the software is already programmed but you can modify it if you want. The software at Github
Because the software is open source, it can be customized. If you have an idea how to improve it, please let me know. Then I will implement it and add to Github. You can read here how to update the software yourself with the Arduino IDE.
To re-program the spot welder you need this:
FTDI Basic Program Downloader Module
For sale on eBay for €2.50 including shipping.
Male header 6 pin.
How to customize weld times
You can customize the weld-times yourself in the Arduino sketch, which you can download at GitHub. The weld times are in this section:
int preweldTimeValues[]={10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000}; MenuItem preweldTimeItem = MenuItem("Preweld, ms", UpDownValueTable(4, preweldTimeValues, arrayLenght(preweldTimeValues))); // valuesPtr, table, arrayLenght int pauseTimeValues[]={10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000}; MenuItem pauseTimeItem = MenuItem("Pause, ms", UpDownValueTable(14, pauseTimeValues, arrayLenght(pauseTimeValues))); int weldTimeValues[]={10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000}; MenuItem weldTimeItem = MenuItem("Weld time, ms", UpDownValueTable(11, weldTimeValues, arrayLenght(weldTimeValues)));
For instance, to add two weld time steps 1200ms and 1500ms, change this line:
int weldTimeValues[]={10, 20, 30, 40, 50, 60, 80, 100, 120, 150, 200, 250, 300, 400, 500, 600, 800, 1000, 1200, 1500};
Note: software version 7.3.2 may have no bootloader, if you want to change the software with the Arduino IDE, you have to burn the bootloader via the ISP connector and for instance an USBasp programmer.