Spooky2 is being continually refined for the betterment of mankind.
Of all the changes and improvements, two stand out:
1. The facility to define what samples Spooky uses to derive the biofeedback running average.
2. The percentage tolerance when Spooky searches for duplicate frequencies. This option greatly reduces the program size of most DNA programs and presets without compromising effectiveness.
Here is a more comprehensive list of the changes in this version:
Improved: BFB time estimates now uses the average of 10 generator poll times. Earlier versions of Spooky only used one.
Improved: Error trapping for presets with missing frequency strings.
Improved: Frequency Sweeps can now be programmed with 8 decimal place resolutions.
Improved: Biofeedback error-correcting.
Improved: Error reporting when waveform files are locked.
New: Display of the shell preset name (if used):
New: Tolerance for duplicate frequency detection. This is extremely useful for reducing the size of DNA programs and presets.
New: Option to combine frequencies of selected programs in dual mode. This halves program durations.
New: Biofeedback averaging method is now user-defined:
BFB RA Window sets the range to calculate a simple sliding-window running average. Values outside this range are omitted from calculations.
The retentive option makes the running average calculations retentive. If selected, a portion of previous running average values will always be carried to subsequent values, using the formula RA = RAp – (RAp/SC) + (Vn/SC)
RA = Running average for current sample point.
RAp = Running average of previous sample.
Vn = Current sample value.
SC = Sample Count. 1 <= SC <= WS.
WS = Window Size (User-defined number of samples).
BFB Average Window value. If this value is set to zero or is blank, Sample Count automatically defaults to 20.
The function of biofeedbacks is to monitor the level of a signal. This level can be compared with the average value of surrounding readings. The range of the surrounding readings is defined in the BFB Average Window fields. The signals with the greatest difference to the running average are reported in the final “Hits” list.
Early versions of Spooky calculated the running average on-the-fly. It was not possible to include readings after the current reading. Later versions of Spooky do retrospective analysis, so it is possible to include later readings whilst calculating the running average.
The first field of the BFB Average Window option sets the number of prior samples to include when deriving the running average value. The second field sets the number of samples to include after the present reading. In the above example, when Spooky reads the 50th current value (amps), Spooky will average the BFB values for samples 30 through to 49, and compare the 50th BFB value to this average.
Earlier versions of Spooky included the present reading in the average calculations. This is not desirable, and has been corrected in this version.
With the above settings, Spooky is set to find the maximum BFB values in relation to the running average of surrounding BFB values. After the scan, Spooky will open the appropriate biofeedback data file and retrieve the data for subsequent analysis.
If you wish to emulate early versions of Spooky (ie, April, 2017 or earlier), select the Retentive RA Window option, and set the left RA Window field to 20.
For more advanced analysis, set both fields to 10, or experiment with other values. One beta tester has found that 1 .. n .. 1 (with Retentive deselected) is a great way to detect real-world hits.[/color]
Improved: Biofeedback signal asymptote detection now uses the first sample of the peak or trough values. Previously, it was the final sample.
Upgraded: Drivers for CH341 and CH343 drivers.
Fixed: Grade scans. When Detect Min was selected, no hits were being reported.
Fixed: Spooky crashing when [CTRL] A was selected with BFB hits.
The following describes how Spooky detects and reports hits.
1. The running averages of all biofeedback samples is calculated. The running average sample window size is user-defined in the System tab. The current sample is excluded.
2. The asymptotes are detected. These are the peaks and troughs of the value being measured, ie, pulse, current or phase angle. If Max has been selected, then Spooky will look for peaks. If Min has been selected, Spooky will look for troughs. If more than one value shares this peak or trough value, the first sample is considered the asymptote, as this is the point which has the greatest stress against previous sample values. It is the sample which made the change to the peak or trough.
3. The asymptotes are graded. This is performed according to user settings. If Calculate Using RA is chosen, the formula (Present Sample – Present RA) at the asymptote sample number is used. If Peak is chosen, the Present Sample value at the asymptote sample number is used.
4. The results are displayed to the user in the appropriate order of asymptote grades.
These people graciously helped with this release of Spook2 20221103 :
John Robert Greyson