Shop OBEX P1 Docs P2 Docs Learn Events
Parallax, please fix your VGA DACs. — Parallax Forums

Parallax, please fix your VGA DACs.

Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
edited 2012-06-08 05:00 in Propeller 1
I'm a bit frustrated that Parallax continues to deliver products with the wrong resistor values in its VGA DACs. Starting with the original Propeller Demo Board, and continuing through the new Prop BOE, the VGA DAC produces too-high voltage levels on the RGB outputs, which results in washed-out colors. This is most disappointing on the PropBOE, an otherwise excellent product, since I brought this subject up well before it went into production:

Here are two photos produced from the same VGA monitor, driven by identical programs. The only difference is that one is from a new, unmodified Prop BOE; the other, from a Prop Demo Baord that I modified to produce the correct 0.7V P-P output levels.

First the Prop BOE with the wrong resistors:

attachment.php?attachmentid=93049&d=1338252199

Now the Demo Board with pull-downs to give the correct levels:

attachment.php?attachmentid=93048&d=1338252199

You will notice that the mid-tones in the upper image are washed out, because they saturate and reduce the available color gamut to 27 colors from what should be 64 colors. In the bottom image, the entire 64-color gamut is available, rendering much richer mid-tones. Fortunately, it's an easy problem to fix. Although a fully-correct solution (i.e. one with the proper 75-ohm source impedance) would entail a board redesign, just correcting the voltage levels is as easy as substituting different resistor values in the existing DACs.

I do hope that someone from Parallax will take notice of this post and at least let us know that they're paying attention. But I'm asking for more than that: please substitute the correct resistors in subsequent production runs of all the affected boards.

Thanks,
-Phil
571 x 430 - 62K
569 x 427 - 60K
«1

