Skip to content

[Bug]: Double space issue with Cyrillic OLED font in Meshtastic #9850

Description

@SergijF

Double space issue with Cyrillic OLED font in Meshtastic

Problem

When using the Cyrillic font in Meshtastic, menu text on OLED displays becomes too wide and sometimes goes off-screen.
Spaces appear visually double-sized, causing menu items to overflow the display width.

This affects displays using both SSD1306 and SH1106 controllers.

Font file

src/graphics/fonts/OLEDDisplayFontsUA.cpp

Cause

In the font Jump Table the space character (ASCII 32) has an excessive width.

Original entry:

0xFF, 0xFF, 0x00, 0x0A // 32 = space

The last byte defines the glyph width in pixels.
0x0A (10 px) is too large for a space character.

Fix

Reduce the width to 3 pixels:

0xFF, 0xFF, 0x00, 0x03 // 32 = space

Result

normal spacing in menu text

text fits correctly on 128×64 OLED displays

Cyrillic interface works properly

Explanation

Each Jump Table entry has the format:

offset_hi
offset_lo
glyph_size
glyph_width

The last byte (glyph_width) determines how many pixels the character occupies on the screen.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions