Jump to content
SiLic0ne t0aD

New Coleco RGB board?

Recommended Posts

15 hours ago, Falonn said:

It took some work getting the PAL CV back up and running.  There was a mostly-installed-but-incorrectly-working composite mod that I had to strip back out and restore to original condition.  Then, it just took tapping the five pins right off the VDP and the picture you see above worked immediately.  I fear there are more things wrong with this PAL unit---the controller was completely unresponsive and it seems like the '2' button is being held constantly---but that's not what we're here to test! 🤣

That's probably blown input ICs (74LS541), if you care to bring it up to playable condition again :)

Share this post


Link to post
Share on other sites

The good news: the v1 PCBs arrived today, I built one, tested it on my also-just-built 3D printed pogo-pin jig, and it worked beautifully.  That confirms I at least copied my hand-drawn schematic into Eagle correctly, hehe.

 

v1.thumb.jpg.749b5b9db8f85f33bff593af2355d731.jpg  v1-jig.thumb.jpg.5305266f125540ddb3864ed28ba4ffe1.jpg

TSSOP is not for the faint of heart or shaky of hand.  Sheesh.  (Also: check out that solder ball on C11!) :D

 

Everything looked great on the Framemeister and OSSC.  The subtle overshoot was improved, making the L9 bypass even more optional (though still a readily visible improvement).

 

The bad news: Those through-holes are way too small to actually install on the back of the Colecovision board.  In the best case (the VDP's pins aren't bent at all), it can fit over them, but the standard "Prototype"/"Super Swift" stackup from OSHPark is still 1.6mm thick, which completely covers the remaining pin stick-out, so it'd be extra tricky getting solder down there.

 

So, the next step---sending a few out to installers with way more Colecovision revisions to test against than I have access to---is going to have to wait on another run of boards, unfortunately.

 

The silver lining: this means the fifty or so small improvements that MrPix suggested will also make it into the wider testing.  v2 will have bigger holes and I'll try the "2oz-0.8mm" OSHPark stackup this time which cuts the board thickness in half.  That should let the VDP pins stick through a little farther, too.  Waiting on those also gives me a little bit of time to get a few more parts here.  It occurred to me that I don't have any zero-ohm SMD "jumper" resistors (in any size), so I wouldn't have been able to build any test boards in the Genesis 2 configuration without resorting to "little bits of loose wire wedged into solder paste"-style methods.  And now I'll have the time to test 2x higher value resistors on those divider networks to drop the current a little bit more (while still avoiding color smearing).

 

So... same time, same place in two weeks, I guess.  Sorry for the wait, everyone! 😕

 

