dzz

iMON VFD по-русски

Oct 18, 2008 14:41

Научил iMON-овский VFD кириллице!


Read more... )

htpc, linux

Leave a comment

ext_488923 April 4 2011, 17:49:16 UTC
Есть soundgraph imon pad ip\vfd; Mythbuntu 10.04 (mythtv 0.23); XBMC 10; LCDproc 0.5.4.
Во всех программах дисплей работает, НО везде вместо русских букв - ?????, что не радует.
В инете крайне мало информации на эту тему. Нашел решение только под VDR, но мене это не подходит. У Вас тоже непонятно где и что ковырять. Не могли бы поподробней?

Reply

dzz April 4 2011, 19:03:51 UTC
Да не вопрос :)

Сама кодировка приведена в этом посте.
Далее был написан патчик к LCDproc, позволяющий переводить русский кусок UТF-8 в это безобразие. По-хорошему, нужно было ещё заставить оболочку mythbuntu писать русский текст на LCD в UTF-8, но до этого руки не дошли.

Патч берётся здесь: https://sourceforge.net/projects/imon-vfd-cyr/files/

Reply

ext_488923 April 6 2011, 20:37:19 UTC
Что-то у меня ничего не выходит. И с Вашим патчем собирал и 0.5.4 пробовал изменять - сплошные ??? вместо русского. Я на страничке в sourceforge.net подробнее написал, что делал.

Reply

dzz April 6 2011, 20:52:22 UTC
Странно. Должно работать с любым юникодным выводом. В LCDproc кириллица точно unicod-ом уходит?

Попробуйте проверить корректность кодовой таблицы следующим образом:

#!/usr/bin/python
# -*- coding: utf-8 -*-

from freevo import pylcd

myline=u'< И каждый вечер, в час назначенный (иль это только снится мне?) девичий стан, шелками схваченный, в квадратном движется окне > < спокойно ночи, всё будет хорошо >'

def lcd_write(strix):
x=pylcd.client()
x.connect()
x.screen_add('s1')
print x.widget_add('s1','w1','scroller')

x.widget_set('s1','w1', u'1 2 16 2 m 2 "%s"' % strix)
raw_input()

lcd_write(myline)

Reply

dzz April 6 2011, 20:55:56 UTC
Заодно можно проверить корректность используемой таблицы знакогенератора:

#!/usr/bin/python
# -*- coding: utf-8 -*-

from freevo import pylcd

myline=u'< И каждый вечер, в час назначенный (иль это только снится мне?) девичий стан, шелками схваченный, в квадратном движется окне > < спокойно ночи, всё будет хорошо ( ... )

Reply

dzz April 6 2011, 20:57:53 UTC
Кроме питона для прогона теста нужен модуль freevo

Reply

ext_488923 April 7 2011, 12:53:16 UTC
Python установлен. Freevo установил полностью, правда не настраивал толком (квадраты вместо букв).
Вот что выдает консоль на скрипты:
------------
htpc@htpc-desktop1:~/tmp/0$ python 1.py
success

self.conn.write(widget_set s1 w1 1 2 16 2 m 2 "< И каждый вечер, в час назначенный (иль это только снится мне?) девичий стан, шелками схваченный, в квадратном движется окне > < спокойно ночи, всё будет хорошо >"+'
') failed
------------------
И висит пока enter не нажмешь. На дисплее в промежутке между ..LCDd server... и датой временно появляется окошко с мигающим сердечком.

Второй скрипт, походу, вообще не отрабатывает.
--------------------
htpc@htpc-desktop1:~/tmp/0$ python 2.py
success
--------------------
Остальное также как и на 1 скрипте.

Я, кстати, писал на sourceforge.net, что у меня при выгруженном LCDd на команды типа (echo $'/128/..' >/dev/lcd0) выводятся символы не соответствующие Вашей таблице из заметки. Например Б у вас 128, у меня 200.
Может в этом причина?

Reply

ext_488923 April 7 2011, 12:56:16 UTC
И еще. Если скриптам Брейк делать - вот что пишет:
----------
htpc@htpc-desktop1:~/tmp/0$ python 1.py
success

self.conn.write(widget_set s1 w1 1 2 16 2 m 2 "< И каждый вечер, в час назначенный (иль это только снится мне?) девичий стан, шелками схваченный, в квадратном движется окне > < спокойно ночи, всё будет хорошо >"+'
') failed
^CTraceback (most recent call last):
File "1.py", line 17, in
lcd_write(myline)
File "1.py", line 15, in lcd_write
raw_input()
KeyboardInterrupt
-----------------------
htpc@htpc-desktop1:~/tmp/0$ python 2.py
success

^CTraceback (most recent call last):
File "2.py", line 90, in
lcd_write(myline)
File "2.py", line 88, in lcd_write
raw_input()
KeyboardInterrupt

Reply


Leave a comment

Up