Exploring Rife, Microcurrent generators, battery capacity testing,
bicycle disc brakes, colloidal silver generators, electronic game caller, and a backpack  highbanker (gold sluice) with pump.
Rife research is full of quackery, and the sellers of Rife "machines" fail to declare that Rife said that the wrong frequencies would quicken the cancer cell's growth, not kill them. All I wish to do is find if some common pathogens can be killed by a frequency, as opposed to a heating, response. The genius of Rife's microscope cannot be doubted, as his early pictures of a virus pre-dated all electron microscopes.
Project: Investigate Rife's methods of killing pathogens in a laboratory situation
Status:  27MHz Transmitter, matcher, antennas built. Warm stage microscope, slide edge illuminators and camera finally setup.
The picture tells the story. Only try this on a solid old steel frame, and pay careful attention to providing safety lock tabs to prevent the brake torque reaction swinging the axle from the frame, especially on the front. Believe me, it will! Note the tab lock in the photos. Note, you will need to buy new, dished wheels to get the required frame clearance. Because this is a classic 1980's Miyata Valley Runner frame, the front used a clamp to avoid welding destroying its value. Rear is bolted at lower end, torque block transfers torque to frame at top. Great stopping for a 35lb classic monster!
Project: Update a 1980's bicycle frame to disc brakes.
Status. Complete, and a success!
Robert Becker in "The Body Electric" used microcurrents to speed healing of broken limbs. Experiments have also been done in using microcurrents to infuse silver ions into wounds to enhance healing. This project was memorable because the parts were easily obtained, and the circuit selected worked perfectly  as per the app. notes first up! Worksheet 59 in RF4.xlsm does the calculations for you
Project: Constant microcurrent generator
Status. Complete
Right: Circuit
Lower: Lab Journal shows I used a 0.68v diode drop as a V ref, would be replaced by a precision ref. in use.
Lower left: As built into a utility case
Ported to VBA from DOS to use the convenience of Excel. It uses the LPT1 port to control four relays, which switch combinations of resistors to get the required discharge rate. Port access is via  io.dll. The universal battery mount uses a pair of magnifying glass mounts, and spring loaded PCB probes.
Project: Build a universal battery capacity tester.
Status: Complete
Project folder contains three folders:-
I.
Original DOS  based  project, based on the  box above with relays switching discharge resistors to suit  discharge rate wanted, pack voltage, and battery type. Consider a legacy project, but the code  can be adapted for an Arduino based stand-alone

2. 'BATTERY_CAPACITY_MONITOR_V2' An
Arduino battery capacity monitor for 8.2v packs, using TFT. Easily adapted for any desired  pack voltage and discharge resistor

3. 'BATTERY_CAPACITY_MONITOR_V3' 
An Arduino battery capacity monitor as above,  for 8.2v packs, using 2x16  LCD


DOS project, Discharger.xls, WILL NOT RUN without io.dll installed FIRST, and discharger box attached. The file is included so you can see how to do it in VBA, and build the box correctly. Original DOS project for this setup is lower down on this page.
Upper Left: Transmitter, Line matcher, modulator.
Upper right: Antennas
Lower Left: Heated stage.
Lower right: Camera adapted to old Zeiss, and adaptation of magnifying glass holders for laser, UV, and colored LED's
Project: Build a decent colloidal silver generator
Status:  Completed.
This project now has been updated, now with controlled per ppm monitor and temperature probe for consistency. Over on Arduino page

A constant current 20 hz bipolar signal to the silver electrodes, and a constant stirring by an aquarium air pump ensures no dirty build up on electrodes. Strength is measured directly in ppm using a HM Digital COM100 EC/TDS/TEMP meter, and output is filtered through lab quality papers. Please don't get carried away by the commercial hype and pure Quackery. Colloidal silver is useful, but NOT for, as commonly stated, 600 diseases.