(Coming from a software background, all this waiting for fabrication and shipping is maddening.  I'm used to pressing a button and seeing my changes immediately.) :D

 

  • Like 4
  • Thanks 1

Share this post


Link to post
Share on other sites

I just received the latest design from Falonn, and it's good enough that I have decided to assemble his board instead of re-implementing it in 4 layers. He's done a spectacular job of managing signal quality in two layers, and brought his A game on the ground and power fills - so I feel confident his 2-layer design would perform as well as any 4-layer design. We're just in final clean up and optimisation now. Crossing the I's and dotting the T's :P 

I've started ordering components.

  • Like 2

Share this post


Link to post
Share on other sites
On 5/27/2020 at 9:46 AM, emmanuelf said:

Did you tried 150k range or even more before the AOP ?

It should give you the best of both world.

Super high values result in visible smearing that would be worse with 720 or 1080 signals - this design can work all the way up there without difficulty. We've designed the board with that in mind. There might be some resistor/capacitor value changes between U3 and U6, but we're going to be conservative. Better to waste 20mA than sacrifice signal quality even in edge use cases.

 

  • Like 1

Share this post


Link to post
Share on other sites

I just modeled it. 150K before U3 would make the signal path very noise prone. It would emphasize any differences between channels in U3. It wouldn't add anything to signal quality. Right now it's working near its full spec range, which is ideal to optimize the S/N ratio. I can see what your thought is though and Falonn did a lot of work in that area of the circuit.

I think you'll be very happy with the results.

I'm thinking of redesigning my S-Video and composite board to attach to this to get a VERY clean composite and S-video output for those who want that. I might even be able to fit it on the same board... However, that would require different NTSC and PAL versions.

Share this post


Link to post
Share on other sites
Posted (edited)

Yes 150k is too much, did you try your simulation with 15k/30K/60K range ? It should cut down the current, not disturb the 4053 and not introduce noticeable error due to Ib.

But it's nitpicking.

Edited by emmanuelf
correction.

Share this post


Link to post
Share on other sites
20 minutes ago, emmanuelf said:

Yes 150k is too much, did you try your simulation with 15k/30K/60K range ? It should cut down the current, not disturb the 4053 and not introduce noticeable error due to Ib.

I did some back of the envelope calculations and the current drop is 26-30mA with a 10K resistor, and negative effects start showing up around 25K. While the cost of adding the resistors is small (0.3 cents?) the reduction in heating is also small - about 1.5-2%. This is at the coolest end of the board, with a very well traced component that will draw and dissipate heat quickly.

20 minutes ago, emmanuelf said:

But it's nitpicking.

Well, maybe, but waaaay better to do that now than when they've been made already! :D I'm the same way! Yes, it brings a little, but I'm not sure it's worth the trade-offs. It's close though. Let's see what Falonn thinks when he wakes up :P 

Share this post


Link to post
Share on other sites

To be sure, what I've had in mind was to put the dividers before the MAX4395, with same ratio but higher values, not adding a resistor.

Share this post


Link to post
Share on other sites

I already suggested raising the overall impedance of two of the dividers, and it's just a matter of seeing what maintains the balance without adding a hue. I personally like that the dividers and caps are right before the LMH1251, which is the highest power draw component and can easily sink twice the current it currently draws. I've gone to a lot of effort to make sure it has good thermal relief.

Share this post


Link to post
Share on other sites
18 hours ago, MrPix said:

I just received the latest design from Falonn, and it's good enough that I have decided to assemble his board instead of re-implementing it in 4 layers. He's done a spectacular job of managing signal quality in two layers, and brought his A game on the ground and power fills - so I feel confident his 2-layer design would perform as well as any 4-layer design. We're just in final clean up and optimisation now. Crossing the I's and dotting the T's :P

MrPix is a sorcerer!  Even though I'm the only one that has technically drawn a trace on this thing, I'm not sure how many dozens of suggestions it takes before someone deserves co-author credit.  Whatever the number, we're well past it on this board!  I can't believe how much his help has improved the electrical characteristics of this thing without fundamentally changing the schematic.

 

13 hours ago, emmanuelf said:

To be sure, what I've had in mind was to put the dividers before the MAX4395, with same ratio but higher values, not adding a resistor.

Sorry, when you asked this a few weeks ago I thought I had answered it.  Some of the questions are covered in the initial post, but here is the summary:

 

The reason for adding the MAX4395 in the first place was to solve all the bad things that happen when you put the dividers "before the AOP".

 

High value resistors (anywhere): color smear.

Low value resistors: higher current (but perfect output).

 

The VDP is already loaded pretty heavily, as per the datasheet:

 

load-circuit.thumb.png.52affaab2f5102d21da2dc9ea35074e1.png

 

I couldn't find any per-pin current ratings in the datasheet, but taxing the 40 year old chip any more feels like a bad idea.  If you put things after the mux, any amount of current going through it makes the transitions really spiky.  I bet it wouldn't be as bad on a PCB, but then the mux's own channel resistance also throws the divider math off.  We already needed an op-amp for the sample-and-hold, so changing an 8-pin IC to 14-pin to gain another three channels solves everything outright.  It is a good answer with almost no trade-offs. :D

 

I just need to find a minute to confirm slightly higher (2-3x, still around 1k) resistor values don't have an adverse effect (while maybe getting lucky and consolidating another BOM line at the same time) and we should be all set.

  • Like 1

Share this post


Link to post
Share on other sites

Ok had forgotten the specified the optimal load to not disturb at the TMS output. And a second opamp stage would be overkill. 👍

Share this post


Link to post
Share on other sites

The 9928 is a chip that would really benefit from some active cooling. About the biggest thing to help it is replacing the original DRAM private memory with a small, modern SRAM and bus demultiplexer.

Share this post


Link to post
Share on other sites
27 minutes ago, MrPix said:

About the biggest thing to help it is replacing the original DRAM private memory with a small, modern SRAM and bus demultiplexer.

I got that covered.  Will be released in about a week or so. :)

Share this post


Link to post
Share on other sites

Final v2 boards ordered over the weekend, new voltage dividers tested, new resistors ordered just now, and the schematic, board, and test jig have been updated!

 

The new dividers consume around 15mA less at all times with no apparent difference to the output:

 

371888218_powerconsumption.thumb.png.adfd166c15af1a30f43010eba54aff98.png

 

