sd2snes diagnostics

 

The sd2snes diagnostic firmware is used to track down hardware issues with your sd2snes. I originally wrote it for brief burn-in testing (e.g. to check for solder errors) but it might be useful in the field as well.
Note: It will change the date and time settings so make sure to correct them after going back to the regular firmware. ;)

  • Download the diagnostic firmware (see link above) and unpack it to your SD Card just like a regular firmware update.
  • Put the SD Card back into your sd2snes and turn on power.
  • If right after startup either the green LED light up or the yellow+red LEDs light up and nothing else happens (no intermittent LED flashing etc.), the SD Card could not be initialized. It might be worth trying a different card. Otherwise there is a contact problem with the SD Card slot (hardware failure), or the sd2snes’s microcontroller doesn’t boot up properly anymore. Tests cannot continue in this case.
  • Wait ;) The diagnostic firmware does not show anything on screen, it will work silently for a couple of minutes. If the power LED (green) flashes during the process please reset the SNES twice (it’s part of the SuperCIC self test).
  • The final test is the SNES bus test. During the test the screen will turn red, orange, yellow, and finally green if everything is ok. If the screen remains black for more than 20 minutes something’s up.
  • Testing is finished when the three LEDs light up in sequence like a running light.
  • During testing, the sd2snes logs the results to a text file called “test_log.txt” in the sd2snes folder on card. I might ask you to upload it after running the diagnostic firmware ;)

