| Schema | v139 (current / System Manager) |
| Tool version | AuditRTI v8.27 |
| Rooms | 16 |
| Controllers | 9 |
| Driver instances | 18 |
| Source groups | 34 |
| Activities | 147 |
| Pages | 92 |
| Macros / steps | 1,284 / 4,791 |
| Variables | 612 |
| Buttons | 3,408 |
| Bitmaps | 419 |
| Tags | 1,021 |
These event triggers (processor events, room events, source on/off events) point at macros that were deleted. When the trigger fires β scheduled time, source change, sense input β nothing runs. The trigger looks programmed in ID11 but is silently dead.
Auto-fix clears the dead macro reference. The event row itself stays in place so its trigger configuration is preserved β you can re-program it in ID11 when ready.
Sample_Home.apex.bak.20260512_103004 before changes.
A button is configured to navigate to a page that has been deleted. When the user presses it, nothing happens β the controller is told to jump somewhere that doesn't exist, so it stays put. Usually leftover from page reorganization or source-device removal.
Auto-fix removes the dead page-link entry from each button. The button itself stays β you can re-target it to a current page in ID11. If the navigation isn't needed any more, the button is already cleaned up.
These activities show up in the Source Picker (Checked=1) but tapping them does nothing β there's no PagelinkMacroId set, so the controller has no page to navigate to. This is one of the most common silent bugs: looks programmed but isn't.
Auto-fix generates a one-step Type-8 PageLink macro pointing at the canonical page for that source group, then wires it into the Activities row. If you'd rather hide the activity instead, manually flip Checked=0 in ID11 (System Manager β Activity row).
The Variables.DeviceId column is the binding scope β the SourceGroup (ControlType=6) a page must be bound to for the variable to apply. The Driver instance (ControlType=1) ID belongs inside the ObjectData string, not in the DeviceId column. Wrong here = the feed silently fails to render.
This one needs hands-on review β manually swap DeviceId from the driver instance to the matching SourceGroup. The audit can't auto-fix because the right SourceGroup depends on which page the feed should render on. See manual p. 245 for the canonical example.
These macros exist in the project but nothing references them β no button has the macro's tag, no Activity / RoomEvent / SourceEvent / Event row points at them. They probably got orphaned during project reorganization or device removal. They never run; they just add noise.
Auto-fix deletes the unreachable macros. The cascade clears their MacroSteps and sub-table rows so nothing is left behind. If you suspect a macro should be reachable but isn't β open Tag Manager and check whether you forgot to put its tag on a button before deleting.
Layers must belong to a page. These 121 don't β they render nowhere but still get packed into the binary uploaded to the XP processor. On big projects this can push the download past the firmware size limit, with the cryptic "file too large" error.
Auto-fix cascade-deletes the orphan layers along with their child buttons (1,475 here) and any bitmaps referenced only from those orphan layers (88 here). Layers/buttons/bitmaps used elsewhere are preserved.
The stock ID11 picker templates (Source Picker, Room Picker) don't include a Hide-All-Menus step at the end of their tile macros. Result: the overlay stays open on top of the activity page after the user picks something. Universal gap β this finding fires on 23 of 24 reference projects we've scanned.
Auto-fix appends a Hide-All-Menus (MenuType 111 β Hide Sources Overlay) step to each tile's macro. The picker closes cleanly after selection.
ControllerRoomList tells each panel which rooms appear in its Room Picker. Adding rooms after the template's starter set doesn't auto-backfill β these 8 panels (iPads, Android, T2x) are missing 4β11 rooms each.
Auto-fix backfills the missing rows for every panel Γ every room (excludes XP processors and Alexa).
The Devices.Name on a ControlType=6 row appears verbatim in the System Manager activity list on every controller. Default driver-spawned names like "Camera 1" or "Switch 2" tell the end user nothing β they should be renamed to the actual fixture ("Kitchen Camera", "Front Doorbell", "Pool Pump").
No auto-fix β the right name is job-specific and only you know what each device is for. Open ID11 β Project Tree β click the source group β rename.
Job-custom tags (the "Context: Action" colon-convention ones like "Zone 1: Run Now") aren't part of the standard RTI tag library β they need an integrator-written macro. These 12 buttons have the tag set but no macro behind it, so they're dead.
No auto-fix β the macro content depends entirely on what the button is supposed to do. Open the button in ID11 β Macros tab β write the steps.
Tags listed in Tag Manager that no button, macro, variable, page link, or list item references. Leftover from deleted devices, experimentation, or imported source bundles. They don't break anything but pollute Tag Manager and confuse future maintenance.
Auto-fix removes them in one batch. Or in ID11: Edit β Tag Manager β set filter to "Show Orphaned Tags" β select all β Delete.
Buttons under 64 pixels are hard to press accurately, especially on touchscreens or for clients with motor impairment. End-user frustration over tiny press targets is a top callback cause post-install.
No auto-fix β re-sizing buttons is a design decision you make in ID11 against the page layout. The manual's rule of thumb: β₯ 64 pixels with roughly a 1.25 : 0.75 aspect ratio. On handheld remotes and in-wall keypads, make press targets as large as the screen allows.