The information below is taken from MDK v.0.2
Modules are the building blocks of the Ara phone. They are the hardware analogue of software apps. These are physical components that implement various phone functions. There are currently two major classes of modules in MDK 0.2: front modules, which make up the front of the phone and generally provide user interaction or interface (the display, receiver, microphone, etc.), and rear modules, which provide the bulk of the phone’s back-end (non-user facing) functionality.
Front modules reach across the entire width of a particular Endoskeleton frame, while rear modules come in three standard sizes (1×1, 1×2, and 2×2) and can fit into multiple frame sizes. The rear of the Endo is parceled into 1×1 unit squares. Each 1×1 square is approximately 22mm. 1×2 and 2×2 modules are approximately 22x44mm and 44x44mm respectively.
The Ara Endoskeleton (or “Endo”) is the frame and backplane of the device that determines the size and layout of the phone. Ara modules slide in and attach to the Endo’s slots, and it has a backplane to electrically and logically connect modules together. There are currently three Endo size variants: Mini, Medium, and Jumbo, with varying rib configurations for each. The MDK only details the specification of the Endo to the extent that it is necessary for module developers to develop modules. In the interest of maintaining the integrity of the Ara platform specification, third-party Endo development is not permitted.
The sizes of the Endoskeletons are:
Mini – 45x118x9.7mm
Medium – 68x141x9.7mm
Jumbo – 91x164x9.7mm
Endo Spine is a singular vertical feature that bisects the rear of the Endo and forms part of the module slots.
Endo Ribs are horizontal features located either in the front or the rear of the Endo and forms part of the module slots.
The interface block is the area on the Endo and the modules where the electrical power pins and contactless data pads are located.
The Endo contains electro-permanent magnets (EPMs) to attach and secure each module. The EPMs are activated upon module insertion and deactivated by the user with an Android application.
The module shell is a user-replaceable cover for Ara modules that can be aesthetically customized as part of the Ara fulfillment process. With a few exceptions as noted in the MDK, Ara modules should nominally support user serviceable module shells.