From df0ca173a64e3533989feccb8bd9656eff3832eb Mon Sep 17 00:00:00 2001 From: steadramon <866195+steadramon@users.noreply.github.com> Date: Sun, 4 Aug 2024 15:02:57 +0100 Subject: [PATCH] Use HW random --- ESPGeiger/src/GeigerInput/GeigerInputTest.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ESPGeiger/src/GeigerInput/GeigerInputTest.cpp b/ESPGeiger/src/GeigerInput/GeigerInputTest.cpp index 025f5c1..1319757 100644 --- a/ESPGeiger/src/GeigerInput/GeigerInputTest.cpp +++ b/ESPGeiger/src/GeigerInput/GeigerInputTest.cpp @@ -29,9 +29,13 @@ void GeigerInputTest::begin() { double GeigerInputTest::generatePoissonRand(double lambda) { // https://tomroelandts.com/articles/simulating-a-geiger-counter - double u; - u = random(RAND_MAX) * 1.0 / RAND_MAX; - return -log(1 - u) / lambda; + double u; +#ifdef ESP8266 + u = (1.0 * RANDOM_REG32) / 0xFFFFFFFF; +#else + u = (1.0 * esp_random()) / 0xFFFFFFFF; +#endif + return -log(1 - u) / lambda; } double GeigerInputTest::calcDelay() {