Joe Cell Loading Program for the Arduino
I thought it could be a good idea to load the Joe Cell with a lower voltage than 9V and a good vibration, aka the base frequency of the Schumann Resonance, 7.8 Hz. The Arduino UNO, I got one left in my drawer, is easy to program for this purpose.
The program measures the voltage and if it is below 1 volt it starts a loading cycle of 2 minutes with the frequency of 7.8 Hz, else it waits 2 minutes.
You need 2 small resistors for 2 LEDs, one red and one green.
Feel free to copy the code and to experiment with your own Joe Cell.
/**
* Joe Cell seeding control program for the Arduino
* Simulates the Schumann Resonance base frequency of 7.8 Hz
*
* For more information goto
*/
int loadPin = 13;
int redPin = 12; // Let's add some light to the show
int greenPin = 11; // The OK LED, shines green when desired voltage is reached
int cycle = 0;
int maxCycle = 1000; // 1000 * 128 milliseconds is approximatelly equal to 2 minutes
int minutes = 120000;
float waitTime = 64; // 1000 / 7.8 = 128 ... minus 64
float loadTime = 64;
void setup() {
pinMode(loadPin, OUTPUT);
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
//Test the LEDs
digitalWrite(greenPin, HIGH);
delay(1000);
digitalWrite(redPin, HIGH);
delay(1000);
digitalWrite(greenPin, LOW);
delay(1000);
digitalWrite(redPin, LOW);
}
void loop() {
/*
I assume that a healthy cell has at least a voltage of 1.0 Volt,
therefore the Arduino will only put voltage on if the measurement results less than 1.0 Volt.
The loading will be executed with a frequency of 7.8 Hz.
1000 milliseconds are diveded by 7.8, this results in 128 milliseconds cycles, 64 on and 64 off,
a square signal, with a amplitude between 3.3 Volt and 5 Volt depending on the model of the Arduino.
*/
// Show for few milliseconds that one cycle is over
digitalWrite(greenPin, HIGH);
delay(144);
digitalWrite(greenPin, LOW);
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0 / 1023.0);
// Check Voltage and if it is high enough wait 2 minutes
if (voltage > 1.0) {
digitalWrite(greenPin, HIGH);
delay(minutes);
digitalWrite(greenPin, LOW);
} else {
// Voltage is less than 1.0 Volt, then load the cell for 2 minutes
for (cycle = 0; cycle < maxCycle; cycle++) {
digitalWrite(loadPin, HIGH);
digitalWrite(redPin, HIGH);
delay(loadTime);
digitalWrite(loadPin, LOW);
digitalWrite(redPin, LOW);
delay(waitTime);
}
}
}
See also:

