You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Session Handoff [rv3028-eeprom]: All Copilot rounds answered; every upstream PR waits on maintainers #21
Cleanup, once Pieter is done with hardware: the -hw-3545, -hw-3421, local/rv3028-probe-* and local/rtc-probe-test worktrees, and the board's final firmware. Ask Pieter about each.
External blockers
GitHub Actions had a major outage on 2026-10-05 from ~20:47Z. Copilot ran degraded during it ("unable to run its full agentic suite"). A Copilot re-request after any future push still needs Pieter, in the web UI.
Zephyr: its BSF guard (local 67fda87) waits on Pieter in that session. zephyrproject-rtos/zephyr#121252 waits on maintainer approval of its CI workflows.
RX8130CE weekday is upstream as liquidraver/ZephCore#101 (0e93948). It also sets the meshtracker_x1 YSN8900 one-hot. MeshCore never drives that chip, because its meshtracker_x1 uses VolatileRTCClock.
Upstream dev is still 3e3150c8, and the fork dev mirror matches it.
0 parked. The fork has no decision label and no open decision issue. Every question this round was answered in the session: post both triage replies, cut meshcore-dev#3433, hardware re-test, push, and reply-only (no reword) to the meshcore-dev#3433 finding.
updated the title and body, and checked that the links resolve;
after Pieter re-requested Copilot, answered and resolved its one (wrong) finding with no code change.
What not to repeat
ENV_SKIP_GPS_DETECT does nothing on a RAK4631. RAK builds detect the GPS through rakGPSInit()/gpsIsAwake(), which need live UART data. Only initBasicGPS() reads the flag. On the bench board, three reboots and one forced build all gave zero settings. To test a one-setting path there, you need a GPS that is actually talking at boot.
pr_review.py reply can't write upstream (OUT_OF_SCOPE, since it resolves the owner from the hub's origin). Use a REST POST .../pulls/N/comments/<id>/replies, plus GraphQL resolveReviewThread with the thread id captured in the same command, per project memory upstream-writes-blocked-by-write-guard. Its reply also takes --body, not --body-file.
"No caller can set year 2000" was too strong at first. The CLI and the companion refuse a backwards time, but GPS sets whatever the receiver reports. Check every setCurrentTime caller, GPS included, before making a claim like that.
The RAK serial-DFU bootloader enumerates as usb-RAKWireless_WisBlock_RAK4631_<serial>-if00. Flashing by by-id path, with the touch on the app by-id, worked first time on all three flashes this round. The project memory meshcore-hardware-ground-truth is updated.
Next steps, in priority order
updatedAtafter 2026-10-05T21:25Z is new, including the Reject a negativesensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433 thread reply. Watch #3434 for a maintainer verdict.cross-firmware-parity-policy). ZephCore's handoff is ptr727/liquidraver-ZephCore#46.out_path_len; details are in link Session Handoff [rv3028-eeprom]: Two RTC PRs re-pushed with cross-firmware fixes; triage Copilot headlines #19, step 4. Don't start them before then.devmoves, or a PR merges or is declined: follow link Session Handoff [rv3028-eeprom]: Three MeshCore PRs upstream; watch and respond to review #17, steps 3 and 4. Adopt an RTC only if its time registers read like that chip 🤖🤖 meshcore-dev/MeshCore#3544, Store RV3028 backup switchover and trickle charger config in EEPROM 🤖🤖 meshcore-dev/MeshCore#3545 and Read and write the RV3028 clock atomically, and reject switchover-garbled transfers 🤖🤖 meshcore-dev/MeshCore#3421 all touchAutoDiscoverRTCClock.cpp.-hw-3545,-hw-3421,local/rv3028-probe-*andlocal/rtc-probe-testworktrees, and the board's final firmware. Ask Pieter about each.External blockers
sensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433 and PassTELEM_RAK12500_ADDRESSto the RAK12500 I2C probe 🤖🤖 meshcore-dev/MeshCore#3434.67fda87) waits on Pieter in that session. zephyrproject-rtos/zephyr#121252 waits on maintainer approval of its CI workflows.Internal dependencies
CommonCLI.cppbounds next tosensor list, so check Reject a negativesensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433 first, if it has merged by then.State
fix/rtc-probe-identity@9d0d5e31(c36cb9ee)fix/rv3028-eeprom-config@23b23b24(e74c5c60)fix/rx8130ce-week-onehot@8c9c9772(4cdd5d71)fix/rv3028-atomic-read@c408f88b(65907457)sensor listfix/sensor-list-paging@bbacf47a(ec05125f, fork PR #8)startunsigned), wrong sincestartisint; answered and resolvedsensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433 was cut to one line at Pieter's go-ahead:if (start < 0 || start >= end). It matches liquidraver/ZephCore#100, which merged as d1cc647 after its owner called the larger fix over-engineered.sensor liststart index".VolatileRTCClock.devis still3e3150c8, and the forkdevmirror matches it.c3f0566b, envRAK_4631_hwtest), and its RTC was on time at 20:43Z. ZephCore's board 26B9 is attached too, so leave it alone.The parked decision queue
0 parked. The fork has no
decisionlabel and no open decision issue. Every question this round was answered in the session: post both triage replies, cut meshcore-dev#3433, hardware re-test, push, and reply-only (no reword) to the meshcore-dev#3433 finding.What the last round did
sensor listled to cutting Reject a negativesensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433 down.sensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433:devinto the work branch;ec05125f;bbacf47a;What not to repeat
ENV_SKIP_GPS_DETECTdoes nothing on a RAK4631. RAK builds detect the GPS throughrakGPSInit()/gpsIsAwake(), which need live UART data. OnlyinitBasicGPS()reads the flag. On the bench board, three reboots and one forced build all gave zero settings. To test a one-setting path there, you need a GPS that is actually talking at boot.pr_review.py replycan't write upstream (OUT_OF_SCOPE, since it resolves the owner from the hub's origin). Use a RESTPOST .../pulls/N/comments/<id>/replies, plus GraphQLresolveReviewThreadwith the thread id captured in the same command, per project memoryupstream-writes-blocked-by-write-guard. Itsreplyalso takes--body, not--body-file.statusreportsCOVERAGE_IS_UNSTATEDon Reject a negativesensor liststart index 🤖🤖 meshcore-dev/MeshCore#3433. Lite rounds state no file coverage, and the only round that did was on the old, larger diff. Re-requesting on the same head isn't the remedy, so leave it.setCurrentTimecaller, GPS included, before making a claim like that.New learnings
usb-RAKWireless_WisBlock_RAK4631_<serial>-if00. Flashing by by-id path, with the touch on the app by-id, worked first time on all three flashes this round. The project memorymeshcore-hardware-ground-truthis updated.