The diagnostic firmware performs the following tests (in order):

  • SD Card read/write error test: writes a 4MB file, reads it back, and compares the result
  • RTC test: tests if the real time clock can be set and is ticking
  • CIC test: checks for correct operation of the SuperCIC key. Toggles video modes/power LED color if SuperCIC lock is installed in the SNES.
  • FPGA test: configures the FPGA and runs a simple echo test to see if it is alive
  • RAM test: fills both RAM units (128Mbit+4Mbit) with test patterns and reads them back for comparison
  • SD DMA test: Performs DMA transfer from SD Card to RAM, compares, and dumps the actual RAM content to card for manual inspection
  • Clock test: loads the test ROM, measures the SNES master clock and checks for irregularities. Also logs a number of other control signal toggle counts for manual inspection (to check for broken traces/solder joints).
  • IRQ test: triggers an IRQ via the cartridge slot and expects the SNES to react
  • Address bus A/Data bus test: tests whether the SNES can correctly access (read+write) all of the available address space. Not the most useful test because in most cases the test code can’t run if something is wrong with the address or data bus.
  • Address bus B test: checks if all peripheral bus lines are working
 Posted by at 2:05 pm

  32 Responses to “sd2snes diagnostics”

  1.  

    Not sure my last comment was sent. With this software all that happens is the GREEN LED is on but dimmed and the RED LED flashes on and off 5 times then recycles around and around but nothing else. It does not save any files to the SD card and happens on four different SNES machines.

    I am going to replace the caps on all machines next week to see if it is a power issue as I suspect. I got it from Retrotowers and it is an official PCB and it runs for a bit then crashes from time to time.

    Flashing RED LED only.

    Thanks in advance…

    •  

      Strange, the diagnostics firmware neither dims the green LED nor flashes the red LED a number of times. The normal firmware would do the latter, 5 times meaning “path not found” but I doubt the “/sd2snes” folder is missing on card…

  2.  

    Thanks for the reply Ikari. I think the dimming LED is down to the capacitors on the SNES machines meaning the power is not up to the job. The “/sd2snes” path is actually missing! Will need to check again in the morning. Thank you for the help so far.

  3.  

    hI I have repaired the fail in RAM1. I have resolder all chips in my SD2SNES and now the ram test is ok.
    Only have a error , but I don´t know where is the problem.
    TEST SUMMARY
    ============

    Test Result
    —————-
    SD Passed
    USB no run
    RTC Passed
    CIC Passed
    FPGA Passed
    RAM Passed
    SD DMA Passed
    CLK Passed
    DAC no run
    SNES IRQ Passed
    SNES RAM Passed
    SNES PA FAILED

    thanks for oyur help

    •  

      PA test is related to the B Address bus on the extension pins. Most likely bad solder joints on RA101, RA102, RA111, RA112.

  4.  

    Thanks , I see the RA112 with possible bad solder, but my snes is now with black screen (It shows nstc black screen without sound, ¡. The scart 2 hdmi detect black screen NTSC signal), I am waiting other sfc or repair this to continue with sd2snes.
    thanks very much

    •  

      Hi.
      Now I had repair bad solders in RA112 and any capacitors.
      The test is all ok now, and I was change firmware and SD (0,2 -0,5ms, sd2snes menu test ) now the sound seems clean.
      Thanks very much.
      PD , is possible in a future change firms without connect SD to a computer?, . I need a firm to msu1 games and other for dsp because 1.3 , 1.4 and 1.4a is good for dsp and normal roms but msu1 games have a bit of noise ( very little) , but in 0.1.7 pre 3 and 4 the sound is totally clean.
      Is it necesary R101 ? (how many ohms is r101?, in my sd2snes is missing, is it related with sound?, Is possible put a resistor to test old firms?
      thanks very much, and sorry for my writing English .

  5.  

    RE PD:
    With 0.1.7 pre 3-4 MSU1 games are good but DSP games fails, thanks

  6.  

    good day my sd2snes gave the following errors
    TEST SUMMARY
    ============

    Test Result
    —————-
    SD Passed
    USB on the run
    RTC Passed
    CIC FAILED
    FPGA Passed
    RAM Passed
    SD DMA Passed
    CLK Passed
    DAC on the run
    SNES IRQ FAILED
    SNES RAM FAILED
    SNES PA FAILED
    More I never had a problem with him, worked always normal, you have to help me? lack any application?

    •  

      Hey Ikari, I have the same results as Henrique, any tips on getting the IRQ/RAM/PA tests to pass? I have some experience with soldering.

    •  

      Hm, I see ONLY the CIC and SNES tests fail. Quoting myself: “If the power LED (green) flashes during the process please reset the SNES twice” ;)
      The CIC test will deliberately trigger a CIC error to see if CIC signaling works. At that point you need to do the double reset or the SNES won’t be alive to carry out the SNES tests later on. If the SNES isn’t reset after a bit, the CIC test will mark itself as failed and the tests will just continue, with the SNES tests failing at the end.

    •  

      Vielen dank Ikari, I should have followed your steps on resetting twice. That worked.

      TEST SUMMARY
      ============

      Test Result
      —————-
      SD Passed
      USB no run
      RTC Passed
      CIC Passed
      FPGA Passed
      RAM Passed
      SD DMA Passed
      CLK Passed
      DAC no run
      SNES IRQ Passed
      SNES RAM Passed
      SNES PA Passed

      Pretty good for a suspected China cart ;)

  7.  

    Hey Ikari, any idea what the log bellow means, it’s RIP console right? ;____;

    Testing RAM0 (128Mbit) – clearing RAM – writing RAM – verifying RAM -error @0x000020: expected 0x20, got 0x00
    error @0x000022: expected 0x22, got 0x02
    error @0x000024: expected 0x24, got 0x04
    error @0x000026: expected 0x26, got 0x06
    error @0x000028: expected 0x28, got 0x08
    error @0x00002a: expected 0x2a, got 0x0a
    error @0x00002c: expected 0x2c, got 0x0c
    error @0x00002e: expected 0x2e, got 0x0e
    error @0x000030: expected 0x30, got 0x10
    error @0x000032: expected 0x32, got 0x12
    error @0x000034: expected 0x34, got 0x14
    error @0x000036: expected 0x36, got 0x16
    error @0x000038: expected 0x38, got 0x18
    error @0x00003a: expected 0x3a, got 0x1a
    error @0x00003c: expected 0x3c, got 0x1c
    error @0x00003e: expected 0x3e, got 0x1e
    error @0x000060: expected 0x60, got 0x40
    error @0x000062: expected 0x62, got 0x42
    error @0x000064: expected 0x64, got 0x44
    error @0x000066: expected 0x66, got 0x46
    error @0x000068: expected 0x68, got 0x48
    too many errors, aborting
    RAM0 FAILED

    •  

      Hi,
      the console might be ok but the sd2snes isn’t :( there is a bad solder connection between FPGA and RAM.

  8.  

    Hello,

    Rev F, but, I dont now, china version or not.

    Test Result
    —————-
    SD Passed
    USB no run
    RTC Passed
    CIC FAILED
    FPGA Passed
    RAM Passed
    SD DMA Passed
    CLK Passed
    DAC no run
    SNES IRQ FAILED
    SNES RAM FAILED
    SNES PA FAILED

    •  

      Looks like you didn’t push reset twice when it asked you to (LED blinking code as described in the text) ;) Seems fine otherwise; does it work in normal usage?

      •  

        today yes , I was testing other sd card , now no longer starts , I see , No SD Card Found! :(

        My firmware is .1.7.c

      •  

        I guess solder joints are broken on the sd card slot or some contacts inside it. Or maybe it’s just dirt :) You could try blowing some pressured air into the slot or putting some isopropyl alcohol on an SD card’s contacts and inserting and removing it a couple of times.

      •  

        well well! I opened the top of the slot, I think the contacts are good, I also isopropyl, put a drop of solder on each contact on the board used a welder, but nothing has changed.

      •  

        Hm! I can only imagine that the CD (Card Detect) switch is somehow damaged on the card slot or the connection to the MCU is broken somehow. It is this pad/trace: http://imgur.com/a/oYdw3 It goes from the card slot to the MCU (80pin IC) on the other side of the board.

    •  

      really, you saved me !!!! are two small arms, one of them gave no contact! I pushed him inside, and now works !!! thank you so much!!! Question: rev. F is without LEDS ?, My PCB did not have, I even installed !!

  9.  

    Hi,

    I did the test and this are the results.

    TEST SUMMARY
    ============

    Test Result
    —————-
    SD Passed
    USB no run
    RTC Passed
    CIC Passed
    FPGA Passed
    RAM Passed
    SD DMA Passed
    CLK Passed
    DAC no run
    SNES IRQ FAILED
    SNES RAM FAILED
    SNES PA FAILED

    there’s something wrong with the snes?

    Regards

  10.  

    Hello! Just got my SD2Snes a week ago and was only able to test it today. I bought both an SD2Snes and an Everdrive v3 from the krikzz store. Everdrive is working perfectly. SD2Snes gave me a blank screen with firmware. Without SD card it initializes to a “No SD card found screen”.

    I tried with another SD card and got this screen: http://imgur.com/J8ejfqW

    I ran the diagnostics and got:

    TEST SUMMARY
    ============

    Test Result
    —————-
    SD Passed
    USB no run
    RTC Passed
    CIC FAILED
    FPGA Passed
    RAM Passed
    SD DMA Passed
    CLK Passed
    DAC no run
    SNES IRQ FAILED
    SNES RAM FAILED
    SNES PA FAILED

    The green light NEVER blinked indicating I should press reset. I tried the test more than once and glued my face to the cartridge. As soon as I turn the SNES on the green and red light turn on and the yellow flashes for a while. Then only the green stays on, and it sort of repeats this pattern until the screen flashes red and the blinking G/Y/R lights indicate the test is done. Any clue what’s wrong?

    Thanks!

    •  

      The only flash I see is a single flash as soon as the SNES turns on. If I reset the SNES twice after that single flash I get excatly same results except Passed instead of failed on IRQ. Still get failed on CIC :(

  11.  

    Just a heads up that you should always try simple fixes first. After 5 days of normal operation, my brother’s cart stopped working the night I gave it to him in his customized SNES shell. After a few hours, he was playing one of the Street Fighter 2s when suddenly the game wouldn’t reset. He power cycled it and all he had was a black screen and a blinking yellow read light.

    Such a disappointment. I was wondering if it’s a bunk MCU or the Spartan, looking at busting out the oscilloscope to see if there’s communication, getting ready to solder on the GPIO header and reading the source code for what commands are available to talk to the MCU, pricing parts out on Digikey, etc. Then I read something here that really didn’t sound exactly like my problem, but I decided to try it; just sprayed a bunch of contact cleaner down the SD slot. I let it dry and it booted just fine!

    Maybe it came dirty from the factory but I’m guessing a little plastic dust from me filing the case got in there after I put the PCB in. Anyway, hope this helps someone else freaking out.

  12.  

    Plz halp. Stays blinking red and yellow after resets. No video.
    I touched up the solder on the resistor blocks to no avail. The text saying “FPGA is stuck high” makes me think maybe its a bridge and not a cracked solder joint. Then again I have no clue.

    ===log opened===
    derp
    SD test… please insert card
    =============================
    data=111133b04504
    crc1 = d805a1bf crc2 = d805a1bf PASSED

    RTC Test
    ========
    setting clock to 2011-01-01 00:00:00
    2011-01-01 00:00:00
    waiting 5 seconds
    new time: 2011-01-01 00:00:05
    PASSED

    CIC Test:
    =========
    Current CIC state: CIC_OK
    CIC reports OK; no pair mode available. Provoking CIC error…
    new CIC state: CIC_FAIL
    ***Please reset SNES***
    PASSED

    FPGA test
    =========
    configuring fpga…
    DONE is stuck high!

    •  

      The FPGA isn’t responding to configuration attempts as expected. The “DONE” output pin must go low as soon as configuration starts but for some reason it doesn’t. Could be a faulty FPGA or a bad connection between FPGA and microcontroller. Here is a picture of the corresponding PCB trace marked in white:

  13.  

    Ikari, what kind of LED is used on the boards? Mine came without the LEDs and I would like to solder them on the board. Thank you!

 Leave a Reply

All comments are moderated. Email is optional, however no comment confirmation message will be shown for some reason if it is left empty. The comment will be posted anyway.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>