Living experiment notebook, updated September 28, 2026. The latest evening recurrence shows Maya’s USB fault beginning after sleep/wake, more than three minutes before the app installation the user associated with it. A new failed-state sysdiagnose is saved; no recovery was attempted while the user was AFK. The earlier silent-Maya / WRLD.BLDR recovery investigation includes September 24/27 context, failed media-service/app resets, and successful physical recovery before this recurrence. No permanent fix is established. These are separate symptom records from the earlier sporadic interruptions and periodic blanking below. No capture or new experiment remains active.
The earlier sporadic interruptions and periodic blanking remain unresolved in the recorded JUCE 8.0.2 and 8.0.15 comparisons. The completed upgrade comparison reproduced matched USB-restart interruptions and sustained periodic blanking at nominal iPad thermal state. See the ordered experiment queue and the new hub power/heat hypothesis.
This journal is versioned in the main repository at docs/experiments/ipad-maya-audio/. Read and update this copy in the normal repository checkout; the old e18e diagnostic worktree is historical context, not the journal’s home.
For new investigations, commit useful findings, experiment methods, conclusions and limitations. Keep diagnostic artifacts—including raw logs, selected log excerpts, registry snapshots, generated summaries and sysdiagnoses—on the Mac outside Git, and record their absolute local paths in the dated journal entry. Do not add artifacts to an upload unless the user specifically requests it. Existing historical imports below record earlier preservation work.
The September 28 preservation imported all 186 original journal files, including dated reports, research, plots, summaries, analysis scripts and the historical evidence manifest. Referenced files from the old experimental worktree are preserved under historical-context, and their links are relative. Those are archival source/protocol snapshots, not changes to the production app. Original paths in dated prose and JSON manifests record where experiments ran.
Large raw recordings, device log archives and sysdiagnoses remain outside Git. September 24–28 captures live under ~/Documents/SmartGridOne/diagnostics/; older /private/tmp references and the evidence manifest are historical availability records, not backup guarantees. A verified pre-import copy of the complete original journal was also saved under ~/Documents/SmartGridOne/experimental-journal-backups/.
The first localization check was the user’s comparison of the live output against SmartGrid’s internal recording: the audible glitches were absent from the recording. The original report in the conversation was: “it is not in the recording, so its not the DSP. DSP sounds pristine”. The user reaffirmed this on September 10. This observation was missing as an explicit entry in this journal and is restored here; its provenance is the user’s listening comparison, not a new file analysis performed today.
Treat clean generated audio at the internal recording tap as established investigation evidence. The later pure-tone callback test independently reproduced periodic analog corruption while bypassing normal synthesis. Do not keep treating malformed samples generated by the synthesizer as the leading untested explanation. Later transport/presentation failure, or a timing gap that does not appear as silence in an internally accumulated recording, is a different question. Native output-boundary instrumentation would localize downstream corruption, not repeat the initial DSP-content exclusion.
Updated thermal-mechanism interpretation after native tracing separates power-demand and host-timing hypotheses from the now-weakened app CPU-starvation explanation.
September 28 evening recurrence before deployment: approximately 37 minutes of streaming without the fault signature, followed by background/StopIO, sleep, USB 3 resume trouble, and Maya empty transfers at system-sound startup. Installation follows over three minutes later. Maya, WRLD and USB2-hub session IDs remain unchanged from the earlier working state; full sysdiagnose preserved without recovery intervention.
September 28 silent Maya and WRLD.BLDR USB reset recovery: failed-state sysdiagnose captured over Wi-Fi; restarting media services/usbaudiod and the app did not clear Maya. The iPad-to-hub reconnect restored audio but stalled WRLD output; WRLD-only reconnect restored feedback. Includes the cable-identity correction, wake/power timing, kernel evidence, and untested next comparisons.
September 13 post-merge MAYA runs: 13 matched MAYA input transaction errors/restarts/callback gaps from 16:19–16:34, followed by a 19:30–21:14 run with no settled-run MAYA errors or new app gaps. Startup and user-quit events are separated.
September 12 SmartGrid heat profile and SRR-like episode: battery temperature rose from 25.69 to 30.59 C; per-thread CPU measured approximately 41% audio plus 20% UI; 14 MAYA input-endpoint transaction errors matched callback gaps. Zero-length input transfers and rising driver timestamp drift preceded one reported abrupt recovery. The app was stopped after profiling.
September 11 K-Mix substitution: same hub/WB/PD, normal DSP/UI/MIDI, inputs retained disabled. K-Mix had23playback errors (20input failures/restarts/callback gaps plus3feedback errors);31disconnect errors excluded. The subsequent user-directed MAYA setup had0spontaneous errors over2m35s;1error during confirmed user interaction excluded. Both archives saved, captures stopped; physical change not yet explained and no analog recordings.
Completed induced-thermal comparison:22matched failures nominal versus6Serious, including third-run8versus5. All31full-record failures correlated; two short holes accompany alternate processing overruns. Focused native tracing is complete: captured USB fault occurred after audio finished and entered its wait; no immediate audio/USB-thread starvation found.
No-PD ad hoc run, analyzed: seven matched MAYA transaction errors/restarts/callback stalls in about 2m50s, nominal thermal state, external power and charging off. PD is unnecessary for the sporadic failure chain; no analog recording in this run.
SonoBus/SmartGrid source comparison: completed fresh-context review and independent build/callback audit; no distinctive native USB recovery found, runtime settings and workload remain to compare.
/private/tmp; existence in this manifest is a snapshot, not a retention guarantee. Text reports are preserved here in the worktree.Historical research reports retain their original date and conclusions. The September 10 comparison and this queue supersede their old prioritization. One source-audit correction: the installed JUCE constructor sets PlayAndRecord before session activation; its old probing/negotiation behavior is the concern. Do not repeat a claim that it first activates without setting the category.
Sporadic interruptions: recorded long gaps around 225–230 ms match MAYA input-endpoint transaction errors, driver I/O restarts and app callback arrival gaps. The error-to-restart chain is established; the initiating fault is not.
Periodic blanking / SRR-like distortion: repeated partial holes in analog output, even with the pure-tone callback. They can occur with regular app callback arrivals, short measured DSP time and unchanged native sample-timestamp counter. In the September 10 UI-off run, the pattern clears at a USB restart and returns near renewed drift accumulation. This supports a reset/masking hypothesis, not proof of one shared root cause. The later 8.0.15 run also recovered without a restart while reported drift kept rising, so recovery does not always require a reset.
| Change or comparison | Status / interpretation |
|---|---|
| Request and enforce 48 kHz | Implemented and deployed; both symptoms have reproduced at verified 48 kHz. Some starts still negotiate an unexpected value and are refused. |
| Request exact 512 frames | Implemented and deployed with two 8.0.2 native buffer patches; both symptoms persist. |
| Zero requested app inputs; feed DSP zeros | Tested; MAYA input endpoint remains active at the system-driver level and transaction failures persist. |
| Disconnect WB | Quantified September9: six matched USB/callback/analog failures in244.629s with WB absent; one in131.260s after attachment. Nominal throughout. MIDI worker remained active; not an all-MIDI-disabled test. See2026-09-09-wb-disconnect-result.md. |
| Pure-tone callback, normal DSP bypassed | Periodic corruption reproduced in the September 9 recording; it did not reproduce the common sporadic failure in that measured tone interval. Other app infrastructure remained alive. |
| Desktop and other iPad audio apps | Clean comparison sessions were reported/recorded during earlier investigation. Different hosts/apps and unequal exposures are useful contrasts, not proof that the hardware or iPad path is universally safe. |
| Normal DSP, UI rendering off | Completed September 10; both symptoms reproduced. Rendering is unnecessary for either; whole message-thread and worker activity were retained. |
| Full JUCE upgrade | Completed 8.0.15 comparison; both symptoms persist at nominal thermal state. Initial 470-frame callbacks settle to 512; startup transients preserved. |
| Suppress remaining worker starts / native output-boundary tracing / alternate session category | Not yet completed; separate queued tests, not exclusions already established. |
| Run | Duration | Long waveform gaps / matched USB restart episodes | Periodic result |
|---|---|---|---|
| Old pure tone + Wi-Fi, September 10 10:01 | 960 s | 0 / 0 | No holes ≥0.4 ms detected; one clean exposure |
| Normal/UI-on/autoplay, 10:52 | 382.549 s | 17 / 17 | Dense burst at WAV177.617–180.362 s |
| Normal/UI-off/autoplay, 11:02 | 960 s | 1 / 1 | Dense episodes at WAV29.061–273.160 s and541.650 s–end |
| JUCE 8.0.15 normal/UI-on, 12:21 | 168.192 s | 5 / 5 | No dense episode in this short exposure |
| JUCE 8.0.15 normal/UI-off, 12:27 | 960 s | 1 / 1 | Dense episode at WAV111.659–512.348 s |
| SonoBus1.7.3,48k/256,13:25 | 3600 s | 0 / 0 | No short-hole candidates |
| MIDI worker off,normalUI/DSP,14:36 | 960 s | 39 / 39 | Dense episode at WAV26.312–38.472 s |
UI-on was stopped early after repeated positive reproduction. Old UI-off had three additional startup errors before recording; new UI-off had four. New UI-on also had one error immediately before its recording. These are unequal sequential exposures with bursty events; do not turn their counts into a proven UI-induced rate reduction. User-reported dropouts around11:00 occurred outside the measured UI-on WAV and have separately matching system errors.
All four compared normal runs verified MAYA48k/512, zero app inputs/four outputs, same saved ms patch/config and internal clock. No iPad service traffic ran during measured intervals. Recorded iPad thermal state was nominal; the interface and hub temperatures were not measured. The instrumented DSP region did not overrun, but it excludes subsequent logging and surrounding native work. The JUCE device xrun field counts sample-timestamp discontinuities, not DSP execution-time overruns.
Existing diagnostic worktree: /Users/joyo/.codex/worktrees/e18e/theallelectricsmartgrid, branch codex/audio-diagnostics-48khz. Source changes and these notes remain uncommitted; main was not used for development.
Preserved JUCE 8.0.2 rollback autoplay package: /private/tmp/smartgrid-ui-isolation-autoplay-20260910.ipa. Binary SHA-256: 50cd149fb3456c70ee5e4c380b2878718d1dc8a99df7514520e44339ab190906.
Preserved upgrade-comparison package is /private/tmp/smartgrid-juce815-20260910.ipa, binary SHA-256 4f7b9428c5e8c4b91e658c7f8d7b8441ba7f5c1a5cd46f5e8f9fd16d6d0e4df5. Current MIDI experiment package is /private/tmp/smartgrid-midi-worker-20260910.ipa, binary SHA-256 c1ab35fd9cd627798583aaa08ba40e12cabde0915acbcb0275b0d1ad32961fd6.
At completion of the JUCE comparison, recordings and log collection had stopped, normal visible UI/normal DSP/autoplay was restored, and MAYA48k/512 verified. The temporary general Wi-Fi connection preference was restored false; Wi-Fi radio and wireless debugging were left unchanged. Prior user authorization for autonomous device experiments persists. Re-establish the authorized connection state if needed before the next run and record it consistently across conditions.
Detailed prototype implementation and review ledger: .superpowers/sdd/2026-09-10-audio-ui-isolation/progress.md. Machine-readable session state: /private/tmp/smartgrid-research-20260909/wireless-experiment-status.json. Raw recordings, logs, archives and analysis helpers use the /private/tmp/smartgrid-* prefix. Preserve them during unrelated disk cleanup; the user previously authorized garbage collection of older debugging recordings, so check existence before relying on an old raw path.
Normal iPad SmartGrid also had a35m08s quiet callback interval earlier today, on JUCE8.0.2 before frame SysEx worker routing. The current run has reached32m09s by15:53:46. Both span nominal-to-serious iPad thermal transitions; neither entire interval has matching analog coverage. This strengthens a repeated thermal/OS-policy association, not proof of causation or either symptom fixed. Comparison and limits.
Same binary redeployed and relaunched while the iPad remained serious, with normal DSP/UI and MIDI worker enabled. K-Mix recording16:14:25–16:30:25 is active. The user reported WRLD.BLDR LEDs not updating before restart; physical output confirmation after restart is pending. Increasing submission counters do not establish physical MIDI delivery. Protocol. Thermal profile availability is verified, but no profile was enabled.
The user confirmed LEDs work. The hot restart recording and additional five-minute continuation were clean by the measured long-dropout/periodic detectors; the restart still had two USB/callback failures before the first recording. The hour request was shortened to five minutes and is complete. SmartGrid is now stopped for passive cooling; repeat after initial nominal thermal is verified, with recording started before launch. Current protocol.
After more than five minutes stopped, the same build relaunched with nominal thermal0 verified and actual48k/512. MIDI worker enabled, normalDSP/UI/autoplay. Recording16:49:00–17:05:00 includes the planned11.62second prelaunch silence and initialization. No screenshot or device queries after startup verification. Protocol and startup details.
Final comparison: the extra five hot minutes stayed clean; after passive cooling,21long analog interruptions matched21MAYA errors/restarts/callback gaps. A separate29-hole periodic burst matched29alternate callback processing-budget overruns, without native xr increase.18failures while nominal,3after serious: thermal association persists but serious is not protective in all cases. Same48k/512/MIDI-worker build; no source changes. Evidence and plots preserved; scheduled comparison complete.
Three-agent research synthesis now records the proposed policy×PD experiment matrix and supporting manufacturer/Apple sources. Recovered battery readings show SonoBus and longDrambo cooler at the battery than the latest SmartGrid run; continuous public thermal states are unavailable for those controls. SonoBus was48k/256. Latest SmartGrid battery charging stopped before all21long failures, well before serious state, so active filling cannot alone explain improvement. Research complete; no new experiment or automation active.
Final native trace report. One long dropout is captured with complete kernel scheduling history: audio finished4.585ms before theUSBerror, waited through recovery, and ran2.375µs after its next wakeup. TheUIthread continued running. MatchedSerious windows do not materially change app worker polling orUICPUuse. The failed long acquisition also recorded periodic blanking without measuredDSPoverruns, outside its retained native interval. All captures and archive analysis are complete; playback stopped, override clear. Native outgoing-buffer diagnostics remain the next proposed cut; no new build or experiment is active.
Scheduled MIDI + output reconnection results:15minutes entirely nominal;32MAYA errors/restarts/native gaps/long analog dropouts, plus15.78seconds of repeating bilateral waveform flattening without callback gaps or USB errors during that burst. Actual MIDI submission verified; worker~499iterations/s, noCoreMIDI API errors.10,582late drops followed audio recovery, consistent with SampleTimer’s slow timestamp rebasing. Earlier queue-handoff counts alone cannot establish native MIDI traffic. App stopped and verified22:54:13PDT; no new test queued.
Loaded Drambo control and SmartGrid audio-host options records the next proposed comparisons. The MIDI sender still requests real-time scheduling at a 2 ms period, but the worker-off run already reproduced both symptoms. The strongest unresolved contrast is the normal-DSP run versus the much lighter pure-tone callback. No new experiment has started.