A simulator for the CCCB service point display.
Find a file
Vinzenz Schroeter ad5f1e8abe
Some checks are pending
Rust / build (push) Waiting to run
update dependencies, initial UTF-8 support
2025-01-16 22:28:08 +01:00
.github/workflows install missing package in github action 2024-10-12 21:09:37 +02:00
src update dependencies, initial UTF-8 support 2025-01-16 22:28:08 +01:00
.envrc wip nix flake 2024-11-07 20:18:49 +01:00
.gitignore working flake 2024-11-09 18:53:11 +01:00
Cargo.lock update dependencies, initial UTF-8 support 2025-01-16 22:28:08 +01:00
Cargo.toml update dependencies, initial UTF-8 support 2025-01-16 22:28:08 +01:00
example_render.png add screenshot to README.md 2024-05-11 23:44:18 +02:00
flake.lock update flake, use correct nix dependencies instead of non-default fontkit features 2025-01-09 22:50:56 +01:00
flake.nix update dependencies, initial UTF-8 support 2025-01-16 22:28:08 +01:00
LICENSE Create LICENSE 2024-05-08 13:42:44 +02:00
README.md wip nix flake 2024-11-07 23:24:41 +01:00
rustfmt.toml reformat code with max width 2024-05-11 23:29:25 +02:00
Web437_IBM_BIOS.woff text rendering 2024-05-10 18:24:26 +02:00

servicepoint-simulator

An emulator for the CCCB airport display.

example render

In CCCB, there is a big LED matrix screen you can send images to via UDP. This project aims to build a working an application that can receive packages in the same binary format and display the contents to the user.

Use cases:

  • getting error messages for invalid packages
  • test your project when outside CCCB
  • test your project while other people are using the display

Uses the servicepoint library for reading the packets. The screenshot above shows the output of two example projects running in parallel (game_of_life and random_brightness).

Running

With nix flakes: nix run github:kaesaecracker/servicepoint-simulator

Without nix: check out this repository and use cargo run --release.

Command line arguments

The application binds to 0.0.0.0:2342 by default (./servicepoint-simulator --bind host:port to change this).

See env_logger to configure logging.

Because this program renders to an RGB pixel buffer, you can enjoy the following additional features not available on the real display:

  • enable or disable the empty space between tile rows (./servicepoint-simulator --spacers to enable)
  • render pixels in red, green, blue or a combination of the three (./servicepoint-simulator -rgb for white pixels)

Contributing

Contributions are accepted in any form (issues, documentation, feature requests, code, reviews, ...).

All creatures welcome.

The included font is https://int10h.org/oldschool-pc-fonts/fontlist/font?ibm_bios (included in the download from https://int10h.org/oldschool-pc-fonts/download/). The font is CC BY-SA 4.0.

For everything else see the LICENSE file.