I-Appliance BBS
The Official Source for Internet Appliance Upgrades and Mods

Click Here!
BBS Main List | Sign In | Sign Up | Search | Help | Linux-Hacker.netReply to Thread | Printer |

Home / MISC Areas / Cameras
Idea for PureDigital camera LCD. Please Read.
Idea for PureDigital camera LCD. Please Read.

New MessageIdea for PureDigital camera LCD. Please Read. (modified 0 times) Shakki
Profile
Hi Group,

I have had, what I beleive to be a bo-diggity idea for the display in the new red PureDigital camera.

Before I tell you the idea let me say that I hoover at electronic design and I am new to PIC programming. I prefer to program the pic PIC in PICBasic Pro (which I own).

Here's what I want to do, and hopefully it will inspire the smart people on this board to help come up with a schematic and Pic software.

I want to use a Pic processor, a memory chip or SD card, and the A015AN02V1 screen to create a... Drum roll please.... Tiny digital picture frame that can be placed on your desk. I think this would be a way cool project and fairly inexpensive to make. Unfortunately when I looked at the PDF for the A015AN02V1 my brain said, DOH!

Any help and or ideas would be greatly appreciated as it is something I'd really like to do but don't have the knowledge to make t a relality.

Thanks for the time and I look forward to your replies!

Albert

09-01-2004 19:56:05

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) mrgreen
Profile
HI -

I am very new to all of this, but I think thats a very cool idea... My first question, since I haven't had a chance to pick up a PV2 yet is what is the size of the screen? Kind of a curiosity question, but as I understand it the screen is only 2X0x200, so that could limit the usefulness, imo...

However, it could also be a very cool little gadget. What thing I would recommend is to at least attempt to use the cameras display controller, memory, and processor to do this. It will eventually be determined what the cpu architechture is, and thus how to compile and replace the firmware. This could be a "simple" first step in creating a new firmware for the camera, as only a few functions (read pic from memory, display it, rinse, repeat) are required.

This would allow for a near total recycling (everything but the lense and cmos would be reused) of the camera as something else useful.

Just my $.02,
Rob

09-02-2004 11:39:22

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) koikoi
Profile
Shakki - While I agree it's a cool idea, I suspect there's a lot of practical difficulty. The most obvious problem I see is that the LCD wants data to be clocked in at about 5.67 MHz, which seems to me to be very fast. If you use a 20 MHz crystal, you have to do better than a new data byte every 4 cycles... I just don't see that happening without more support circuitry (of which I have no idea where to start).

mrgreen - it's 280x220, according to the datasheet. Seems huge, especially considering the size of the screen. There's probably going to be a problem with just reading back old pictures and displaying them, as you'd have to decompress a JPEG (hardware might only do compression) and downsample to 280x220. I think the way the camera works is it keeps a special raw thumbnail of the last picture taken. We'd probably have to hack the firmware to store a thumbnail with each picture.

I think a better first step would be to just get the LCD to display a color - this way, we don't have to worry about massive space/access time for an image. It should just be a matter of hooking up the LCD to the correct power and generating HSYNC/VSYNC (VCOM and V_GL look like they want to vary as well, but I don't understand LCDs well enough). Apologies if someone's already done this, but I don't remember seeing it.

09-03-2004 22:58:54

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) Drmn4ea
Profile
koikoi is right, using the LCD for a hobby project looks like it will be a minor mess, due mostly to the LCD's timing requirements. For example, you can run most PICs with an external oscillator of up to 40MHz (just watch for "but it screws up above 4MHz" in the errata sheets), which because of the 4-clock instruction cycle gives an instruction clock of 10MHz. So this means that even if your PIC code did nothing else except flip a clock line up and down, the maximum rate you could clock at (set line high, then set line low) is 5MHz, still not fast enough to drive the LCD.

But now you've got me thinking....

What probably needs to be done, is to implement a basic "clock data into the LCD from a memory at 5.67MHz" circuit on an FPGA. I guess you could even do this with a bunch of 74LS... chips but this could get messy. Then use your PIC to control the image that's actually in the memory. You of course won't be able to display anything at a video-like frame rate, but this should be fine for static images.

"But how do I update a memory while the FPGA is reading from it?"

