diff --git a/migration/Migration_Testing_Journal.md b/migration/Migration_Testing_Journal.md new file mode 100644 index 0000000..dafcc1f --- /dev/null +++ b/migration/Migration_Testing_Journal.md @@ -0,0 +1,25 @@ +# Migration Testing Journal +May 17, 2026 3:30 AM - I had successfully testing the CPP classes on the 2 Rapsberry Pi Zero 2Ws using the Constitution. I then queried Codex and ask: how could I be certain I was ussing the compiled CPP library and not the older Python code. It made changes which I did not examine which would regurgitate what it was using. I pushed to Forgejo and then pulled to Zeros. That's when things went south. Suddenly the Constitution was not being cross transmitted in 36 seconds and the 60 seconds timeout trigger resulting in an incomplete transfer on both side. Then, I think, more modifications were made and deployed and then the BLE could not even advertise and/or register. Codex suggestion was to reboot the Pis. This is where I disagreed. Here is an opportunit to take a rock-solid hardware state and learn why it was disturbed, if it was disturbed. This occured about 6 hours ago on Saturday evening, May 15th. I've awakened and mulled this over and realized this may be an opportunity to identify a more low level bug. The latest runs were tmp/run13 where a connection could not even be established. + +So, I'll do run14 using the exact same command clumps to see if the condition remains, or if the passage of time has changed something. Hopefully, run14 will have the same errors. + +I'll also source control my Pi command clumps. + +May 17, 2026 3:39 AM Using existing ssh shells, I reran the test and duplicated the error condition. Saved in run14. zerodev1 has announcements and no indication of error. zerodev2 has errors: + +```bash +[03:39:27.352] Requesting path to <926e6d3b35b7d5940be7edeb47c41b78> +[2026-05-17 03:39:28] [Critical] BLEInterface[BLE Interface] driver critical: Scanner callback failure detected (0 callbacks for 19 consecutive scans). Bluetooth stack requires reboot. - Exception: BleakScanner callbacks not invoked +``` +Codex advises: +``` +Run14 supports “low-level BLE/scanner path,” not C++ fragmentation: + +zerodev2 is forced Python. +It advertises successfully. +It never establishes a path/link. +It repeatedly reports BleakScanner callbacks not invoked. +zerodev1 shows no scanner callback errors in the shown log. +So the immediate code point to instrument is LinuxBluetoothDriver._perform_scan(), around BleakScanner(... detection_callback=...), scanner.start(), scanner.stop(), and callback_count[0] == 0. +``` +So I'll try a run with no change on zerodev1, but force "cpp" for zerdev2, I'll keep the logs in run14. \ No newline at end of file diff --git a/migration/pi_zero_command_clumps.txt b/migration/pi_zero_command_clumps.txt new file mode 100644 index 0000000..3f8cd6a --- /dev/null +++ b/migration/pi_zero_command_clumps.txt @@ -0,0 +1,82 @@ +This file had been a working scratch file, but is now being saved on 5/16/26 at 3:337 AM. See Journal. + +# zerodev1 +timeout 240 python3 examples/ble_dual_node_echo.py \ + --ble-role peripheral \ + --message-file ~/Constitution.txt \ + --message-chunk-size 900 \ + --announce-only-when-disconnected + +# zerodev2 +timeout 240 python3 examples/ble_dual_node_echo.py \ + --ble-role both \ + --peer 926e6d3b35b7d5940be7edeb47c41b78 \ + --announce-only-when-disconnected + +# --message-file /home/jlpoole/US_Constitution.txt + --message-file If.txt \ + +# zerodev1 Command clump START +date +chronyc tracking +chronyc sources -v +echo . + +PYTHONPATH=src:migration/protocol_core \ +BLE_RETICULUM_FRAGMENTATION_BACKEND=python \ +BLE_RETICULUM_FRAGMENTATION_BACKEND_REPORT=1 \ +timeout 60 python3 examples/ble_dual_node_echo.py \ + --ble-role peripheral \ + --message-file /home/jlpoole/US_Constitution.txt \ + --message-chunk-size 900 \ + --announce-only-when-disconnected \ + --verbosity "critical" + +echo . +chronyc tracking +chronyc sources -v +# zerodev1 Command clump END + + + +# zerodev2 Command clump START +date +chronyc tracking +chronyc sources -v +echo . + +PYTHONPATH=src:migration/protocol_core \ +BLE_RETICULUM_FRAGMENTATION_BACKEND=python \ +BLE_RETICULUM_FRAGMENTATION_BACKEND_REPORT=1 \ +timeout 60 python3 examples/ble_dual_node_echo.py \ + --ble-role both \ + --message-file /home/jlpoole/US_Constitution.txt \ + --peer 926e6d3b35b7d5940be7edeb47c41b78 \ + --announce-only-when-disconnected + +echo . +chronyc tracking +chronyc sources -v +# zerodev2 Command clump END + +# zerodev2 CPP Command clump START +date +chronyc tracking +chronyc sources -v +echo . + +PYTHONPATH=src:migration/protocol_core \ +BLE_RETICULUM_FRAGMENTATION_BACKEND=cpp \ +BLE_RETICULUM_FRAGMENTATION_BACKEND_REPORT=1 \ +timeout 60 python3 examples/ble_dual_node_echo.py \ + --ble-role both \ + --message-file /home/jlpoole/US_Constitution.txt \ + --peer 926e6d3b35b7d5940be7edeb47c41b78 \ + --announce-only-when-disconnected + +echo . +chronyc tracking +chronyc sources -v +# zerodev2 Command clump END + +