Skip to content
Isuret Polos edited this page Mar 5, 2026 · 4 revisions

External Devices

TRNG Hotbits

An ESP32 is the most cheap and fast solution to retrieve true random numbers (hotbits, the fuel for digital radionics analysis).

#include <Arduino.h>
#include "esp_system.h"

static void write_u32_le(uint32_t v) {
  uint8_t b[4] = { (uint8_t)(v), (uint8_t)(v >> 8), (uint8_t)(v >> 16), (uint8_t)(v >> 24) };
  Serial.write(b, 4);
}

void setup() {
  Serial.begin(115200);
}

void loop() {
  // Host protocol: send ASCII 'R' to request one 32-bit value
  if (Serial.available()) {
    int c = Serial.read();
    if (c == 'R') {
      uint32_t r = esp_random();   // HW RNG-backed
      write_u32_le(r);
    }
  }
}
import serial
import struct

with serial.Serial("COM5", 115200, timeout=1) as ser:
    ser.write(b"R")
    data = ser.read(4)
    if len(data) != 4:
        raise RuntimeError("No data")
    (value,) = struct.unpack("<I", data)
    print(value)

Broadcasting

The Jds6600 is a digital signal generator, programmable via USB com port, at a cost of around 120$ (more or less)

import serial
import time

port = "COM5"          # Windows; unter Linux z.B. "/dev/ttyUSB0"
baud = 115200          # je nach Gerät/Protokoll ggf. anders

ser = serial.Serial(port, baudrate=baud, timeout=1)
time.sleep(0.2)

def send(cmd: str) -> str:
    # viele Geräte erwarten Zeilenende; oft "\r\n" oder "\n"
    ser.write((cmd + "\r\n").encode("ascii"))
    ser.flush()
    return ser.readline().decode("ascii", errors="ignore").strip()

# Beispiel: erst mal irgendein "Identify/Version"-Kommando testen,
# falls das Protokoll so etwas kennt (variiert je nach Gerät!)
print(send("VERSION?"))

ser.close()

This results in the possibility to create a new open source BIORESONANCE device:

Very weak pulsed signals over a broad frequency range are generated by a programmable digital signal generator and transmitted into the system as a carrier signal. The returning signal or echo is detected by connected sensors and digitized for analysis. The resulting oscillation patterns are processed by the AetherOnePy/AetherOnePi software and compared with entries in an extensive rate database. From this comparison, the deviation from an optimal or balanced state is calculated.

Clone this wiki locally