Engineering Reference · PHYSICALLY PROVEN / CLOSED
MB85RC256V shared-I²C identity, write/read/verify and complete power-cycle persistence proof.
Hardware Example 02 — I²C FRAM Persistence
Device Console: After flashing, use MONITOR for the complete FRAM discovery and verification output. Explicit
I2C ACK address=0x..lines can appear in the read-only I/O I2C section. Device identity is not guessed from the address; the raw proof remains authoritative in MONITOR.
Status: PHYSICALLY PROVEN / CLOSED on the production Waveshare ESP32-P4-WIFI6-Touch-LCD-7B on 2026-08-08.
In Studio, use Load Example to replace the current project and Guide for the concise wiring and test sequence. Connect the MB85RC256V to GPIO7 SDA, GPIO8 SCL, 3V3 and GND; then use WRITE TEST and READ TEST, followed by a complete power cycle, to verify persistence.
The detected external device is a RAMXEED/Fujitsu MB85RC256V at I²C address 0x50. It shares the BSP-owned bus on GPIO7 (SDA) and GPIO8 (SCL). The live scan also found board devices at 0x18, 0x40, and 0x5D.
Physical Device-ID response was 00 A5 10: manufacturer ID 0x00A, product ID 0x510. This identifies the responding external device as the 32 KiB RAMXEED / Fujitsu-family MB85RC256V. GPIO7/GPIO8 remain the BSP-owned shared I2C bus; Example 02 attaches a device and does not exclusively own or reconfigure those pins.
The implemented ownership path is:
ForgeUI UI → semantic generated APIs/events → developer-owned FRAM driver → existing BSP-owned I2C bus → physical MB85RC256V
Semantic APIs: FG_Set_FRAM_Status_Text, FG_Set_FRAM_Address_Text, FG_Set_FRAM_Value_Text, and FG_Set_FRAM_Verify_Text. Touch events: FG_On_WRITE_TEST_Clicked and FG_On_READ_TEST_Clicked.
The proof record occupies 16 bytes at 0x7FF0: magic FRAM, a 32-bit counter, the deterministic value counter XOR 0xA55A, version 1, CRC-16/CCITT, and a reserved field. No filesystem, write delay, or second I²C driver is used. Boot performs identification and a physical read only. A physical write occurs only after a deliberate WRITE TEST press.
Physical evidence: the Device-ID identified an MB85RC256V at 0x50; WRITE TEST and READ TEST passed; counter/value persistence passed across a complete power cycle. After reboot the physical log reported READ counter=9 value=0xA553 verify=PASS.
The selected-example architecture is also closed: loading an example replaces the Studio component project, mixed contracts are rejected, only the selected implementation source enters the build, and initialization/polling are conditional. Current state is FG_HARDWARE_EXAMPLE_01_ENABLED 0 and FG_HARDWARE_EXAMPLE_02_ENABLED 1. Unselected implementations remain preserved but inactive; Hardware Examples do not accumulate.
Physical proof completed: READY at 0x50, WRITE TEST PASS, READ TEST PASS, and a complete power cycle followed by counter=9, value=0xA553, verify=PASS. Example 01 remains independently physically proven and can be revalidated by selecting Example 01; it is intentionally not active alongside Example 02.