Comments

  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2012-05-28 17:57
    Phil,

    Parallax isn't the only one listening here...

    I've dug through your threads on this, but could you sum up your "correct" circuit here?

    Thanks
    OBC
  • Ken GraceyKen Gracey Posts: 7,400
    edited 2012-05-28 18:09
    Oh my PhiPi. . . been eating too many of Browser's shrimp this weekend? You don't have to eat them fully frozen.

    Considering you've spent the last several weeks working with VGA optimization I'm confident you're making the right recommendations. I didn't realize that we had a problem with our resistor values in the VGA circuits. In fact, first I've heard about this problem. I'll need to understand exactly what changes you are suggesting so we can modify some boards and test it ourselves.

    Let's take a look at the VGA offering and see what we can do:
    • Propeller BOE. Changes are easy; this board is made in Rocklin in 500-1000 unit builds. Sounds like a bill of materials and source change that we can make immediately for the next build. Product Owner is David Carrier.
    • Propeller Demo Board + Propeller Professional Development Board. Built by Parallax Hong Kong, quite infrequently (once or twice a year). Will be easy to change but the propagation throughout our channels will take time (4-12 months). Product Owner is Chip and Chris.
    • Propeller Proto Board. Great timing for this one - we've actually redesigned this product recently for high-volume manufacturing in Rocklin starting this summer. Changes should be easy as well. Product Owner is Kevin.
    The person who will make it all happen is Jessica. Since today is Memorial Day and tomorrow we're back at Parallax I'll draw her attention to this thread. We'll need to verify your findings with our own engineering before acting on the changes.

    No time like the present.

    Thanks Phil,

    Ken Gracey
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2012-05-28 18:14
    I'll second this. I've added the new resistors to a few recent board designs. They work better and the total extra cost is only a few cents. Oh and btw amazing work on the slideshow bitmaps.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-28 18:28
    Ken Gracey wrote:
    Oh my PhiPi. . . been eating too many of Browser's shrimp this weekend? You don't have to eat them fully frozen.
    Aha! My strident tone has produced results! :) (Seriously, on how many other company forums does a post receive a response from the corporate CEO -- and so quickly -- on a holiday?!!)

    Ken, I would start with the values on the left-hand side of post #7 in the above-referenced thread. Because the Prop BOE VGA outputs are buffered, the effect of internal resistance will be different from what was discussed in that thread, so some jiggering of values may be called for. But it's simple to observe the output levels on a scope when driving a 75-ohm load in order to optimize them.

    Thanks for bringing this to the dev team's attention! (And I'll remove the [UNSOLVED] label from the title, since a solution is now in progress.)

    -Phil
  • jmgjmg Posts: 15,183
    edited 2012-05-28 18:29
    It seems there are two video standards, RS-343A and RS-170, one is 700mV and one is 1V.
    See
    http://www.analog.com/static/imported-files/data_sheets/ADV7125.pdf
    http://www.analog.com/static/imported-files/application_notes/478955693AN205.pdf

    Some systems generate Sync on Green and for those a 1V drive capability is needed.(700mV of video)

    Q: Is the 700mV/1V difference, outside the adjustment range of Brightness/Contrast on most Monitors ?
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-28 18:40
    jmg,

    The two standards you cited are for composite video, not VGA.

    -Phil
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 20:01
    Phil: While this change is being done, it would be prudent to also have the composite video (TV) done as well.
    You pics showup the problem nicely. And yes, while we have discussed this on the forum, I guess it was easily missed by Parallax. Nice to see such a quick response.

    I did up a spreadsheet to calculate optimum values (always on the other computer) - so I will post this shortly.
    Perhaps we can agree to a preferred standard set of values.

    I would also like to discuss the possibility of using 8 bits for color and their format .. which colors get 3 bits and which color gets 2. HS & VS can be done on different pins - or one with an XOR and resistors.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-28 20:13
    Good point, Cluso. The resistor values provided by the standard composite video circuit produce the correct voltage levels, assuming a 75-ohm load, but the wrong source impedance. It's typically not a problem, unless you're driving an unterminated load. Correcting this, unfortunately, would require changes in Parallax's PCB layouts across the board. But I do recommend that it be done in all cases at design reevaluations, which I assume take place periodically. 'Turns out, I have a thread on that subject, too:

    -Phil
  • Ken GraceyKen Gracey Posts: 7,400
    edited 2012-05-28 20:31
    Aha! My strident tone has produced results! :) (Seriously, on how many other company forums does a post receive a response from the corporate CEO -- and so quickly -- on a holiday?!!)
    -Phil

    Well, I can't be a CEO because they wouldn't be reading forums on a weekend. Don't they go golfing, to the opera, or do something else of artistic or cultural interest? zzzz zzzzz

    Really, we'll get to this early this week. Expect a reply from one of our top brass when she has the opportunity to review the situation. In the meantime, this thread can bake a bit while you and the fellow engineers reflow a few ideas for us.

    Ken Gracey
  • jazzedjazzed Posts: 11,803
    edited 2012-05-28 20:50
    Ken Gracey wrote: »
    .... you and the fellow engineers reflow a few ideas for us.


    I swear the first time I read this it said "reflow engineers" :) Better video in any form is always welcome.
  • Ken GraceyKen Gracey Posts: 7,400
    edited 2012-05-28 21:03
    jazzed wrote: »
    I swear the first time I read this it said "reflow engineers" :) Better video in any form is always welcome.

    Well, I've had to do that once or twice too. There comes a time in every project. . .

    Ken Gracey
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 21:28
    Ken Gracey wrote: »
    Well, I can't be a CEO because they wouldn't be reading forums on a weekend. Don't they go golfing, to the opera, or do something else of artistic or cultural interest? zzzz zzzzz

    Really, we'll get to this early this week. Expect a reply from one of our top brass when she has the opportunity to review the situation. In the meantime, this thread can bake a bit while you and the fellow engineers reflow a few ideas for us.

    Ken Gracey
    No Ken. They go golfing on Tuesday and Thursday mornings, sailing on Wednesday afternoons, and the weekends are their own time ;)
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 21:41
    Here is the spreadsheet I used to calculate the values, and a print of them.
    VGA: 240R & 510R with 130R to gnd
    TV: 187R, 402R, 825R with 187R to gnd

    vga_tv_resistors(2).xls
    BTW This spreadsheet was derived from Phil's spreadsheet - thanks Phil.

    VGA-TV-values(2).JPG
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 21:51
    These values aren't bad using more standard values rather than the tighter 1% values...
    VGA: 240R & 510R with 120R to gnd
    TV: 180R, 390R, 820R with 210R to gnd
    vga-tv-values(2.1).JPG
    947 x 304 - 73K
  • rwgast_logicdesignrwgast_logicdesign Posts: 1,464
    edited 2012-05-28 22:06
    Phil, would you mind sharing what the correct way to do the vga dac is? I.E not just changing the resistor values but the one you mention that would force parallax to redesign there layout? I ask because im currently rebuilding a board with sound TV and VGA out on it. Just trying to clean up my prototyping circuits a little from when I first started and I would definitely like to implement the best VGA circuit I can. Unfourtantely its a little late for the TV out, but maybe I can do a little reworking and still keep the board nice and clean.

    I was wondering would it be possible to use something like an 8 bit r2r dac on vga/sound and if so would there be any improvement on images/color/capability?? I know this is probably a dumb question and the answer is no but I thought id ask, im still pretty newbish to electronics so sometimes I just gotta ask things even if I think there dumb just to verify and make sure im not missin out.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-28 22:17
    If you're designing from scratch and driving the resistor DAC directly from the Prop, I would recommend values of 240 and 510 ohms for each of the R, G, and B output pairs, with a 130-ohm resistor to ground. Here's a spreadsheet that shows the theoretical results:
    I was wondering would it be possible to use something like an 8 bit r2r dac on vga ...

    Not unless you don't want color, and just want to produce 64 gray levels. Each color output is only two bits, so an 8-input R2R network would not help with that.

    -Phil
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 22:33
    Here is 3bit VGA values
    VGA:287R, 604R, 1210R with 130R to gnd.

    Phil, I note that without the termination resistors the output voltage goes higher. Will the 75R termination on the screen compensate???
    (i.e. what is the real effect without the termination resistors? Do the ladder values require changing if the termination resistors are missing?)
    vga-tv-values(vga3bit).JPG
    947 x 166 - 46K
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-28 22:41
    Cluso99,

    If you're modifying an existing board that uses the standard Parallax values, you can't simply take the values from the three-resistor circuit, then omit the resistor to ground and expect it to work. You also have to increase the DAC series resistor values, since they're driving a lighter load. Just use the spreadsheet and set the grounded resistor to 1_000_000. Then adjust the other two values to get the right output. (Start with 430 and 820 ohms.)

    Of course, it all depends on the internal resistance of the driving chip. We know what it is for the Prop (27 ohms), but the Prop BOE buffers the Prop output before applying it to the DAC. So the internal resistance value there will be different.

    -Phil
  • Cluso99Cluso99 Posts: 18,069
    edited 2012-05-28 22:52
    Thanks Phil. It's40 years ago since I did my analog training and very little use since then.
    I was not aware the Prop BOE had buffers so thanks for the heads up.
    BTW I placed an acknowledgement in my earlier post for my spreadsheet since the basis is totally yours :)
  • jmgjmg Posts: 15,183
    edited 2012-05-29 00:29
    I ask because im currently rebuilding a board with sound TV and VGA out on it. Just trying to clean up my prototyping circuits a little from when I first started and I would definitely like to implement the best VGA circuit I can.

    If you want to cover all the bases, then allowing a pull down / shunt allows you to target a source impedance of 75 Ohms, if you want.

    That source-terminate is somewhat optional (as shown by all the circuits that work fine without it...) and note it does cost additional power.

    - eg Double terminated needs 18.6mA per Colour, but single terminated needs 9.3mA per colour to give 700mV change in 75 ohms


    Pin resistor calculations should include the Pin impedance, if you want to be precise.
  • RaymanRayman Posts: 14,827
    edited 2012-05-29 09:25
    If the problem is showing a dithered photo, I think you can use the existing DAC and modify the levels you use to create the image...
    I've played around with this a little and using actual displayed levels to form your palette instead of ideal levels improves the result.

    This is something like a software fix to the problem...
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-29 09:35
    Rayman,

    That's true. What you have to do is limit the gamut for each RGB component to 0, 50, and 100% -- instead of 0, 33, 66, and 100%. Then convert 0, 50, and 100, to %00, %01, and %10, ignoring the useless %11. That gives you 27 colors to work with, instead of 64. And even then, %10 saturates to 0.75V. I haven't done that, though, because I've fixed the DACs on two of my boards and don't want to see darkened output. It's better just to fix the hardware.

    -Phil
  • RaymanRayman Posts: 14,827
    edited 2012-05-29 09:42
    I'm not sure it's quite that bad... I think the ideal levels would be 0, 85, 170, 255. At least looking at grey scale, it's more like 0, 95, 192, 255 out of demo board dac.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-29 09:58
    That depends on how well the attached monitor is able to adjust to super-saturated voltage levels. (And please don't say "it's [not] quite that bad," lest it dampen Parallax's resolve to fix the problem. :) )

    -Phil
  • RaymanRayman Posts: 14,827
    edited 2012-05-29 13:46
    Getting graphics to come out as expected would be a lot easier if the DAC were fixed.
  • Invent-O-DocInvent-O-Doc Posts: 768
    edited 2012-05-29 16:07
    Also, don't forget audio. I think I've seen a couple posts on how parallax's choice of resistors/cap for d/a on audio output greatly restricted the available frequency range for audio. I don't know if this was addressed in BOE design or not.
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2012-05-29 16:13
    Also, don't forget audio. I think I've seen a couple posts on how parallax's choice of resistors/cap for d/a on audio output greatly restricted the available frequency range for audio. I don't know if this was addressed in BOE design or not.

    Yes good point. Plug in the RC values into an online filter calculator for a cutoff of, say, 16khz, and you get quite different values to the parallax ones. No change in cost - just different components.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2012-05-29 16:22
    The Prop BOE uses a second-order Sallen and Key active filter for each channel of stereo audio. Here's a plot of the frequency response (based on an online calculator):

    attachment.php?attachmentid=93103&d=1338333757

    The -3dB cutoff frequency is computed to be 19.1kHz.

    -Phil
    435 x 142 - 4K
  • GordonMcCombGordonMcComb Posts: 3,366
    edited 2012-05-29 16:43
    Ye old problem of including the extra 0.3V composite uses for sync to the P-P span of active video for VGA. I've done that once or thrice.

    -- Gordon
  • RaymanRayman Posts: 14,827
    edited 2012-05-29 17:43
    Phil, have you tried turning down the brightness on a flat panel LCD monitor to see if you get the same effect as your pull-down resistors?

    Never mind... Tried it on mine and it didn't really make a noticeable difference...
Sign In or Register to comment.