LCDproc development and user support list

Text archives Help


[Lcdproc] Ruby LCDProc Library and weird display bug


Chronological Thread 
  • From: tfangio at fractech.net (Topher Fangio)
  • Subject: [Lcdproc] Ruby LCDProc Library and weird display bug
  • Date: Thu, 18 Sep 2008 00:45:47 -0500

Hello all,

I have just released version 0.1.0 of the library that I have been working on
for some time
and I would really love to get some feedback from the community. The design
goals are to
make it very easy for developers to create programs written in Ruby that
operate any LCD
connected to LCDd in an object-oriented way, and for me to learn more about
Ruby.

It can be downloaded from https://sourceforge.net/projects/lcdproc-ruby/

To use the library, first install Ruby (if you don't already have it),
download the latest zip
file from the site above and extract it. Then, open a console and cd to the
extraction
directory and you can begin playing around.

The most useful things are the examples, tests, and scripts.

To run an example, type "ruby examples/clock.rb" or any other program in the
examples
directory (2 as of right now).

To run a test, simply type "rake -T" to see a list of the tests and "rake
test:basic" to
execute it.

You can also use the scripts which provide some great utilities to LCDProc.

scripts/telnet.rb allows you to connect to a LCDd server and type commands.
It's fairly
simplistic in that you can't backspace or use the arrow keys, so be careful
of what you
type, but it does the trick.

scripts/console.rb is an interactive ruby console with all of the
LCDProc-Ruby libraries
loaded. It is more useful than telnet.rb in that it uses irb as the
underlying base, so it
supports backspace, previous commands, and tab completion; however, since it
is an
irb console, you can't simply type LCDProc commands, you have to use the
library.

The documentation is still in the works, but provides enough information to
get started.
Take a look at the LCDProc::Client class, or the examples, to see how to
connect. By
default, Client.new attempts to connect to localhost on port 13666, which
should work
for most people.

A few notes:
1) I have only one LCD to test with, so if you discover any problems, I
would greatly
appreciate any help you can provide as to how to fix it (patches would
be great)!

2) I have tested this with a fairly recent version of LCDProc, 0.5.2, but not
the CVS
version.

3) I am sure there are bugs that I will find, in fact, I think there is one
with the
KeyEvent, so if it gives you any trouble, it's probably broken...I'll fix
it soon.

4) If there is something that the library does not support that you really
really need
and can't wait for me to implement, you can always call send_command
yourself
and send regular LCDd commands to the server, however, I would highly
recommend against it as it should be fairly easy to implement it
correctly.

Please let me know if you have any problems by e-mailing me directly or
posting in
the forum provided by SourceForge. I don't want to hijack this mailing list
for my
own project ;-)

=====

Now...on to the question I had at the moment for this list:

When I was creating the clock example for my library, I noticed that if I
added a
"num" to the screen it began blinking rapidly. It is even more noticeable if
I add
a "num" of 10 (colon) to the screen as you can see it flicker.

I tried sending a regular command directly to LCDd instead of going through my
library and experienced the same issue.

How can I assist in troubleshooting this problem? Might it be a problem with
the
driver that I am using (CFontzPacket) or possibly the display itself? I
haven't noticed
any other widgets causing this problem.

I can attach my LCDd.conf if needed, but it is pretty standard.

I have a CrystalFontz CFA635 display connected via a serial port to a debian
server
running kernel 2.6.18-4-686.

Thanks for your help and I hope I can help contribute to this project some
more!

(I am a software developer and I know a tiny bit of C, so if you can point me
in
the correct direction, I can probably help debug the issue).

CONFIDENTIALITY NOTICE: This email message and any attachments hereto are
intended only for use by the addressee(s) named herein and may contain
information which is legally privileged, confidential and/or exempt from
disclosure under applicable law. If you are not the intended recipient, or
an authorized representative of the intended recipient, of this email
message, you are hereby notified that any review, dissemination,
distribution, copying, or use (including any reliance thereon) of this email
message, and/or any attachment hereto, is strictly prohibited.

Although this transmission and any attachments are believed to be free of any
virus or other defect that might affect any computer system into which it is
received and opened, it is the responsibility of the recipient to ensure that
it is free from virus or other defect and no responsibility is accepted by
the sending company, its subsidiaries and affiliates, as applicable, for any
loss or damage arising in any way from its use.

If you have received this email message in error, please immediately notify
the sender by return email and permanently delete from your system, the
original and any copies of this email and any attachments hereto and any
printout hereof. Unauthorized interception of this email is a violation of
federal criminal law.



  • [Lcdproc] Ruby LCDProc Library and weird display bug, Topher Fangio, 09/18/2008

Archive powered by MHonArc 2.6.18.

Top of page