Frame & Connections

Overview

The Attaky module-interconnect standard — how Core, Expand, Control, and Power join into one device.

Every Attaky is built from a handful of modules that join on a shared Frame. What makes that work is one small standard: defined connection channels for Expand, Control, and Power modules, plus combination rules for using them with the Core. This page is the canonical description of that standard — how modules interconnect. The other pages in this section drill into the parts: the Connectors and their pinouts, the Frame that holds it all, and the global I²C Address Map.

One Core, one of each

A Complete Build is one Core plus one module from each of the other categories: an Expand for its capability, an optional Control for input, and a Power module to run it off the grid. The Core is the host — it runs the firmware, drives the screen, reads the controls, and talks to everything attached. Every module you add connects back to it through the standard connectors below, so you can swap one out without touching the rest.

Three ways modules connect

The standard has three connection channels, each for a different job:

  • Back — board-to-board (BTB). The main module-to-module connector, on the back of the Core. An Expand or a compatible Power module mates flat against it, carrying both the signal lines and the supply rails. This is how a build stacks.
  • Sides and bottom — flat-flex (FPC). Three thin ribbon-cable connectors — left, right, and bottom of the Core — all on the same shared bus. A Control module (a keyboard or a gamepad) links in on whichever is convenient and passes the bus through, so Control modules can chain — a keyboard and a gamepad can be used together.
  • Bottom — 7-pin power. A dedicated cable connector for the Power module, separate from the BTB — so it can connect here while an Expand sits on the back. Besides power, it carries the main I²C bus, which keeps the battery gauge reachable.

The Connectors page lists each one's type and full pinout.

How a build comes together

Real builds use one of two arrangements. In both, a module stacks on the Core's back BTB — what differs is how the Power module attaches and whether a Control module is added. Which one a build uses is set by its Frame and is listed on each build's datasheet.

  • All on the back. Core ← Power ← Expand — this arrangement works only with a Power module whose datasheet lists a rear BTB passthrough. Power: Standard Cell 1.0 provides that passthrough, so an Expand can mount behind it. Several builds without a Control module use this arrangement.
  • Expand on the back, Power and Control by cable. Core ← Expand on the back, with the Power module on the 7-pin cable and a Control module on an FPC below. The Expand still stacks on the Core; only the Power and Control modules are cabled. This is how builds that add a keyboard or gamepad come together.

The rules that keep it modular

A few rules keep any valid combination coherent — the Compatibility Matrix is the full reference:

  • One Expand at a time. The Expand modules share the same Core signal lines, so exactly one runs in a build.
  • Check the Power module's connectors. Power: Standard Cell 1.0 supports the back BTB and 7-pin routes as alternatives—never both at once—and provides a rear BTB passthrough. Other Power modules may expose a different connector set; follow the selected module's datasheet.
  • A keyboard and a gamepad can be used together. The two Control modules share interrupt lines on the FPC bus, so when one fires the firmware scans both — each keeps its own I²C address.
  • Addressing on the bus. Modules that sit on the shared I²C bus are told apart by their address, so the Core knows which one is attached. The I²C Address Map lists every address.

Where to next

On this page