Это линейный принтер (lp). Он может просто печатать напрямую текст, который в него отправляют (т.е. просто открываете нужный порт и шлёте в него байтики).
С помощью escape-последовательностей можно переключать принтер в графический режим и управлять дополнительными фичами, специфическими для POS (например, открывать крышку кассы. Или автоматически печатать штрих-код).
Т.е. в простейшем случае - переводите принтер в нужную кодовую страницу с помощью esc-последовательности и потом просто шлёте в него текст в нужной кодировке.
Если воспользоваться драйвером, то все возможности принтера сводятся к графической печати (это растровый фильтр CUPS. И, кстати
@ntkt не совсем прав насчёт поддержки PostScript. PPD файлы в cups это своя собственная сущность, так у них принято описывать вообще все принтеры.) Тогда у вас появляется "стандартный" принтер с форматом бумаги шириной 58 мм. Весь рендеринг в растр берёт на себя CUPS, а фильтр лишь парсит настройки печати и затем добавляет нужные escape-последоватльности для вывода растра.
К слову, фильтр, похоже, был написан индусами :)
Настройки в PPD не показывает, а сам вылетает. Да и к тому же предоставлен только в виде 32-битного бинаря. Я провозился с ним пару дней, пытаясь настроить. В итоге психанул и написал свой фильтр. Он работает.
https://github.com/klirichek/zj-58