# BLE LED Matrix Controller: reconstructing GIF upload for a 96×20 display

> BLE LED Matrix Controller investigates the BLE commands of an ATOTOZONE CI-VIALD19 96×20 LED matrix and supplies a Python uploader for GIFs and static images. Its notes record packet acknowledgments and commands for brightness and screen blanking; the author reports successful GIF uploads below 49,980 bytes.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-08
- Original resource: <https://github.com/mtpiercey/ble-led-matrix-controller>
- Primary source: <https://github.com/mtpiercey/ble-led-matrix-controller/blob/fc1da08afc1e3f1fd62f80cf68c0a9663d52ac26/misc_notes.md>
- Catalog page: <https://awesomerea.org/resources/ble-led-matrix-controller-case/>
- Record JSON: <https://awesomerea.org/resources/ble-led-matrix-controller-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/ble-led-matrix-controller-case/index.md)

## Requirements & limits

- **Prerequisites:** An ATOTOZONE CI-VIALD19 96×20 BLE LED matrix is the documented target.
- **Limits:** The author reports support for GIF files under 49,980 bytes.
- **Limits:** Brightness control, stored-animation switching and drawing uploads remain unimplemented.
- **License:** MIT License.

## Primary sources

1. <https://github.com/mtpiercey/ble-led-matrix-controller/blob/fc1da08afc1e3f1fd62f80cf68c0a9663d52ac26/misc_notes.md>
2. <https://github.com/mtpiercey/ble-led-matrix-controller/blob/fc1da08afc1e3f1fd62f80cf68c0a9663d52ac26/README.md>

## More in Protocols

- [LSC Smart Connect / Battletron: reconstructing LAN lighting control](https://awesomerea.org/resources/lsc-battletron-bridge-case/index.md) · Case study
- [Razer Key Light Chroma: a SignalRGB client for its lighting protocol](https://awesomerea.org/resources/razer-key-light-chroma-protocol-case/index.md) · Case study
- [lochinvar-native-modbus: mapping Knight boiler telemetry](https://awesomerea.org/resources/lochinvar-native-modbus-case/index.md) · Case study
- [Cindy Band: a client for the Xiaomi Smart Band 8 BLE protocol](https://awesomerea.org/resources/cindy-band-case/index.md) · Case study
- [hd60-macos: reconstructing Elgato HD60 USB control on macOS](https://awesomerea.org/resources/hd60-macos-case/index.md) · Case study
- [Lumalou Revival: reconstructing the lamp's encrypted BLE control](https://awesomerea.org/resources/lumalou-revival-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