There you're on your own. What I would do personally is implement a 'disable' pin on the FPGA, which would float the pins tied to the memory. Then you can rewrite the video display at your leisure with the PIC (nothing is being displayed on the screen at this time), then re-enable the memory access to the FPGA. If you want to get fancy and avoid blacking out the screen while changing the image, there is such a thing as 'dual-port' (or multi-port) memory, which can be read and written at the same time via separate address/data lines. Haven't checked how expensive this stuff is, though. You could also time it so that your PIC races in and changes the video memory during the "blank interval" (the little bit of downtime between writing the last pixel of the current frame, and the first pixel of the next frame), but that doesn't give you very much time at all.

You'll need up to 64KBytes of memory for the 280x220 image, depending on how you store it in memory. Remember that the "pixels" on the LCD are actually individual, staggered RED / GREEN / BLUE dots, not the standard square matrix of any-color pixels you're probably accustomed to. So, your PIC (or PC program talking to it, etc.) will have to do some translation to convert bitmap images, text, etc. to a format that will display correctly on the LCD. The 280x220 refers to these *dots* as far as I can tell from the datasheet; so the 64KByte figure is accurate if you store the data in the logical "1 byte -> 1 dot" way. The LCD only uses 6 bits per dot though; so you have an extra 2 bits per dot where you can store whatever you want (or nothing at all).

What I would probably do (considering I had a nice big FPGA to play with) is use the 6 bits to store an actual "true-color" background image, and use the remaining 2 bits to specify one of four programmable "overlay modes" for that pixel. The FPGA would have to do the overlaying in real-time, but this would allow you to set e.g. an overlay color and mode for each of the 4 possible slack-bit settings.

E.g.: Mode 0: Transparent (do nothing); Mode 1: Set this pixel to user-defined color [Bright Red] (ignore 6-bit color information); Mode 2: Add user-defined brightness (0x26) to 6-bit value before writing it to the LCD...

This way you could display e.g. text (quote of the day, weather reports, time/temperature) over a background image, without altering the original image and without requiring another 64KBytes of expensive memory as a frame buffer to store the original (for when you want to erase/change the text). Changing the entire text from, say, opaque fuschia to smoked-glass transparent would be as simple as writing 1 or 2 bytes to the FPGA (or a couple of the slack bytes at the end of the RAM, which the FPGA will read during the blank interval).

09-04-2004 12:38:27

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) Drmn4ea
Profile
@koikoi (and everyone) : The last page of the LCD's datasheet shows an application circuit that appears to generate all the necessary voltages (including AC) for e.g. V.GL and V.GH from the +3.3V that you supply. They specify a few specific transistors/etc., but I'm guessing a lot of this can be substituted with arbitrarily generic parts.
09-05-2004 21:17:49

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) Hondaman900
Profile
Hey, anyone know how to use a PV-2 LCD display to show text? I want to make a huge in-car MP3 player from an old PC. This would make a cool display if I could interface & program (vb.net) for it.

Any suggestions?

09-06-2004 17:18:15

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) aflong05
Profile | Email
hi, i actually have a fox2 digital camera that uses this particular screen you guys are talking abo8ut. however, a couple of you said they are inexpensive in a way. the only place i can find these screens sells them for $110! if you know of some way for me to get one of these screens cheap please let me know!! i got it as a birthday present for my fiance and she broke the screen but the camera still works and it would be simple to replace. so if any of you could clue me in to where to find these and maybe email it to me at lustin50@yahoo.com i would appreciate it!!! thank you.
just signing up to get a question answered
01-14-2005 18:46:31

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) ygfperson
Profile
get a pv2 pure digital disposable camera with the lcd (available at cvs among other places), and canabalize one. the camera costs a little less than $20
01-14-2005 21:34:01

New MessageRE:Idea for PureDigital camera LCD. Please Read. (modified 0 times) aflong05
Profile | Email
awesome...ive never heard of those before but ill try to find one. thank you!
01-15-2005 09:36:30

Reply to Thread | Printer |
All times are PSTPowered by UltraBoard v1.62



Copyright © 2000, Netmake Inc. All Rights Reserved.
See Terms and Conditions for more information.




i-opener opener laptop notebook computer help drivers dll free windows dos repair fix linux mac macintosh 2000 95 98 nt pc configure hardware software sound video netscape explorer network networking lan wan software cmos fat bios printer card mouse modem ide scsi cd rom controllers scanner tape hard drive cgi scripts source code mp3