Skip to content

[Feature request] Optional monochrome emoji rendering for the SuperBase OLED #3712

Open

Description

@Amoulier

Following up on #840, which was closed as stale: the SuperBase SH1107 display shows replacement blocks for emoji in node names and received text. A joystick emoji in a node name is one concrete example.

A working prototype renders monochrome 10x10 pictograms without changing the underlying UTF-8 names or messages. It measures and truncates complete sequences, handles variation selectors and joined emoji, and retains the existing text font for ASCII/common Spanish characters. Tables are static; rendering does not allocate on the heap.

The prototype uses OpenMoji 17 artwork with CC BY-SA 4.0 attribution, modified into monochrome bitmaps; its renderer is separate source code. The generated catalog recognizes 3,953 standard sequences. I would not propose imposing that full catalog on every board: a curated subset, generation option, or board-specific opt-in may be more appropriate for upstream flash budgets.

Validation in the fork includes host tests for every generated sequence, malformed UTF-8, bounds, measurement and ellipsis, with Linux ASan/UBSan. The joystick glyph was verified on the physical SuperBase. The whole catalog has not been visually checked on hardware; color/skin-tone distinctions cannot be preserved on a monochrome OLED.

Before preparing a dev PR, is this renderer/artwork approach acceptable? Would maintainers prefer a small curated subset, an optional generated catalog, or another existing font source? Any accepted implementation would retain the required artwork license and regeneration inputs.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions