Universal PCB (eventually) thread

Step one: images. Completed The scans didn’t turn out too well so I used my camera to take pictures as well.

Scans:
http://img517.imageshack.us/img517/4029/scan0003xk9.jpg
http://img56.imageshack.us/img56/1166/scan0005nd8.jpg

Camera:
http://img397.imageshack.us/img397/8398/upcb01dh7.jpg
http://img247.imageshack.us/img247/8945/upcb02ke3.jpg

Step two: jumper. Completed The prog pins are jumpered.

Step three: New hardware found/‘PIC 4550 device’ shows up in device manager: Completed

Computer 1 (My PC)): First try didn’t work. I got the “plug and play device problem” sound. Unplugged it, tried again. Worked the second time. “PIC18F4550 Family Device” shows up in Device Manager.
Computer 2 (Eee PC)): First try: “Found new hardware” wizard comes up. Installed driver. “PIC18F4550 Family Device” Shows up in Device Manager.
Computer 3): First try: “Found new hardware” wizard comes up. Pointed wizard to driver, Windows warned that driver did not pass windows logo testing, continued anyway, driver installation completed. “PIC18F4550 Family Device” shows up in Device Manager.
Computer 4): First try: “Found new hardware” wizard comes up. Pointed wizard to driver, Windows warned that driver did not pass windows logo testing, continued anyway, driver installation completed. “PIC18F4550 Family Device” shows up in Device Manager.

Step four: Stability Test and reflash: Completed reflash successful.

Computer 1(My desktop))
Left alone for 120 sec: Entry did not disappear.
Move to lap: Entry did not disappear.
Mash on stick/buttons for awhile: Entry did not disappear.
Diagonal stick, all buttons for 30 sec: Entry did not disappear.
Reflash: Opened Pdfsusb. Selected “PICDEM FS USB 0 (Boot)” from drop-down list. Loaded “UPCB_24_BP.hex” from UPCB_output. Configuration data warning appeared. Clicked yes. Clicked “Program Device”. Error appeared: “Error USB Read Failed. Failed with error 6: The handle is invalid.” The following appears in the bottom portion of the program:

WARNING - Failed to program CONFIG DATA
MESSAGE - Programming CONFIG DATA…
WARNING - Failed to program FLASH
MESSAGE - Erasing and Programming FLASH…

The above happens for Computer 1 every time I try.

Computer 2 (Eee PC))
Left alone for 120 sec: Entry did not disappear.
Move to lap: Entry did not disappear.
Mash on stick/buttons for awhile: Entry did not disappear.
Diagonal stick, all buttons for 30 sec: Entry did not disappear.
Reflash: Opened Pdfusb. Selected “PICDEM FS USB 0 (Boot)” from drop-down list. Loaded “UPCB_24_BP.hex” from UPCB_output. Configuration data warning appeared. Clicked yes. Clicked “Program Device”. Flash programmed.

Soldering looks awesome, good job. The only thing I can’t verify 100% is the orientation of the yellow 470nF capacitor. If it matches the caps I have here, the side of the cap with the writing on it should face the GND_TEST loop. If you’re getting as far as you describe, it’s probably in there correctly, but it’d be nice to get confirmation. Please check and let me know.

Excellent. Even though the board was successfully flashed, if you don’t mind, please do the same steps on the other two PC’s. We know it worked on one and didn’t work on the other; knowing the same for another two PC’s should point the finger very directly at either the UPCB or the first PC.

Orientation of yellow 470nF capacitor: Facing GND Test loop

Reflash testing (Tried 3x each):

Computer 3): Upon attempt to program, Error appeared: “Error USB Read Failed. Failed with error 6: The handle is invalid.” Failed 3/3.

Computer 4): Upon attempt to program, Error appeared: “Error USB Read Failed. Failed with error 6: The handle is invalid.” Failed 3/3.

I also tried it on the Eee PC (Computer 2) three more times to see if it was a fluke.

Computer 2 (Eee PC)): Success 3/3. No errors.

That’s a pretty serious “WTF?” going on there.

Can you list the OS’es on those computers please?
Where the drivers on all of the PC’s installed from the .zip of the same (I assume 2.4) release?

For the time being, get a good flash on the PIC from the EEE PC and remove the PROG jumper. Can you see if the ‘laggy’ behavior you described appears on any/all of those PC’s?

Does the ‘laggy’ behavior affect the directions being reported from the stick?

Operating Systems:

Computer 1) Microsoft Windows XP Professional, Version 2002 Service Pack 3, v.3311
Computer 2) Microsoft Windows XP Professional, Version 2002 Service Pack 3
Computer 3) Microsoft Windows XP Professional, Version 2002 Service Pack 2
Computer 4) Microsoft Windows XP Professional, Version 2002 Service Pack 2

Drivers: Drivers were installed from the same zip on all computers.

Prog Jumper: Removed.

“Lag”:
Computer 1) “Lags” when holding 6 and Short simultaneously.
Computer 2) “Lag” free from what I can tell from testing.
Computer 3) “Lag” free from what I can tell from testing.
Computer 4) “Lag” free from what I can tell from testing.

Regarding “Laggy behavior”:
The behavior is affected by the directions being reported from the stick, as in, it only happens when the right direction is held down. As for the lag affecting the directions reported by the stick, yes. It lags both the buttons and stick directions.

I just stumbled upon something you might find interesting.

I copied forward to the short button using the PROG function, and the button works fine. I reset the config by resetting it with all punch buttons held, and then I copied short to the forward button, and now both of them (short and forward) “lag” in conjunction with 6. I proceeded to repeat this test with all of the face buttons, and got the same thing every time.

Which firmware revision you using? Which physical button (roundhouse, fierce, the fourth kick, fourth punch, etc) is button 6?

For what it’s worth, I’ve had similar experience trying to flash the UPCB on several computers. Apparently the USB microcontroller in the UPBC randomly pisses off Windows XP/Vista for unidentifiable reasons.

I dont believe its a matter of the chip so much as the bootloader program. Microchip came out with new code for the bootloader thats supposed to fix Vista problems; I just need to get things moved over to it.

Also, After the stick is plugged in and identified, hold down Start and Select, and then start messing around with the buttons. I’m curcious if something is causing it to reset; if you hold start and select and it resets, it’ll go into the bootloader. So either you’ll see the same behavior as always, or the PC will think the stick was unplugged and the 4550 device was plugged back in.

6 is not a face button. I’m talking about the direction 6. I would have said forward, but that could have been interpreted as medium kick.

I am seeing similar behavior. It does not go into bootloader (even after a “lag” spike), but the buttons used to recreate the “lag” change when holding start+select.

Can you start listing what some of those conditions are, the states both before and after a spike? “Press and hold short, forward, and press right registers fine; releasing short has lagged response” kinda thing.

Disconnect the 6 pin stick connector from the UPCB, and then plug the UPCB into a PC; see if its possible to get it to lag using just the buttons.

Also now that the UPCB code was flashed on properly, go ahead and try it on the PS3 again if you would. It really shouldn’t matter if you test with a PS3 game or a PS2 game.

I’m using v2.4BP

I should also let you know, just for sanity’s sake, that I rewired the buttons today. The original wiring was really messy so I figured I’d redo it hoping against hope that it would magically fix this problem. In the process of rewiring I discovered that I had swapped some buttons on my first shot. I fixed this, so earlier accounts of which button combination lagged may not be accurate, but should be from now on.

Buttons only (Stick disconnected):

Jab - None
Jab + Strong - None
Jab + Fierce - None
Jab + Short - None
Jab + Forward - None
Jab + Roundhouse - None

Strong - None
Strong + Fierce - None
Strong + Short - None
Strong + Forward - None
Strong + Roundhouse - None

Fierce - None
Fierce + Short - None
Fierce + Forward - None
Fierce + Roundhouse - None

Short - None
Short + Forward - None
Short + Roundhouse - “Rolling” lag - I’m finding this hard to explain without showing it to you, so … have a video: http://smg.photobucket.com/albums/v503/Xtra_Zero/?action=view&current=0820081720.flv

Forward - None
Forward + Roundhouse - None

Select - None
Select + Jab - None
Select + Strong - None
Select + Fierce - None
Select + Short - None
Select + Forward - None
Select + Roundhouse - None

Start - None
Start + Jab - None
Start + Strong - None
Start + Fierce - None
Start + Short - None
Start + Forward - None
Start + Roundhouse - None

(Start + Select) + Jab - No lag, but it changes the properties of the (Start + Select) combination… (In the beginning of the video, that isn’t lag. I’m pushing the buttons offscreen to show which buttons were which according to Windows) Here, have another video: http://smg.photobucket.com/albums/v503/Xtra_Zero/?action=view&current=0820081735.flv
(Start + Select) + Strong - None
(Start + Select) + Fierce - None
(Start + Select) + Short - None
(Start + Select) + Forward - None
(Start + Select) + Roundhouse - None

That’s perfectly normal. The button that shows up as 13 is the one read by the PS3 as the PSX button. Start and select by themselves press the matching button, Start + Select both activate the PSX button. And just in case there was a need to actually have Start and Select pressed simultaneously (for resetting to the menu on CvS2, MvC2, etc), pressing jab + Start + Select will show those exact three buttons pressed without the home button. This is perfectly normal and coded to work that way.

I appreciate the video; that helps my understanding quite a bit.

Flash the 2.4B (no ‘P’) version and see how it behaves. Depending on how it acts I’ll have a couple of different things for you to try. On a side note, I’m only seeing the six play buttons in the vid; if you have the two extra buttons wired on the side or something, that’s cool, stick with the P version, but if you only have the six play buttons, switch to the X version for this troubleshooting, and XP later when we get it figured out.

I’m sorry its being bitchy with you. There is NO reason for it to be acting this way.

Alright, flashed to 2.4X. From what I can tell, it is behaving exactly the same. Ran through the above button test and got the same results.

Did further button tests too:

Holding down a button (that isn’t part of a combination that lags) changes the combination required for lag. For example:

(No buttons held) - Short + Roundhouse = Lag
(No buttons held) - Strong + Roundhouse = None
(Start + Select) + Short + Roundhouse = None
(Start + Select) + Strong + Roundhouse = Lag

Note that in 2-button combinations the only combination that lags is Short + Roundhouse, but as soon as you throw a third button in there it mixes everything up. So much that the original laggy combination usually doesn’t lag anymore and a new laggy combination can be found.

Some pics of the wiring in your stick would probably help.
I’m going to assume for this that your PROG button uses the two pin connector that came with the kit; if thats not the case, or you don’t have one, say so.

  1. Download and flash this .hex to your stick:
    http://www.marcuspost.com/downloads/upcb/kyuubiXP.hex
    That one does have the EEPROM data and configuration bits; it came straight from the stick use everyday.
  2. Test for the lag on a problem system.
  3. Open up your stick, remove the button connector. Looking at the board so the PROG pins are on the left, put a jumper over the Roundhouse pins which will be the 6th column from the left on the button connector. Put the two pin connector for PROG, the one wired to the program button, over the Short pins, which will be the 8th column from the left (third from the right) on the button connector. That should make Roundhouse always pressed, and control short with the button you wired up for program.
  4. Test on a problem system but repeatedly pressing your program button to see if the same rolling lag occurs.

We know the bootloader is on there, since bootloading works for at least one system. We’re confident the UPCB code got on there properly since it’s detecting and mostly behaving. I’m just trying to rule out the configuration bits on the PIC by using the hex I uploaded for you, and rule out the wiring by having the only wiring be a single jumper and the prog button.

  1. Downloaded and flashed
  2. Tested for lag. Still lags with same buttons.
  3. Removed button connector, jumpered Roundhouse, put the PROG pin connector on the Short pins.
    http://img.photobucket.com/albums/v503/Xtra_Zero/0821081556.jpg
    http://img.photobucket.com/albums/v503/Xtra_Zero/0821081558.jpg
  4. Same rolling lag.

Other pictures of button wiring:
http://img.photobucket.com/albums/v503/Xtra_Zero/downsized_0821081604.jpg
http://img.photobucket.com/albums/v503/Xtra_Zero/0821081606.jpg
http://img.photobucket.com/albums/v503/Xtra_Zero/0821081609.jpg

Damn, that’s perfect, too. Alright, somethings muffed with either the board or the PIC. I’ll put together a board and PIC to send out to you; PM me your address and your paypal and I’ll get it out to you; when you get it swapped, use the paypal to ship your current one back to me; with luck I can hunt down the problem and get it sold once its fixed.

Ohohoho! It’s alive IT’S ALIVE wahahah :] Thank you Toodles, you are magnificent. Still curious about what happened with my board though. Hopefully you’ll be able to figure it out.

I’ll check it out when it gets here, but I’ll bet its just a faulty PIC. If you can find a laggy combination that doesn’t use fierce or roundhouse, I’d appreciate it; My Neogeo stick only does start, select, and the four weaker buttons.