[Lcdproc] Patch: Driver for VFD in MonCaso 320
Wolfgang Hauck
wolfgang.hauck at gmx.de
Wed Oct 12 23:29:38 UTC 2011
Am 12.10.2011 00:05, schrieb Markus Dolze:
> On 20.09.2011 01:35, Wolfgang Hauck wrote:
>> Am 15.09.2011 08:23, schrieb Markus Dolze:
>>> On 13.09.2011 01:59, Wolfgang Hauck wrote:
>>>> Hi all,
>>>>
>>>> hopefully this is the right board to submit a new driver.
>>>>
>>>> The Moncaso 320
>>>> (http://moneualusa.com/?option=com_content&view=article&id=158&Itemid=159)
>>>> contains a small one-line-display. The cases MonCaso 312/320 are
>>>> discussed in the thread
>>>> http://ubuntuforums.org/showthread.php?t=1536934. By reverse
>>>> engineering I have been able to write a very simple display driver,
>>>> which is attached to this e-mail as patch to LCDproc 0.5.4.
>>>> Unfortunately, I have no information about the full functionality of
>>>> the VFD (as e.g. icons).
>>>>
>>>> The driver works quite well with VDR
>>>> (http://en.wikipedia.org/wiki/Video_Disk_Recorder) and some supportive
>>>> scripts I have written.
>>>>
>>>> By the way: Is there anyone with some more information about the VFD
>>>> found in the MonCaso 320? It is hard to get a technical manual.
>>>>
>>>> I tried my very best to adhere to your conventions. Let me know if
>>>> some changes or adaptations are necessary.
>>>>
>>>> Kind regards,
>>>> Wolfgang
>>> Hello Wolfgang,
>>>
>>> thank you for your submission. I will take a look at it although this
>>> may take some time (probably some weeks).
>>>
>>> Regards,
>>> Markus
>>>
>> Hi all!
>>
>> Markus, thank you for your reply.
>>
>> Meanwhile got some feedback, which I added to the patch.
>>
>> Changes:
>>
>> * The configure script is now part of the patch file. The command
>> autoconf had to be executed in the version before.
>> * Settings of serial port were only correct if LIRC was running
>> before. Now, the driver can be configured to configure the port
>> on its own.
>> * Added some parameters controlling the collaberation with other
>> drivers using the same serial port (particularly LIRC).
>>
>> Further feedback is welcome!
>>
>> And again, I am looking for more information on this device. If
>> anyone should know the one or other thing, please let me know.
>>
>> Regards,
>> Wolfgang
>
> Hello Wolfgang,
>
> I had a look at both versions of the driver. The driver looks fine
> (have not yet compiled it) and it quite simple.
>
> Hoewever, setting the driver to wait for the socket by default is not
> appreciated! To prevent configuration mistakes, the driver should not
> wait for something other than the display on startup unless the user
> decided it shall do so.
Here I am in a dilemma. For a clean solution, I would have to write an
own server managing the display resources, which is used by other
clients as LIRC or LCDproc. But this is much more work, and more
important, I have no idea how to deploy such a server into the Linux
world considering existing solutions. So I decided to pursue an
acceptable alternative.
This alternative approach shows two flavours:
1. By default, the LCDproc driver assumes the display has already
been initialised (e.g. by LIRC). Then the LCDproc driver has to
coordinate in some way with - say - the LIRC driver.
1. Simple solution: The LCDproc either ignores the initialising
driver completely, blocks until the initialisation has
finished (wait for socket, which is the submitted solution),
or runs into a timeout when waiting for a socket.
2. Complex solution: Setup a thread monitoring the initialising
driver, and only after initialisation the LCDproc driver
functions work successfully, otherwise they log an error and
report a failure.
2. By default, the LCDproc driver initialises the display itself. But
this may interfere e.g. with LIRC. The initialisation produces a
display response that is misinterpreted by LIRC as remote control
button press.
As I expect the parallel usage of LIRC and LCDproc as the most frequent
use case, I tried the solution 1.1. with blocking wait.
So, here is what I can offer:
1. LCDproc assumes an initialised display by default (keeps
configuration logic as submitted):
1. Exit after a defined timeout if no initialisation has
occurred, and print error to system log file.
2. Establish a monitoring thread. Is pthreads allowed in
LCDproc development?
2. LCDproc initialises itself the display by default (inverts
configuration logic as submitted), and locks the serial port such
that a concurrent [LIRC] driver or LCDproc itself fails.
So, which way do you want me to go? 1.1. (disadvantage: your concerns
are only mitigated), 1.2. (disadvantage: LCDproc is addressable but
probably not ready) or 2. (disadvantage: a frequent use case does not
work out of the box)?
> Please do not send in the configure script. For developers the
> configure script should always be regenerated using 'sh autogen.sh'
> (if you use a release you may download autogen.sh from
> http://lcdproc.cvs.sourceforge.net/viewvc/lcdproc/lcdproc/). Users
> would additionally need the updated Makefile.in files, too.
>
> Hint: You can save yourself some typing by using '-X diff-ignore' to
> your diff command (get it from CVS web as above). It contains a list
> if all files to ignore.
Thanks for the hint. I have already been looking for this file.
Regards,
Wolfgang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.omnipotent.net/pipermail/lcdproc/attachments/20111013/42a22ab7/attachment.html>
More information about the LCDproc
mailing list