Colloidal silver generator.
Electrodes come through a stainless steel Fowlers Vacola lid, as does the air. Jar is always filled to a constant depth, and a little added  from the last batch avoids a long delay before the current flows adequately.
Colloidal silver generator using a high voltage discharge.
This model uses high voltage pulses from an electric fence unit to produce a
mix of coloidal and micro silver particles, as per early methods. Not a very controllable process! Two pulses seems to change the color of the solution, but strength will depend on electrode area, flash voltage, internal circuit resistance and conductivity of solution.
Project: Poor man's centrifuge
Status: Complete
Home built centrifuge.
Needed for the Rife project. Sits atop  of a small high speed blender. 500 to 7500 rpm gives 30-1482 RCF
Project: "Merlin" ongoing educational research into Computer Grading of Children's Text, and Improved Methods for Basic Number Testing, and a critical look at the MetaMetrix "Lexile".
Status: Ongoing
The Merlin project won a Victorian (Australia) Curriculum Excellence Award in 2006. The program was to automate the reading and scoring (to the Victorian "VELS" system of measuring progress)  of a child's written narrative. It also provided progress reports on the nature of a child's vocabulary development in terms of the broadness of vocabulary, and measures its expansion. In the end, because of the undisciplined nature of junior school student's presentations, it was found a small amount of pre-processing was necessary. Despite this overhead, averaging three minutes per submission, very useful tracking and reporting was achieved. This project went beyond vocabulary counts, and included a factor for a broad range of phrase frames. Working paper explains the basic nature and theoretical underpinnings of each. The analysis, and testing software, is not public.
Computer Grading of Children's Text, the project's
working paper.
Example report produces by Merlin, the grading program.
(Small extract on right.)
Basic number testing considers time taken as well as
correctness
Project: Personal Audiogram
Status: Finished
The workbook, Rf4.xls contains a worksheet that explains how, and graphs your results. You need headphones, 600 ohm attenuator, and a sine generator. Working out a reasonable baseline without a calibrated source is a guess, but even with an arbitary ase, you can track any degeneration, and compare both ears.
Again, I am not a doctor. Seek professional help if your hearing is defective!
Project:  Testing 18650 Lithium-ion cells from Ebay
Status: Complete
Material on the internet alludes to the widespread repackaging of secondhand cells in China, after salvage from computer battery packs.

As I use dozens of these cells in torches and projects, I used the battery test box I had built to test over forty of these cells. Tested at 0.5C discharge rate, 30 secs on, 20 secs off.
Sadly, all except the fully branded quality cells that had cost from A$9-15 each, and some Trustfire 2400's,  all failed dismally.

Ultrafire Grey "3200"           Achieved milliamp hours      743, 692
Ultrafire Blue "2400"                                                    1041, 730
Panasonic NCR 18650A "3000"                                    2951
Ultrafire Red/Silver "4000"                                            891, 1294, 801, 676, 780
Trustfire Black/Red "2400"                                           2005, 2402, 2270, 2343, 2396, 2558, 1093
Ultrafire Black "3600"                                                  1076, 1027, 1351
Ultrafire Black/Red "4200"                                           1800
Sanyo Pink "1500" (UR18650W2 High disch. Rate cells, 15A)  1526, 1530

CONCLUSION. If you have mission critical applications, buy the fully branded cells from major manufacturers.
Upper photographs show numbered cells, with achieved capacities written on following my testing.
Lower photographs show that the branded, Panasonic cell at 449g logically must have more "active material" than the Ultrafire Grey weighing only 378g, which was well borne out by the tests
CURRENT PROJECTS
LEGACY DOS PROGRAM Disch3.c was the source to run the discharger box used in above project to graph discharge curve of cells. It gave a comprehensive report on battery capacity. You will need to download SMPLUS DOS menu library, and possibly a dll to allow LPT port access. The program also used a resident program called SCREEN THIEF to capture the screen to PCX file. Used a LPT (printer port)
Printer Port I/O routines used in above Disch3.c. These were written in "explanatory code", and most can be reduced to single line functions. At least you will understand the thinking!
Working LABCARD PCL818 functions are within this source.
Octopus circuit as appearing on "http://www.smcelectronics.com/CIRCUITS/OCTOPUS.PDF". Actually this circuit also appeared in Marcus Electronic Circuits, 1982 p 1079, with attributions to a previous publicationin QST magazine in 1975. Plenty of variations abound.
THIS PROJECT was COMPLETELY REDESIGNED , Dec. 2016, to be handheld, battery powered,  and self contained. See my Arduino page for the project "GOODBYE OCTOPUS, HELLO ARDUPUS"  Time to forget oscilloscopes, power cords and their wires!