That's a little friendlier to the 4-channel amp and to the Colecovision's power supply.  The impedance is matched a lot closer between all three lines (though it doesn't matter much in this case).  And I was able to consolidate one more BOM line. :D

 

An interesting detail: when I ran VCC through my multimeter to measure the current, the colors on the TV were noticeably incorrect!  Apparently the burden voltage in my entry-level meter is pretty awful and it was enough to drop the already-low ~4.6V that I can see right off the TMS VCC pin down to around 4.3V.  That's low enough that we're starting to creep out of spec on a couple of the ICs.  This is a non-issue (and I switched to performing the measurements using my bench-top supply instead, where I can compensate for the drop), but it does make me wonder about any of these old machines that might be in particularly bad condition.  If the 5V rail were to droop much more than the 4.6V I'm already seeing on mine, it might undermine much of our effort to get accurate colors.  Right now I'm going with "I hope that won't be the case" and "if it drops that low, the console/computer itself will probably stop working before this board does".  It would be more work to jam a tiny 5V boost regulator on this board (and I don't think we need to).

 

Here's v2 (see attached PDF for zooming, copy-pasting, etc.).  There aren't many schematic changes since v1: a couple capacitors removed, a couple fiducials added, the resistor values between U3 and U6 updated, and the parts have been renumbered to match the new PCB layout.

 

tms-rgb-v2.thumb.png.88ccb08a4874d4eade3f65b2352792b0.png

 

The Eagle files are in the GitHub repo.  The v2 PCB is very likely the board that's going to make it out the door (again, thanks to more than a hundred incredible suggestions across thirty-five PMs from MrPix).  We'll mostly know in a week when they get here.  We'll know for sure once I build a couple, send them to Ruggers Customs, and he tries the board on like ten different CV revisions. :D

 

While I wait for them to arrive, now will be a good chance to get a head-start on that instructions page.

TMS-RGB v2.pdf

  • Thanks 2

Share this post


Link to post
Share on other sites
Posted (edited)

15ma  less in the divider is great : less heat, less power loss, less tempco sensibility 👍

130ma is not anecdotal, around 15% of the 900ma 5v power rail. The external regulated power supply must be in good conditions and the case/cables connector too to minimize power loss.

The cables and the PCB of the coleco are well done, not too much additional loss to expect here, the TIP41C used in the power supply is able to deliver 6A so no problems here too, the limiting factor being the transformer.

As the regulation is done inside the power bloc, loss should be minimized at all connection points, the most problematic one being the case connector.

Did you measure the voltage at the pcb input with you bench voltmeter to see if the loss is before or after the pcb input ?

Edited by emmanuelf
tranformer

Share this post


Link to post
Share on other sites

The 4.6V is measured directly from the TMS9928A pin when nothing is connected to it.  It's the same whether using an original Colecovision AC adapter or a ColUSB.  So I'm not really sure what's going on.  Maybe the voltage regulation system on the CV board is dropping a little voltage somehow?

Share this post


Link to post
Share on other sites

4.6V is a bit weak - below spec for the very picky LMH1251. On which note, I went through its data sheet one last time, searching for any indication on the practice of tying unused pins to ground. The datasheet gave me nothing. As it includes selector functionality for a second input, it gives no guidance on if it is helpful for those unused inputs to be tied to GND, as is traditional, or if they're internally disconnected. As we have no guidance, we need to test it.

Could you pull out your breadboard example and test the effect on power consumption and heat generation of grounding pins 1 thru 5? That's H_in, V_in, R_in, G_in, B_in. Could you also look at those pins on your scope ungrounded, and see if they're floating or oscillating? If they are, they will need tying to ground and this will have positive effects for the IC. You might need to treat RGB separately from HV.

Share this post


Link to post
Share on other sites

4.6 is too low.  TTL spec is 4.75V minimum.  CMOS may tolerate lower voltages, but there's a lot of TTL on that PCB too.

 

There is no regulation on the PCB.  It expects the input voltages to be regulated at the brick.  Look for voltage choke points such as a crappy power switch, oxidized power pins, or loose rivets on the power connector.

Share this post


Link to post
Share on other sites

In my guidance I didn't think about voltage too much but more protection against ground bounce, which I have seen can be a problem on the three Adams I have access to. Luckily, the power fills and capacitor design on the board is quite solid. It would help to have a 10uF+ electrolytic on the top board near the ribbon cable, and a 1 to 2.2uF tant close to the VDP/DRAM. That's not in the scope for the board, though.

I have been nibbling away at a replacement complete board. With modern components, I'd only be using maybe 1/4 of the PCB area available. It would be quite easy to incorporate a power supply onto the board that would run off a laptop power supply, with efficient buck regulators and -ve generated on board. That said, I don't know if the lower board would be happy being backfed power from the upper board.

Share this post


Link to post
Share on other sites
On 6/2/2020 at 8:37 AM, emmanuelf said:

130ma is not anecdotal, around 15% of the 900ma 5v power rail.

This had me worried, so I measured.  

 

With no output (RF board removed, no RGB adapter), the 5V rail (measured across my CV's now-removed power switch) was showing 480mA while at the Popeye level select screen.  With only RF: 490mA.  With only RGB: 600mA.  With both: 610mA.

 

That's less scary.  There's still a lot of headroom.

 

I can't believe how efficient the RF board is!  If it was power hungry, I was worried the recommendation might have to be "remove it to make more headroom" but it barely registers.  Otherwise, I haven't tried any of the expansions to see how much power they use.

 

On 6/2/2020 at 12:01 PM, MrPix said:

... LMH1251. On which note, I went through its data sheet one last time, searching for any indication on the practice of tying unused pins to ground. The datasheet gave me nothing.

The half dozen circuits you can readily find in a Google Image search all show them floating.  The RetroTINK Comp2RGB leaves them floating.  The diagram on page 2 of the datasheet shows little switch icons that imply they're disconnected when not in use.  This whitepaper describes the video switch portion of the IC as a mux, which implies you can leave them floating.  And when I asked just now, this TI engineer said we could leave them floating. :D

 

On 6/2/2020 at 1:09 PM, ChildOfCv said:

There is no regulation on the PCB.

I meant L6 & C48.  It's not much, but they condition the power a little.  I was worried L6 might have developed some resistance somehow.  (It hasn't.)

 

On 6/2/2020 at 1:09 PM, ChildOfCv said:

4.6 is too low.  TTL spec is 4.75V minimum.  CMOS may tolerate lower voltages, but there's a lot of TTL on that PCB too.

This was bugging me so I set out to solve the mystery and see where the voltage was going.  After ~50 measurements across three CVs, three power supplies, using two different instruments, I'm satisfied that I've got a much clearer picture.  The good news is that we're doing just fine voltage-wise.  User error and poor testing methodology were the straw that finally broke the camel's back and made it appear below 4.75V.

 

About a week ago, I noticed my nearly ten year old, $11, never-calibrated multimeter wasn't giving me the answers I wanted.  The LMH1251's datasheet goes out of its way to describe a very high quality 10k Rset resistor, so I went a little overboard for these test boards and got a 0.1% tolerance part just because I'd never seen one in person.  Excited to see a perfect "10.00" on the meter, I had a bit of a revelation when they were all showing 9.96k or so.  During the past three months, every resistor seemed to be measuring just under its value and now I knew it was the meter and not the parts.  (My Fluke 87V should be here on Friday.) 🤣

 

Suspecting the same was probably true of the voltage readings, I wanted a second opinion.  Using an oscilloscope as multimeter is pretty clumsy, but it shed some light: my awful meter is universally 60mV lower than it should be when measuring using its 20V setting.  I dialed my digital benchtop supply to 5.000V.  The scope showed 5.00V.  The meter showed 4.94V.  In every other measurement, the offset was identical.

 

So lesson #1: make sure you can trust your tools.

 

60mV is a fair-sized chunk, but still doesn't explain the rest of the missing voltage.  So I went looking.  Instead of finding a single smoking gun, it was more like death by a thousand cuts.  All of the following numbers are from the scope's more accurate measurements.

 

Touching the probes directly to the 5V ColUSB pins: 5.00V.

Touching the probes directly to two separate OEM Coleco power supplies: 5.10 and 5.12V.

 

So while the ColUSB does a faithful job of regulating voltage, I wonder if the CV PSU isn't designed to go just a tiny bit higher to combat some of what's coming next.  (That or they're just getting old and out of spec.) 😅

 

Plugging the (perfect, 5.00V) ColUSB into the jack and measuring just on the other side of the rivets: 4.94V.

 

I'd tried adding a bit of solder to each of the clamp-on style rivets, but it didn't seem to have any effect.

 

Measuring at the white/black wires running into the CV board: 4.90V.

Measuring at the expansion port: 4.86V.

Measuring at the TMS pins: 4.83V.

 

I had noticed once (while switching between systems) that 100mV had gone missing until I re-seated the power cord from "firmly" to "very firmly".  So apparently every little bit counts.

 

The last measurement was from the TMS-RGB breadboard VCC and ground rail, which comes from (about 8") wires soldered directly to the same TMS pins I just probed, but showed 4.76V instead.

 

Testing these same points on the PAL system showed the same or slightly improved values across the board.

 

So, between a low-quality meter, a most-likely poorly-seated power cord, a ColUSB which is 0.1V lower than the OEM PSU, and measuring the voltage from a distant breadboard, I think I can account for most of the loss.

 

In the typical case, with the RGB board soldered directly to the VDP, using an OEM power supply, it should be seeing something closer to 4.9V, which makes me feel a lot better.

 

On 6/2/2020 at 2:57 PM, MrPix said:

It would help to have a 10uF+ electrolytic on the top board near the ribbon cable, and a 1 to 2.2uF tant close to the VDP/DRAM.

Don't forget that about an inch away from the TMS's VCC pin we've already got C106: a 10uF tantalum.

  • Like 2

Share this post


Link to post
Share on other sites

Mystery solved 🙂

Values are good 👍

6 hours ago, Falonn said:

I had noticed once (while switching between systems) that 100mV had gone missing until I re-seated the power cord from "firmly" to "very firmly"

Yes that is where most users could experience loss.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...