Power Supply and Noise Testing

75 views
Skip to first unread message

Cube Central

unread,
Jun 2, 2018, 12:34:08 PM6/2/18
to LiNC80
Howdy All!  The following are my notes and results from testing three different power supplies and ferrite core chokes.

Power Supply and Noise Testing
----------------------------------------------------------------
TLDR:  Changing the power supply resolved the Modulus Operation error (detailed in "Modulus Madness" post) but only when there isn't a directly-connected IDE CF Adapter attached (detailed in "Media Mayhem" post).  Simply adding a ferrite choke (wound or snap-on) did not make a difference.  Insufficient voltage was ruled out.


==========
  PART 1
==========

Initial setup involved a "bench" power supply like this one (hereafter named P1) set to output 10V DC.  This was fed via banana-plug to alligator clip cable to a "breadboard" power supply, similar to this (hereafter named A1).  I had previously verified that A1 was outputting steady, good clean power (see Part 5).  A heat sink was added to help steady any temperature issues.  This was then connected to a known good miniature breadboard so taps via small jumper wires might then be run to the SBC1 and IDE to CF Card adapters.
(IDE to CF Card adapter S1 (from previous post) was attached via 20cm ribbon cable, even though this adapter wouldn't be used in this part of the test.)

[P1]---[A1]---[Breadboard]---+--[SBC1]
                             |
     +--[IDE CF S1]

*Note: this was the original setup when testing began on the SBC1 and IDE/CF Adapters, leading to the MOD operator and Media tests.

It was suggested that I add some ferrite ring chokes (c) to the input of the SBC1, so one was added there, as well as one each on the outputs of A1 and P1.  See further choke testing in Part 4, below.

[P1]--(c)--[A1]--(c)--[Breadboard]---+--(c)--[SBC1]
                                     |
             +--(c)--[IDE CF S1]

Initial testing showed no change or improvement when running the "Modulus Madness" test as errors continued to show with this configuration.

I then removed A1 from the setup, as well as the breadboard, and set up P1 to output 5V DC (see Part 5).  The jumper wires were left as they had been, as well as the chokes.

[P1]--(c)-----+--(c)--[SBC1]
              |
      +--(c)--[IDE CF S1]

Testing showed an exceptional result.  The test ran for nearly 24 hours and showed only one error (fairly close to the start, I might have disturbed something as I was leaving the bench)  This was the first time my SBC1 had run the "Modulus Madness" test successfully without MOD miscalculations or other issues.

To verify, I switched to a larger bench power supply, similar to this one (hereafter named L1) (also see Part 5)

[L1]---+--(c)--[SBC1]
       |
       +--(c)--[IDE CF S1]

A test run of four hours shows similar results to P1 - absolutely zero MOD miscalculations or other issues - more testing was done later (below in Part 3)

I attempted to characterize the DC supplies and noise by measuring the AC offset via my oscilloscope.  Attached, in the PSUscope.zip file are the images for those interested.  Interestingly, A1 appeared to be the least noisy, with P1 and L1 showing more high frequency noise.  This might be a clue: If A1 has lower frequency noise at, or at a harmonic of, 7.3728 MHz, it may interfere with the operation of the SBC1.  If P1 and L1 have higher frequency noise, it may not interfere with the SBC1.  Interestingly, when I attached the oscilloscope to the SBC1 Z50Bus Connector at Ground and VCC to view any noise at that point, I found no difference between A1 and P1 - the oscilloscope traces were nearly identical.  The input choke at the power connection on the SBC1 could be the reason.

Summary:  It appears that the system stability has improved with a different power supply than the one initially used.  It doesn't appear to be a voltage difference (see Part 5).

==========
  PART 2
==========

Moving on to testing the "Media Mayhem" program, MM8.BAS.  I knew from previous testing that the S1 and S2 adapters worked fine.  So I installed the direct-connect adapter M1 using on-board power via Pin 20.

[L1]---+--(c)--[SBC1]===[IDE CF M1]

I couldn't even begin the MM8.BAS program without encountering strange nonsensical errors, so I moved on to trying this M1 adapter via external power:

[L1]---+--(c)--[SBC1]=======\ 
       |                     |    <-- 20cm IDE cable
       +--(c)--[IDE CF M1]==/

This resulted in a hang after 36 iterations.  I decided to back up and try the "Modulus Madness" test instead with this configuration but it resulted in immediate errors.

Conclusion:  The stability of the system is compromised with the M1 direct-connection IDE/CF Card adapter.

I then installed the Q1 IDE/CF Card adapter.  It is also a direct-connect adapter 

[L1]---+--(c)--[SBC1]===[IDE CF Q1]


The first run of MODCHK6 test program resulted in an error right away, but I reset the system and tried again.  It soon hung.  I then tried the MM8 test program but it hung after 20 iterations.

I then tried wiring the adapter for external power:

[L1]---+--(c)--[SBC1]=======\ 
       |                     |    <-- 20cm IDE cable
       +--(c)--[IDE CF Q1]==/

The "Media Mayhem" MM8 program was started and hug after 7 iterations.  The "Modulus Mayhem" MODCHK6 program was then initiated after a reset, reported errors early on and was terminated.

Conclusion:  The stability of the system is compromised with the Q1 direct-connection IDE/CF Card adapter.

Summary: Direct-connection IDE/CF adapters still are unstable, even when powered from an alternative source and with ferrite chokes.  Noise from the adapter itself seems to cause system instability.  Additionally, I repeated some of the above tests on directly connected IDE CF Adapters with an improvised "Faraday cage" surrounding the adapter.  This experiment was to determine if some shielding would improve the performance of the system.  Either the improvised "Faraday cage" was ineffective or badly designed as it had no effect on the outcome; the tests continued to fail.

==========
  PART 3
==========

I wanted to be sure that I still had a stable system when configured like this:

[L1]---+--(c)--[SBC1]
       |
       +--(c)--[IDE CF S1]

So I re-installed the S1 Adapter, and began the MODCHK6 test to run overnight, as I did with the P1 power supply.  After running about four hours, errors started to appear, so the test was re-run for another 6.5 hours, no errors.  Must have been something overnight that disturbed the system, but I can't figure what it is.  There aren't any noise sources that would suddenly appear around midnight.

Later that afternoon I started the test again, configured as below, but this time with wound chokes (see Part 4).  The test ran overnight and no errors occurred.  It may be that the wound chokes are better than the snap on chokes, however a definitive conclusion can't be drawn from a single test result.

[L1]---+--(c*)--[SBC1]
       |
       +--(c*)--[IDE CF S1]


Conclusion:  Not using the A1 adapter reduced suspected noise and allowed the test to complete successfully.  Two power supplies were tested and found to be (mostly) very solid.  More testing could be done, but I've got to set an upper limit on how long I can expect a hobby computer kit to run perfectly.  Overnight?  A Week?  I am just not sure.

==========
  PART 4
==========

I went back to the original configuration, using A1, but changed how the choke was installed into the SBC1 and IDE CF adapter.  I only own "barrel"-type chokes, as seen here,  and have them installed on most things.
Originally the power jumper wires to the SBC1 were simply run through the smallest choke, it is snapped on tightly:

=====(___)=====

For this test, I wrapped the wires in a loop through the choke twice (It was nearly impossible to close the choke, I fear the jumper wires won't be the same):

   \\=======\\
======(___)=//======


The setup using the original A1 and P1:

[P1]--(c)--[A1]--(c)--[Breadboard]---+--(c*)--[SBC1]
                                     |
             +--(c*)--[IDE CF S1]

[Note: (c) are clamped on chokes, (c*) are wound]

MODCHK6 test program was started at 1420, but errors appeared soon after and the test was stopped.

Conclusion:  It seems that this choke configuration isn't effective with this power source as the issue persists.

==========
  PART 5
==========

This is testing the hypothesis that voltage, not noise, is the culprit.  I measured each of the power supplies at two places.  At the power input to the SBC1 and then at the VCC and Gound pins on the Z50Bus connector.  The system was powered on and set to run the MODCHK6 test program.


L1 fixed 5V output Max Min Avg
when attached to SBC1: 5.078 5.074 5.077
measured off Z50Bus: 5.042 5.038 5.042


P1 set to 5.09 Max Min Avg
when attached to SBC1 5.046 5.043 5.045
measured off Z50Bus: 5.008 5.004 5.007


A1 fixed 5V output Max Min Avg
when attached to SBC1 5.007 4.997 5.004
measured off Z50Bus: 4.966 4.951 4.962

A1 shows the lowest voltage and the highest drop between input and output.  L1 shows the highest voltage and the lowest drop between input and output.

Conclusion:  While these results are interesting, they do not account for the failures alone.  All of the voltages are well within tolerences for the ICs and do not explain why direct-connect IDE CF adapters fail (even when powered from an external source)

==================================================

If you've made it this far, congratulations!  I apologize about the length of the post, but I wanted to be sure that I described exactly my testing and the results.  If you have any questions or if you would like to see a different test, please do let me know and I would be happy to try it out.  While I was encouraged by the initial result, I am still troubled by the apparent noise from the directly-attached IDE/CF Adapters.  In 10 days or so, I will have a cable that will allow me to move these adapters off the board and be connected via a ribbon cable.  I might try kludging something together before then.  If I do, I will post any results.  Cheers and happy hacking!

    -Randal   (at CubeCentral)



PSUscope.zip

Jon Langseth

unread,
Jun 2, 2018, 3:29:33 PM6/2/18
to LiNC80
Thank you so much for doing these tests Randal!

This removes so much anxiety for me, as I was starting to fear that I had been shipping a defective product. These tests show that the LiNC80 SBC1 is not a broken system, but is very sensitive to harmonic external noise. It also explains why one, and not all four, of the builds I have around me at the moment shows issues: that board has a permanently attached LM317 voltage regulator attached, a regulator that is so notorious for noise that it's sometimes used as a noise generator...

I hope noone takes minds that I go around the various posts that have been part of the troubleshooting, and update them with a link to this thread.

Steve Cousins

unread,
Jun 3, 2018, 11:22:25 AM6/3/18
to LiNC80
I ran my tests again the next day and had very few failures. Nothing should have changed.

I now need to look at the quality of my mains supply (very electrically noisy fridge) and my various power supplies.

I did find something interesting when testing. To get the MODCHK program to output, you press a key. I found by holding a key the program / MBASIC would drop back to the CP/M A: prompt. Looks like a bug in MBASIC or CP/M. It didn't seem to matter which key and the time it took seemed to vary (but I did not test with a stopwatch).

Well done everybody.

Steve

Cube Central

unread,
Jun 3, 2018, 11:54:09 AM6/3/18
to LiNC80

Steve,

 

I know it can be so frustrating trying to find a spurious issue that seems to come and go, it has been a challenge figuring out which variables are involved.

 

With the MODCHK program, I found that if I printed every line it slowed down the program so that it processed fewer computations.  That’s the reason behind having to press a key to get it to output its status.  I let it run and if I am wondering if it is still going I just hit a key.

If anyone would like to change this behavior, just alter the line that looks like this:

150 IF LEN(INKEY$) THEN PRINT "CHECK:  A=";A;" B=";B;" C=";C;" D=";D;" X=";X;" Y=";Y

 

To look like this:

150 PRINT "CHECK:  A=";A;" B=";B;" C=";C;" D=";D;" X=";X;" Y=";Y

 

I'm wondering if by holding down the key an overflow might be happening.  I can craft a test for that and see if I can reproduce the failure.  Thanks for sharing!


    -Randal   (at CubeCentral)


 

Cube Central

unread,
Jun 3, 2018, 2:36:51 PM6/3/18
to LiNC80
ADDENDUM
--------------------------------
The M1 "direct connect" Adapter was placed on a custom cable (see photos below) away from the main system, similar to how the S1 and S2 adapters were hooked up (see Part 1).  The custom cable is a bit longer than the 20cm IDE cable used.  The adapter was powered from the SBC1.

[P1]--(c)----(c*)--[SBC1]====[IDE CF M1]

The MODCHK test was begun and it ran overnight for nearly 9 hours before 3 errors appeared and the program errored out soon after.  This is a huge improvement!  Before, when testing the M1 Adapter directly on the SBC1, immediate errors would occur (see start of Part 2)

(Note: the "extra" choke on P1 was simply left on from previous tests with the thought that it couldn't hurt, it is noted simply for completeness)

I then changed to the Q1 "direct connect" Adapter on the custom cable, again being powered from the SBC1:

[P1]--(c)----(c*)--[SBC1]====[IDE CF Q1]

The test ran for nearly 4 hours until a single error occurred. (which may have been a cosmic ray strike as the program continued to run for two more hours until I stopped it after a second error)  A significant change!


Conclusion:  Moving the "direct connect" adapters away from the SBC1 showed a definite improvement.  Usually these adapters will show errors right away when directly plugged into the SBC1.  

   


Warning:  If anyone plans to repeat this experiment, be absolutely sure that the wiring is correct, or risk damaging the SBC1 and IDE CF Adapter!


    -Randal   (at CubeCentral)

Cube Central

unread,
Jun 4, 2018, 11:37:07 PM6/4/18
to LiNC80
ADDENDUM 2
--------------------------------

First, an update to the "direct-connect" IDE CF Adapter via custom cable. I used the M1 Adapter and ran a nearly 8 hour test of the "Media Mayhem" MM8.BAS program to verify that it was operating properly over the wiring. No errors or issues.

Then, I tested two other power sources for the SBC1. They are both of the "Wall Wart" variety, but with distinct differences.

The first is a run-of-the-mill switch mode power supply (hereafter named W1), probably from China, but obtained from a reputable source. It claims to be 5V DC up to 2000mA. I tested it and it held reasonable voltage up to 1000mA, well beyond the >200mA (or so) used by the SBC1. The cable was simply two ~26ga wires in a vinyl shroud. The barrel connector was removed and the ends stripped and tinned, and hooked up as:

[W1]--(c)----(c*)--[SBC1]====[IDE CF M1]

Unfortunately, three runs of MODCHK6 ended quickly with several errors and I aborted any further testing. I didn't revert to the S1 adapter and real IDE cable since this configuration has run successfully before.

The second is a another switch-mode power supply (hereafter named U1), again, probably from China, but obtained from a reputable source. It claims to be 5V DC up to 1000mA. However, this supply has a USB-A jack and is intended to power mobile or other USB devices. It was tested and held reasonable voltage up to ~700mA. I chose a cable from spares, and it was very interesting!  It held four 30ga wires (red, black, white, green) surrounded by a foil shield, which was then surrounded by lightly braided wire shielding in a vinyl shroud. To avoid any stray voltages, the white and green wires were trimmed, then covered in separate heat-shrink. The foil shield was removed at the end, and the wire shielding was twisted together and trimmed to a short length. The red and black wires were stripped and tinned, and hooked up to the SBC1. The test setup was the same, minus a spare choke:

[U1]-----(c*)--[SBC1]====[IDE CF M1]

The initial results look promising as there were no errors after an hour, and the test is continuing to run - I will let it run overnight.  Cheers!

[I neglected to jot down the unloaded voltages of the supplies, or the voltage at the Z50Bus VCC connector, but will follow-up with those tomorrow.]

    -Randal   (at CubeCentral)

Cube Central

unread,
Jun 5, 2018, 8:15:41 PM6/5/18
to LiNC80
A quick note about those attached oscilloscope snapshots in PSUscope.zip:  please disregard them.  To my embarrassment, two things conspired to pollute and degrade those images: one was a bad probe and the other was inductive noise.  I've since corrected the probe issue and will take some other snapshots with less noise.  If you didn't look at them, good, and if you plan to, please don't!  :(  

    -Randal   (at CubeCentral)
Reply all
Reply to author
Forward
0 new messages