What appears below BECOMES 'OLD HAT',  with the introduction of my standalone  '
ARDUPUS', but just as useful as ever
Of all tools in a workshop involved in electronics repair is the Octopus. Those not familiar should seek the manual for the Huntron commercial unit. It is invaluable for in situ diagnosis of faulty components, and especially for comparing traces between a known and faulty board, whilst unpowered. Wise to read a manual from the industry leading Huntron Tracker, which is really an excellent textbook on this approach to testring, and take your understanding to a simpler model.
Project: Octopus Tester
Not really original, but surely this has to be the winning entry! The advt. failed to mention that you need to freeze your cat first.
Project: A contribution to the "One Hundred and One uses for a Used Hacksaw Frame" competition
Status. Complete
Project: A portable gold sluice, and motor. Known as a highbanker elsewhere, the aim was to fit the entire kit into a portable frame.  Not quite achieved, as sluice has yet to be mounted to the frame, but all very easy to get into difficult places. This  kit is entirely explained by pictures. Pump is a quality, Subaru, 2.5hp 4-stroke. Frame cost less than $20, and the carry straps were taken from an old backpack whose zips had failed.
Thankfully, the highbanker has no rotating parts.
Backpack carry frame for the sluice pump is made from plastic conduit.
Nothing innovative about this sluice. Simple and cheap!
Pump and all piping, with a spare bottle of fuel, normally sitting in the tin can, carries comfortably.
Backpack highbanker on its test outing.
Disc brake upgrade to Miyata Valley Runner, front.
Disc brake upgrade to Miyata Valley Runner, rear.
Battery testing is made easy with this Universal Battery Mount
Constant Microcurrent Generator for infusing wounds with silver ions.
DIY heated stage for my Zeiss microscope..
Mounting a camera to an early Zeiss microscope entailed making special adapters.
Center is the antenna matching unit, essential for getting maximum power transfer fron the transmitter
Antennas for 27 mHz Rife experiments.
An attenuator salvaged from old piece of test equipment is used to produce audiogram.
Screen shot from battery test discharge box.
Octopus tester as built varies slightly from the above. My transformer is 14v AC, and the 200 ohm resistor shown in the circuit has been replaced by switched 1K5, 470R, 220R,100R, 39R, and 0R. The 100 ohm shunt shown is a 5w carbon type (we don't want inductive here), and the 39R and 100R in the switched chain are 5w. It is mostly used with the 1K5 resistor switched in.

Cat carrier. A new life for an old hacksaw frame.
The use of MetaMetrix "Lexiles" in matching readers to books has limitations clearly stated in MetaMetrix materials, but teachers should read this deposition carefully, understand the Lexile (TM)
as a masterful marketing exercise, and one that needs great caution in its classroom application. Passages in this essay show clearly that even a
nonsense rearrangement of text can have the same Lexile as the text before it was scrambled.
Calculating a useful "Risk Factor" from a student's "slope of progress" in reading and math, as a handy point of focus tool for teachers
UPDATES:-  31 May 2019  Arduino based radio controlled game caller using HC-12 transceiver modules
                          17 Dec 2019  KYTO2800A 5.3 Khz Heart Rate Receiver projects

                           11 Feb 2021 Krikotronic project removed. Abandoned as impractical.
                            9 Jun 2023  Update to Battery capacity project
                            10 Jun 2023 
Arduino projects to  create sounds that arouse termite responses
  An electronic aid for fox calling (and possibly useful for deer and wombat)
Emulates systems available commercially, but a good learning project to introduce the HC-12 serial transceiver in a practical application. The HC-12 allows reliable control of the FOX-BOX out beyond 100m
   A small audio amplifier, speaker and computer controlled MP3 / WAV player is radio controlled from up to 100m.This is placed in clear field of view, a suitable shooting distance from the hide. Currently coded for ten sounds, easily increased
To avoid unwanted scents, the unit may be hooked high in a tree per ‘drive by’
 
At the transmitter end, in the ‘Hide’ a small command box is used to send commands via radio link as to which sound to play, volume wanted, number of repeats, and switching of  a pair of LED ‘eyes’.
Project: 'FOX BOX' Remotely controlled fox caller with ten selectable calls
Controller, keys select and send detail of sound wanted, duration to play, and volume.
HC-12 mounts under prototype shield, with pigtail antenna just seen.This antenna us not suitable for field use
Fox-Box, MP3 player is to be mounted in a suitable enclosure for location in hunter's field of view.
Project: A review of,  and Arduino projects for,  KYTO KYTO2800A 5.3 KHz Heart Rate Receiver

  KYTO FITNESS TECHNOLOGY  offers a very affordable and easy to use 5.3KHz heart rate receiver for experimenters.
When the Sparkfun RMCM01 5.3 KHz heart rate receiver was discontinued, those experimenting with wireless heart rate monitors were left only with the option of a DIY receiver, with a good deal of difficulty in producing a suitable antenna / coil.

  Fortunately, KYTO FITNESS TECHNOLOGY (https://kytofitness.com/) stepped up and the RMCM01 equivalent is available in two forms.
The bare receiver, KYTO2800A, at US $7.90 or the, KYTO2800D which is the same but mounted in small case with lead, at US $9.50. Matching chest band transmitter, KYTO2800B is US $14.50. (Dec. 2019)   Considering the complaints about the cost of earlier Sparkfun modules, these costs could be considered very reasonable.
Equivilent Bluetooth modules and straps are also available for those Arduino people) who are brave enough.
                                                   (All still available 2023, and very reasonably priced!. ed)
Receivers output a single pulse, 20 mS wide for each heartbeat, easy for an Arduino to process.
(For those only interested in fitness monitoring,  there is very affordable range of heart and fitness monitors offered by KYTO, but this receiver / strap combination is a good start for experiments in PTT blood pressute monitoring)

  I purchased a KYTO2800A and KYTO2800B strap, from KYTO's very user friendly website, and quickly put together some simple code.
The module gives reliable reception  to 1m with a fresh battery, and easily become the foundation of a  project to record "two minute recovery rate", and "second minute recovery rate" which are 'industry standard'.  I also added the ability to include a 'return to nominated baseline' figure  as a basis for benchmarking personal fitness improvement.

  A not unexpected bonus was that the KYTO2800B strap also brought my old Polar(TM) monitor watch to life. This had been shelved because the Polar T31 transmit strap battery went flat (the battery cannot be changed without 'butchering' the strap) Unlike the Polar T31, the CR2032 in the KYTO2800 is quickly changed. I find the strap is pliable and comfortable.

THREE PROGRAMS are included in download zip "PULSE_PUBLIC".
  1.   A simple recording program using the KYTO2800A  , using the Arduino Data Logging Shield V1.0 mounted on an UNO with an 1.3" OLED display. This "RECORDING CHEST STRAP PULSE MONITOR"  averages continuously over past 20 beats, displays heart rate every 2 sec, and saves rate every 'n' sec as you choose in a CSV file for analysis in Excel.
  You will need KYTO2800 (A or D model) 5.3 kc receiver, KYTO2800B transmit strap (Same as Polar T31)  availablee from https://kytofitness.com/
  Remember, KYTO2800A is 3.3 volt!  I developed these projects on my Sainsmart 3.3/5v UNO switched to 5v (https://www.sainsmart.com/products/uno-r3-arduino-compatible), but run the KYTO2800A on 3.3v, which puts its 'EN' pin at risk of brief exposure to 5v, as pins may go randomly high during bootup. But, no problems so far!! Best use a voltage divider! It may be better to simply hard wire 'EN' to ground.

2.   Second program on UNO platform is "TWO MINUTE RECOVERY" which delivers 'two minute recovery', 'second minute recovery', and a  'return to baseline time'
  Upper and lower limits for 'return to baseline' are set using trimpots as they are only normally set once. The upper value is also used as the start reference for the the two minute countdown, the point where you will discontinue exercise, or 'soft pedal' until heart rate has returned to chosen baseline. The two minute, and second minute recovery values are
calculated as the heart slows. Explanation of significance of second minute figure at http://cardiology.org/recentpapers/AJCHRR.pdf

Left:- Bare KYTO2800A, unit is also available in a mount box.






Right:- '
TWO MINUTE RECOVERY' project is UNO based
3.   Third program moves to an Arduino Due platform.  "PULSE and POINCARE" has BPM and Poincare display of  IBI (Inter Beat Interval). Uses KYTO 3.5 KHz receiver, providing 20mS pulse per heartbeat
  Delivers '
two minute recovery', 'second minute recovery', and a 'return to baseline time.' Also records a csv data set with a timestamp for every beat, suitable for external analysis.
  Upper and lower limits for 'return to baseline' are set using trimpots as they are only normally set once. The upper value is  also used to start 'two minute recovery' countdown. and you will discontinue exercise, or 'soft pedal' until heart rate has returned to chosen baseline. The two minute, and second minute recovery values are calculated as the heart slows from the chosen value.
Left:- 'PULSE and POINCARE' is based on KYTO2800A 5.3 Khz receiver. Left dot indicates completion of 'Two Minute Recovery', and right dot indicates 'Return to chosen baseline' completed. BPM scrolls from right. This plot is generated by the included 'EXERCISE EMULATOR' which is run on a separate UNO
The Holy Grail of inventors is to invent the better mousetrap. Wardie's workshop succeeded where others failed! Presented without comment! No plans supplied, these pictures should be enough.
(Concept prototype only, NOT a firearm! Does not shoot!)
Project: Build a better mousetrap.
Status. Complete
The Better Mousetrap! For black powder enthusiasts only.
The Better Mousetrap even has a safety catch.
"EXERCISE EMULATOR" included in the package is a program I placed on UNO that produces 20 ms pulses rising to about 128 BPM, then slowing to 40 BPM.
Only use is for developmental purposes.  Remember to reduce the 5v out to 3.3v if feeding the DUE!
peter@excelworks.info
Michael Yam's wonderful SMPLUS DOS menu system. Still useful, especially now DOS
is returning!
'Arduino 'Colloidal' Silver TDS monitor and control
More detail on 'Arduino' page. Controlled so as to give  repeatable outcomes.
Project: Arduino projects to  build ECG EMULATOR ( source signal)
Looking for some robust methods for acoustic detection of active termites, I was developing some ideas to put into practice ideas I found in
"TERMITES DETECTION VIA SPECTRAL KURTOSIS AND WAVELET DE-NOISING OF ACOUSTIC EMISSION SIGNALS"
   by JUAN-JOSÉ G. DE LA ROSA, and others.

As a way of
building on, and enhancing, their work I postulated there may be a way of "stirring them up" either by pizeo or mechanical vibratory means to either elicit an enhanced, or even unique, variation to the normal tapping response, which would improve detection opportunity.

So, instead of "
probe and analyze", I thought, "Probe, Pause, Stimulate (annoy!) in a particular way,  and analyze"
Next thought was, "How to annoy termites in a way that is controlled and repeatable!"  What sound or combination would do it better than tapping the tree or beam?
The need for an oscillator was obvious, but before starting I needed the ability to sequence, repeat, pulse, modulate, and vary frequencies in a totally controlled and repeatable way.

Continuing with Arduino Teensy 3.5 as a great development platform with speed and floating point power, combined with the wonderful "Mozzi" library for sound synthesis, I thought to develop on the  "BEAD Synthesizer" a project of Bill Roy https://github.com/billroy/beadsynth
His description is "This is a simple sound-effect synthesizer based on the excellent Mozzi. It generates sounds by sweeping from a beginning to an end frequency and uses an EAD envelope with attack and decay parameters to shape the gain. You can store 32 parameter sets in eeprom in slots 0-31, for later quick recall and use."

Bill's design enables setting and storing EAD envelope parameters, which can be called up and in user designed sequences
His envelopes are determined by 'begin_freq', 'end_freq', 'attack', 'decay', 'quiet'.

Optionally, I explored the "attack+decay+sustain+release"  envelopes used by "Arduino based Audio Synthesizer with MIDI Interface" by Cristhian Novais. Whilst MIDI is not part of my need, his code helped me navigate the vaguries of Mozzi.
.
The accompanying Arduino programs explore sound synthesis, as I go on a quest to find the right form of annoying sound to provoke an enhanced response to assist detection. Each of these programs has a slightly different approach.
INSECT_SYNTHESIZER_V3
INSECT_SYNTHESIZER_V3A
INSECT_SYNTHESIZER_V3B
INSECT_SYNTHESIZER_V4A
INSECT_SYNTHESIZER_V4B
INSECT_SYNTHESIZER_V5
Next stage of this program is to build the sound detector to analyse the response to 'stirring them up'
      Platform is Arduino DUE. Generates ECG signal  for use in other program, no graphical display of plot.
Purpose was to emulate ECG signal whilst developing analysis software to suit output from
AD8232 ECG module
Uses Adafruit ST7735  128x160 display for information.
A very basic emulator utilising, as core, the
lookup table reproducing a sample heartbeat produced by James Lynch
James' digitisation of a sample ECG heartbeat is the key to producing an emulated output, and I acknowledge his effort and care in producing this ECG  lookup table.
See James' complete project and notes, and understand the building of his lookup table at https://www.instructables.com/ECG-Simulator/

I have placed his lookup table in array  'heartbeat[543]' which represents a sample, digitised heartbeat,  sampled each millisecond.
A 60 beat/min ECG requires this waveform of 543 samples, plus 457 baseline samples using the baseline value in heartbeat[0] which represents  the inter beat interval.
You can select to compile for either PWM output, on-board DAC output (disappointing), external DAC output per MCP4725 DAC

Compile modes
Mode 1, for DAC mode
Mode, 2,  for PWM out
Mode 3,  for external MCP4725 on SDA/SCL (recommended)
Mode 4, is debug use for  ECG using MCP4275, raw unchanged data is repeated forever, program never enters main loop. Reasonable result with 4K7 load, w/large noise pulses
Mode 5  is debug use for  ECG using PWM, raw unchanged data is repeated forever, program never enters main loop. No recognisable  waveform w/4K7 load, 1K0/0.01 filter
Mode 6  is is debug use for  ECG using DAC0, raw unchanged data is repeated forever, program never enters main loop. Reasonable result with 4K7 load

Other features:- Software allows some level shift of entire waveform, emulating  DC offset introduced by electrodes. 
             Software allows change of BPM
            Software allows adding of random noise to waveform for testing effectiveness of filters
            Software allows for adding random inter beat variation
            Software allows changes to output level
Project: Arduino projects to  build SOUNDS to STIMULATE TERMITES
Project: Arduino project to  use  TCS3472 COLOR DETECTOR to identify, and NAME COLORS
Program to use TCS3472 identify a color sample, give its RGB, and a color name from a table of standard definitions
This program was had original purpose to assist a vision deficient auto electrician to verify ID of wires in use, esp in the big Stereo loom.
Project failed to do this because of many looms with wires having dual color codes, as well as symbol strings.
The sensor works well on non reflective color cards, but fails accuracy with highly reflective surfaces. Will probably be most useful in industry in applications such as to determine whether cookies coming from bakery oven are 'browned' correctly, or sorting eggs for uniform color.
Will also be of interest to those building beehive monitors, to investigate use as  a European Wasp detector

This code will search from a lookup list of 140 colors as  found at https://www.99colors.net/dot-net-colors, or a 16 colors primary set, or both.
For wire identification, a simple location jig with wire location slot is needed, shielding sensor from external influences.
BEST USE if using program to determine  wiring colors, is to find RGB values, and MODIFY databases, i.e., calibrate!
You may need to play with gain settings to get reliable results (This is a very sensitive sensor, X1 gain seems fine)
Project: Arduino PlatformIO project, RTC CHECKER / DRIFT REPORTER
Program to determine RTC drift
If embedding a RTC in your project that works away from a reset opportunity (wifi, etc) you need to know you have a good one.
Even the best will need 'calling in' and resetting once a year, depending on accuracy required.
.
Project: Arduino PlatformIO project, produce CURVE FIT equation
I explore curve fits. This program produces various curves, then the fit algorithm uses the data to produce a fit formula, which hopefully is the same as the originating formula.
Could be handy in self calibrating a sensor.
Project: Arduino  project, display PISTON LIFT on SU carby using VL6180.
VL6180 time of flight sensoris built into a mount replacing oil damper, and displays piston lift as engine is run up. Perfect for tuners needing balanced pairs or triples
Screw out and remove damper.
Build box with threaded adapter. VL6180 'beam reflects off top of piston unit.
If your top edge is not flat, flatten it.
Mount box contains VL6180

Built to monitor a home system with a solar water heater, electric boost storage tank, and aux stove water heating jacket
The folder includes several builds,
each displaying in slightly different way Build V3 is yhe one currently used to monitor our home system, has run for four years without problem
V2  Gives a daily plot of in/out temperatures, or temperature differential, from DS18B20 temperature sensors.
    Graphs panel input temp as a bar in blue, with temperature increase  showing as red bar added to top of blue bar.
V3  adds single pixel plot for a sensor 3,  bar plot for sensor 1 & 2  .) Currently displaying full 24 hours  with 2  pixels wide vertical bars per 6 min. Uses 480 hor pixels * 240 high (you can easily adapt code for other use, eg power useage) 
V4  plots all in large 2 pix radius dots, adds provision for fourth sensor
V5A increases screen plot area, dispenses with header and footer, keeps in and output bar plot, adds ability to "dot plot" up to 4 extra sensors
changes to RTC
App these can scroll back display for prev 7 days. (records 8 days, stores previous 7, allows a "this day a week ago" comparison
Project: Arduino  project, SOLAR HOT WATER MONITOR

Fun project for lantern to be located in a historic restoration of a country outhouse that housed a "Dunny can" receptacle
Such toilets were serviced weekly by the 'nightman' who exchanged the full can with an empty.
Operation emulates lighting from occasional toilet use during first few night hours, then sleeps till dawn.
     Wakes at dawn, then straight back to sleep, set  to wake at nightfall
This version avoids use of RTC. Wakes at dark, burns random times for random minutes, for first few night hours.
The fun in this software was to get a realistic flickering effect, and all that see it confirm the effect is good.

As this was built for a third party, USE OF RTC WAS PROBLEMATICAL (Would need occasional resets), LDR with timers was a better choice.
(NONE of my E-bay RTC purchases have been good time-keepers, and would need regular wifi updates, a problem with a third party gift)
Optimised for battery use, but long term will need a fixed PSU or solar system.
Bring 'OverRide' pin low, and candle burns continuously for three hours, instead of the normal random burns.

Developed on:- ESP32 DEVKIT1 board       LDR module:- CATALEX LDR ANALOG OUTPUT  module, 
                                     https://www.arduitronics.com/product/215/photosensitive-sensor-module-ldr-for-arduino-catalex-2 
             Without module circuitry, sensor resistance @ 10lux min 8k, max 20k. At  0 lux, 1M.
              Circuit for CATALEX LDR module shows LDR fed via 1k from High Side, then Voltage-follower (buffer)output, buffer is INVERTING
              Module has no adjustment, 12 bit ADC value drops  to <150 on 'dark' on my example.
Project: Arduino  project, FLICKERING CANDLE LANTERN
BLUE is panel water input
RED is panel water output
PURPLE is Storage tank

Flickering flame / candle is controlled by LDR, sleeps thru day and late night hours is built into a small tin and diffuser holds four LEDs. Illustrated right is simplest Nano build, download below

Fun project for lantern to be located in a historic restoration of a country outhouse that housed a "Dunny can" receptacle
Such toilets were serviced weekly by the 'nightman' who exchanged the full can with an empty.
Operation emulates lighting from occasional toilet use during first few night hours, then sleeps till dawn.
     Wakes at dawn, then straight back to sleep, set  to wake at nightfall
This version avoids use of RTC. Wakes at dark, burns random times for random minutes, for first few night hours.
The fun in this software was to get a realistic flickering effect, and all that see it confirm the effect is good.

As this was built for a third party, USE OF RTC WAS PROBLEMATICAL (Would need occasional resets), LDR with timers was a better choice.
(NONE of my E-bay RTC purchases have been good time-keepers, and would need regular wifi updates, a problem with a third party gift)
Optimised for battery use, but long term will need a fixed PSU or solar system.
Bring 'OverRide' pin low, and candle burns continuously for three hours, instead of the normal random burns.

Developed on:- ESP32 DEVKIT1 board       LDR module:- CATALEX LDR ANALOG OUTPUT  module, 
                                     https://www.arduitronics.com/product/215/photosensitive-sensor-module-ldr-for-arduino-catalex-2 
             Without module circuitry, sensor resistance @ 10lux min 8k, max 20k. At  0 lux, 1M.
              Circuit for CATALEX LDR module shows LDR fed via 1k from High Side, then Voltage-follower (buffer)output, buffer is INVERTING
              Module has no adjustment, 12 bit ADC value drops  to <150 on 'dark' on my example.
Project: Arduino  project, FLICKERING CANDLE LANTERN
Project: Arduino  project, WOMBAT BURROW ACTIVITY REPORTER
This project was to alert farmers when the pest wombat was active at a burrow. It sends messages to the home via a 433 MHz wireless link. The message will flag a 'coming' or 'going' based on PIR sensor.
Since  building this project, Victoria, Australia has determined the Wombat a protected native species. However, you can adapt this for remote security purposes wherer emoteness precludes wifi or such.
Project: Arduino  project, Get BPM from  SunDING  Bluetooth heart monitor strap
This sketch gets Heart Rate from an BLE HRM monitor and display it on LCD.
Currently using  NODEMCU-32S with 1.8" 128x160 display.
'SunDING'  Bluetooth chest strap is used. Provides bpm but no battery level service. Code is in place to get battery level,, but commented out, pending trial with Polar bluetoothchest strap
'SOLAR HOT WATER MONITOR', is identical to V3 included in Solar Hot Water monitor presented previously, but combines with a 'piggyback' ESP32 to regularly update the RTC.
The RTC JOCKEY can also be used as a standalone RTC regularly updated per wifi
         Now adjusts for Timezone and DST. This project can be the template for any monitoring need where insurance or legal purposes require an accurate timestamp

Project: Arduino  project, HOT WATER MONITOR with moderated RTC
Another version of the SOLAR  HOT WATER MONITOR providing accurate time stamps
Project: Arduino  project,     TM7711 PRESSURE GAUGE RUNNING DISPLAY
"TM7711 PRESSURE GAUGE_RUNNING_DISPLAY_480x320_BODMER_DUE"  Arduino DUE version.
Running display on DUE uses BODMER  TFT library  adds new points screen right, moves display leftwards 
The heart of the
TM7711  module is a COPY of sensor MPS20N0040D-S (slightly different pin config)
Test MPXV7002, send to Arduino plotter
Project: Arduino  project,     MPXV7002 Pressure sensor test code

ECG_BLUETOOTH_PLATFORMIO_DISPLAY_8.PDE  Sends stored sample waveform to Processing,
       requires accompanying
  ESP32_DUMMY_THREE_BYTE_EKG_TO_PROCESSING.ino
Project: Arduino  project,     ECG to PROCESSING 4
at 500 samples/sec
at 250 samples/sec
Accepts data of form:
int val = analogRead(ANALOG_IN);                                             
  Serial.write( 0xff );                                                        
  Serial.write( (val >> 8) & 0xff );                                           
  Serial.write( val & 0xff );

ECG_BLUETOOTH_PLATFORMIO_DISPLAY_8.PDE  Sends stored sample waveform to Processing,

       requires accompanying ESP32_DUMMY_COMMA_DELIM_EKG_TO_PROCESSING_SUPERBENDER.ino

Project: Arduino  project,     Arduino DUAL CHANNEL OSCILLOSCOPE to PROCESSING 4
Accepts data of form: Serial.print('H'); //Unique header to identify start of message
  Serial.print(",");
  Serial.print(val1,DEC);
  Serial.print(",");
  Serial.print(val2,DEC);
  Serial.print(",");  / Note that a comma is sent after the last field
  Serial.println();  // send a cr/lf

'NANO 33 AUDIO TO PROCESSING.ino' Sends audio to all the following Processing 4 examples
Project: Arduino  project,     NANO 33 Audio to processingto PROCESSING 4
PROCESSING_AUDIO_FFT_V2  Adapted by  P.Ward  8/10/21
Accepts a serial stream from Arduino Nano 33 of 1024 samples, taken at 16000 sps. Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V3  Adapted by  P.Ward  8/10/21
Accepts a serial stream from Arduino Nano 33 of 1024 samples, taken at 16000 sps.
Log band display
Prints ‘Log/Lin  Average Center Frequency’ at cursor


Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V4  Adapted by  P.Ward  8/10/21
Accepts a serial stream from Arduino Nano 33 of 1024 samples, taken at 16000 sps.
Linear band display
Prints ‘Log/Lin r Average Center Frequency’ at cursor.
Allows selection  of window

Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V6  Adapted by  P.Ward  8/10/21
V5 was EXAMPLE from https://www.ee.columbia.edu/~dpwe/resources/Processing/LiveSpectrogram.pde
  V6 is a LATER EXAMPLE https://www.ee.columbia.edu/~dpwe/resources/Processing/LiveSpectrum.pde
Spectrum plus bin overlay. Gain control by keypad

Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V9  Adapted by  P.Ward  8/10/21
Example adapted from https://www.ee.columbia.edu/~dpwe/e4896/code/Oscope_Spectrum.pde
Gain control and timebase by keypad. Uses a simple ‘trigger’.
Changed gain control from original. Now ‘Oscope’ and spectrum gain is separately variable.

Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V10 Adapted by  P.Ward  8/10/21
Example adapted from https://www.ee.columbia.edu/~dpwe/resources/Processing/LiveSpectrogram_window.pde
Gain control and timebase by keypad.
This version includes variable window length.  “Drag the mouse left and right to change the
* length of the Hanning window applied before the FFT is taken.”.

Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V12 Adapted by  P.Ward  8/10/21
Based on https://gist.github.com/jaywon/72705b0cc1832f6878bb
Includes smoothing, and using ‘rectMode(CORNERS);’


Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
PROCESSING_AUDIO_FFT_V13 Adapted by  P.Ward  8/10/21
Adapted from  Ameduino by  P.Ward  8/10/21
Accepts a serial stream from Arduino Nano 33 of 1024 samples, taken at 16000 sps. Accompanying sender prog is  'NANO 33 AUDIO TO PROCESSING.ino'
** Same as FFT_V2, adapted to display bins, also smooth.
Accompanying sender prog is
'NANO 33 AUDIO TO PROCESSING.ino'
Adapts sample code at http://code.compartmental.net/minim/fft_method_forward.html
Simplest version, Nano platform, no power saving sleep, just burns when dark. Suit 12v fed by solar panel