|
|
Arduino Nano R3 |
x 1 |
|
arduino IDEArduino
|
|
|
Soldering Iron Kit |
Simple Arduino Hulda Clark ZAPPER with Timer function
Hulda Clark was a controversial alternative health practitioner who claimed that the use of a device called the "Zapper" could cure a wide range of diseases by eliminating parasites and toxins from the body. The Hulda Clark Zapper is a simple electronic device that generates low-voltage(usually dual polarity 5V square wave with a DC component of 2.5V) at a frequency of 30 kHz. The device typically consists of a 9-volt battery, a pulse generator circuit, and two copper handles or electrodes, wich user holds them in their hands or places them on different parts of the body.

Original Zapper consist 555 timer IC, NPN transistor, and few resistors and capacitors.
The device presented in this video generates a signal identical to that of the original, but is made using a microcontroller.
So, in addition to being simpler to make, it also gives us the opportunity to add a small display and a timer so that we can continuously monitor the process of applying the therapy.
So the device is extremely simple and consists of only a few components:
- Arduino Nano Microcontroller
- LCD Display with ST7920 chip and 128x64 pixel resolution
- Active Buzzer
- Button
- Battery
- and metal electrodes

And now let's see how the device works in real conditions:
When switching on, a message appears to press the button to start the therapy. By pressing the button, a short sound is heard indicating the start.
As I mentioned before, the device also has a timer function. According to the description from the publication "Dr Clark's Life Treatment", the therapy lasts three times for 7 minutes with a pause of 20 minutes between treatments.

This timing data is embedded in the code, whereby there are three phases of therapy.
After the therapy is finished, the display shows the prompt message to press a button to start a new therapy.
The most important thing is to check that the shape of the signal corresponds to that of the original device designed by Hulda Clark. I will use an oscilloscope for this purpose.
And finally, conclusion: I made and analyzed this device only from a technical point of view. It's important to note that there is limited scientific evidence to support the claims made by Hulda Clark regarding the Zapper and its effectiveness in treating diseases. Many of her claims are not based on rigorous scientific research or have been debunked by independent studies. If you are considering using a Zapper or any alternative health device, it's always advisable to consult with a qualified healthcare professional who can provide evidence-based advice and guidance.

