Tiles

Motivation

Tiles is a project I started in January 2022. The idea was born after watching this video. The video is about the Monogram Creative Console. In it the creator complains about the unusable software and other limitations. So I wanted to set myself a challenge. The goal is not to mass produce a product or anything similar to that. It’s more about building a working core and module base, upon which to build many different types of modules.

Tile Core

The Tile Core is what connects the tile network to the PC. Here you can see the prototype and the current PCB version. It uses USB HID to communicate with the PC software.

Tiles

Tiles are the actual modules. They can have many different input devices, even though I currently only have Encoder Tiles, as well as 2 and 4 Button versions. This is what the newest edition looks like in a 3D printed enclosure.

This is the corresponding schematic for the above PCB:

Tiles can be connected together in whichever direction you want, creating a customizable network of input devices.

Here you can see the evolution of how the current edition of tiles came to be. The first was just a communication testing board, with no onboard processor. Next I created a basic PCB design with magnetic connectors. I then moved from 4 to 8 pin connectors, mainly to allow connecting modules in all directions and implemented the changes I learned from the first edition. The newest version also added LEDs, which can act as status indicators.

Protocol

I developed a custom protocol for tiles. It is used for communication in the network. First a parent child connection is established. This way tiles always know which direction the core is. Afterwards Tiles get assigned a Network-ID. This is the ID they use to communicate in the network. They then report their Hardware-ID. This is a fixed identification number, which allows the core to recognize tiles after a disconnect. After reporting this, they also send their neighbours to the core, so that it can display the correct network to the user.