The device is installed in a suitable box made of PVC board with a thickness of 3 and 5 mm and covered with self-adhesive colored wallpaper.
//Arduino ZAPPER
#include <Arduino.h>
#include <U8g2lib.h>
//U8G2_ST7565_NHD_C12864_1_4W_SW_SPI u8g2(U8G2_R0, 10, 9, 12, 11, U8X8_PIN_NONE);
//U8G2_SSD1306_128X64_NONAME_2_SW_I2C u8g2 (U8G2_R0, A5, A4);
U8G2_ST7920_128X64_1_SW_SPI u8g2(U8G2_R0, /* clock=*/ 13, /* data=*/ 11, /* CS=*/ 10, /* reset=*/ 8);
byte inPin1 = 5; // digital input sw-1
byte outPin1 = 7; // digital output sw-3
byte time_healing = 7; //time healingenia (30kHz generation)
char time_healing_str[3];
byte time_healing1;
byte time_pause = 20; // break time until next healing in min.
byte time_pause1;
char time_pause_str[3];
byte cycle = 4;
char cycle_str[3];
byte interruptPin = 2;
byte ZapperPin = 4;
char* message;
void setup() {
u8g2.begin();
pinMode(inPin1, INPUT_PULLUP); //setting the pin as a digital input
pinMode(outPin1, OUTPUT); //output to the squeak
pinMode(13, OUTPUT);
digitalWrite (13, LOW); //turn on LCD backlight
pinMode(8, OUTPUT);
digitalWrite (8, LOW); // giving mass to power the LCD
pinMode(ZapperPin, OUTPUT); //declaration of Zapper output port
digitalWrite (ZapperPin, LOW);
Serial.begin(9600);
}
void loop() {
//waiting for Start
cycle = 0;
digitalWrite(inPin1, HIGH);
do {
message = " PRESS START";
DisplayLCD();
} while (digitalRead(inPin1) == HIGH);
//Getting started
cycle = 3; beep(); Work();
beep(); Pause();
cycle = 2; beep(); Work();
beep(); Pause();
cycle = 1; beep(); Work();
beep(); delay(50); beep(); delay(50); beep();
time_healing1 = 0; time_pause1 = 0;
}
void Work() {
time_healing1 = time_healing + 1;
message = "HEALING";
for (byte j = 1; j <= time_healing; j++) {
time_healing1--;
strcpy(time_healing_str, u8x8_u8toa(time_healing1, 2)); // convert healing1 to a string with 2 digits
DisplayLCD();
Generate_30kHz();
}
time_healing1 = 0;
}
void Pause() { // generate pause
time_pause1 = time_pause + 1;
message = "PAUSE";
byte s, m, th;
for (th = 0; th < time_pause; th++) {
time_pause1--;
strcpy(time_pause_str, u8x8_u8toa(time_pause1, 2)); // convert pause to string with 2 digits
DisplayLCD();
for (s = 0; s < 60; s++) {
delay (1000);
}
}
time_pause1 = 0;
}
void Generate_30kHz() {
for (byte z = 1; z < 60; z++ ) {
for (int i = 1; i < 30000; i++) {
for (byte j = 1; j < 67; j++) {
PORTD = B00010000;
}
for (byte j = 1; j<66; j++) {
PORTD = B00000000;
}
}
}
}
void beep() {
digitalWrite(outPin1, HIGH);
delay(100);
digitalWrite(outPin1, LOW);
}
void DisplayLCD(){
strcpy(cycle_str, u8x8_u8toa(cycle, 1)); // convert cycle to string with 1 digit
u8g2.setFont(u8g2_font_6x12_tr);
u8g2.firstPage();
do {
u8g2.drawBox(0, 0, 128, 10); // draw a black background
u8g2.setDrawColor(2); // select the writing mode
u8g2.setFontMode(1); // white on black
u8g2.drawFrame(0,11,128,53);
u8g2.drawRFrame(2,13,124,49,10);
u8g2.drawStr(40, 8, " ZAPPER");
u8g2.setDrawColor(1); //return to writing mode
u8g2.setFontMode(1); //black on white
if (cycle == 0) {u8g2.drawStr(20, 40, message);}
if (cycle > 0) {
//if (time_healing1 > 0 or time_pause1 > 0) {
u8g2.setFont(u8g2_font_6x12_tr);
u8g2.drawStr(15, 50, message);
u8g2.drawStr(95, 50, "min.");
u8g2.setFont(u8g2_font_9x18_tn);
if (time_pause1 > 0 ) { u8g2.drawStr(70, 50, time_pause_str);}
if (time_healing1 > 0 ) {u8g2.drawStr(70, 50, time_healing_str);}
u8g2.drawStr(55, 30, cycle_str);
}
} while ( u8g2.nextPage() );
}
Simple Arduino Hulda Clark ZAPPER with Timer function
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(1)
- Likes(2)
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Mirko Pavleski
-
Arduino 3D Printed self Balancing Cube
Self-balancing devices are electronic devices that use sensors and motors to keep themselves balanc...
-
Build a 5-Day forecast Raspberry Pi Weather Dashboard (Step-by-Step)
Recently in one of my previous videos,I introduced you to the 7 inch Elecrow Pi Terminal and how to...
-
ESP32 Aneroid Barometer using Squareline Studio and LVGL on CrowPanel Round display
A barometer is a scientific instrument used to measure atmospheric pressure. Rising Pressure genera...
-
LINAMP Project – Winamp-Style Audio Front Panel on Raspberry Pi 5
Winamp is one of the most iconic and historically significant digital media players ever created. I...
-
Retro Style radio with CrowPanel 2.1inch round Display (TEA5767)
Some time ago I presented you a clock project with CrowPanel 2.1inch-HMI ESP32 Rotary Display 480*4...
-
Pi-Pico RX - SDR Radio with New Firmware and Features
A few months ago I presented you a wonderful SDR radio project by DawsonJon 101 Things. In short, i...
-
How to make simple Variable HIGH VOLTAGE Power Supply
High Voltage Power Supply is usually understood as a device that is capable of generating a voltage...
-
DIY 5-Day Rainfall Forecast Device - ESP32 E-Paper Project
In several of my previous projects I have presented ways to make weather stations, but this time I ...
-
Build simple Retro Style VFO (Variable frequency oscillator) with Crowoanel 1.28 inch Round Display
Today I received a shipment with a Small round LCD display from Elecrow. The device is packed in tw...
-
Human vs Robot – Rock Paper Scissors with MyCobot 280 M5Stack
Today I received a package containing the few Elephant Robotics products. The shipment is well pack...
-
How to Build a Simple Audio Spectrum Analyzer with Adjustable Settings
An audio spectrum analyzer is an electronic device or software tool that measures and visually disp...
-
How to Make a Digital Clock on a Vintage B&W TV using Arduino
These days I accidentally came across this small retro Black and White TV with a built-in Radio, so ...
-
Build a $10 Function Generator with Frequency Meter for Your Lab
A function generator is a piece of electronic test equipment used to generate various types of elec...
-
From Unboxing to Coding - Radar Clock on Elecrow’s 2.1 HMI Display
Today I received a shipment with a large round LCD display from Elecrow. The device is packed in two...
-
Making a Retro Analog NTP Clock with Unihiker K10 - Arduino IDE Tutorial
Some time ago I presented you a way to use standard Arduino libraries on the Unihiker k10 developme...
-
Build a Cheap & Easy HF Preselector - Antenna Tuner
HF antenna preselector is an electronic device connected between an HF radio antenna, and a radio r...
-
DIY Static Charge Monitor - Electrostatic Field Detector (Arduino & TL071)
A Static Charge Monitor also known as a Static Field Meter or Electrostatic Voltmeter is a device u...
-
XHDATA D-219 Radio Short Review with complete disassembly
Some time ago I received an offer from XHDATA to be one of the first test users of their new radio m...
-
A Compact Charging Breakout Board For Waveshare ESP32-C3
506 3 4 -
AI-driven LoRa & LLM-enabled Kiosk & Food Delivery System
503 2 0 -
-
-
-
ESP32-C3 BLE Keyboard - Battery Powered with USB-C Charging
698 0 1 -
-
mammoth-3D SLM Voron Toolhead – Manual Drill & Tap Edition
681 0 1 -
-
AEL-2011 Power Supply Module
1357 0 2 -
AEL-2011 50W Power Amplifier
1239 0 2







