Tuesday, September 7, 2021

The Black Knight Rises - Progress Update

These past two weeks have been very productive, and I am getting closer and closer to firing up the solenoids.  There's so much to talk about.

In this post I cover my new 5v LED power supply (tweaked to 5.5v), measuring the Chameleon IO Controller's power consumption, updates to the ChameleonIOController.dll, a custom 3D printed wire connector bracket, wiring up main power and ground to the power drivers, a potential ChameLED v2 redesign, playing around with the IO controller's latency now that it's hooked up to the playfield, and beginning the Chameleon Pinball Engine's software updates.

Yeah, that's a lot to cover, so be sure to click through to read the whole post.


5.5v LED Power Supply
I picked up a new 5v 5A industrial power supply to handle the LED's.  With it hooked up to my voltage meter, I trimmed the potentiometer to set the output voltage to 5.5v, splitting the difference between my ChameLED's and the CoinTaker LED's voltage designs.

Powering up the LED's with this new power supply, the difference was night and day (or more like night turned into day, that's a lot of light!).  The 6.3v CoinTakers now look fantastic, nice and bright and with almost no flicker at all when PWM dimmed.  And of course the ChameLED's are still bright and beautiful with absolutely no flicker!  I'm not really sure why the CoinTakers has a minor bit of flicker, but I expect it is due to their fully-rectified AC/DC design, though it could be because I'm still slightly underpowering them.

I put my ammeter on the new power supply with all 76 LED's lit up, and I recorded 4.4A, so it's safely within the 5A capacity of this tiny power supply.  Looks like I got a winner.  This also means that, on average, I'm now pulling about 58mA per LED, though I haven't yet retested the ChameLED vs. the CoinTaker to see how each performs.

Tuesday, August 24, 2021

The Black Knight Rises - First Light

The Black Knight playfield, lit up for the first time with the Chameleon IO Controller and ChameLEDs

Assembling a new Chameleon IO Controller board
Over the weekend I assembled another Chameleon IO Controller board, and it came out much better.

For this attempt, I upgraded my Reflow Toaster Oven with two additional 320w heating elements that I scavenged from a spare oven, bumping output from 1500 watts to 2140 watts, and this greatly improved the oven's ability to follow the solder paste reflow profile.  Of course this meant it was now too powerful for a normal household 120v 15A circuit, and I've only got a single 20A outlet in the entire house.  Luckily it's in the perfect spot in the garage right next to the garage door, which I can open for fresh air during reflowing.

I also installed my 3D printed linear clamps on the stencil printer, which greatly improved solder paste alignment, preventing movement during swiping.  

I switched to some fresh solder paste, ChipQuik's Smooth Flow, and wow did it flow smoothly!  The deposited paste looked much thicker compared to my previous attempt which had sparse amounts of paste in a few spots.  I was actually worried it might be too thick, even though I only made a single swipe.  


Semi-pro stenciling tip: do NOT make multiple swipes, as with each swipe you force extra solder paste through the stencil and it builds up and leaks under the stencil, causing shorts during reflow. I made this mistake often in the beginning. Automated stenciling machines make a single quick swipe only, and you should replicate this method if doing it manually.  You have to trust the process, it works.


One additional tweak I made was simply working faster.  The last board I assembled took over 4 hours from stenciling paste to reflowing the board, and the solder paste I'm using only has a 4-hour working window.  This time I went from stenciling paste to reflowing in under 1 hour!  

Those 4 changes addressed the biggest issues I noted from my previous attempt, and they definitely helped a ton.

Unfortunately, a new issue cropped up.  Read on to learn more and see the First Light Video!

Sunday, August 15, 2021

Chameleon IO Controller - Adventures in Latency Testing

Chameleon IO Controller & Round-Trip Latency
One of my primary objectives when designing the Chameleon IO Controller was minimizing round-trip latency.  In mechanical games like pinball, lower latency improves game feel, by reducing the amount of time from pressing a cabinet button to a solenoid firing.  If latency is too great, you will notice a lag after pressing the button until the flipper fires, or after a ball hits a slingshot and the slingshot activates.

Unlike a typical pinball controller where the switch to fire a solenoid (i.e. a flipper) is directly connected to the solenoid, my design takes the button press and sends it over USB to the host PC, where my Chameleon Pinball Engine software processes the button press, and sends a command signal back over USB to turn on the solenoid.  

As the Chameleon IO Controller has both the gamepad buttons and LED outputs all on a single PCB, effectively the signal makes a round-trip from IO Controller to host PC and back to the IO Controller.

This design introduces latency at several distinct points.  There is the latency in the IO Controller to detect a button press and send the new button state info to the host PC.  There is latency in my pinball software to recognize and process the button press.  There is the latency in sending the new LED state back to the IO Controller.  And finally there is latency in the IO Controller to actually turn on the output.

My previous post detailed working on the Chameleon IO Controller's firmware to improve PWM performance, so of those four distinct points affected by latency, I've already addressed the last two.  My goal with this new round of testing is to work on the other two points.

Below a certain threshold, latency isn't an actual problem.  When you're playing video games, as long as latency from button pressed to pixels updating stays below 40ms, response feels instantaneous and you'll have a great experience.  But real world games like pinball are more demanding - physics waits for no-one - so latency needs to be even lower for good ball control.

Friday, August 13, 2021

The Black Knight Rises Project Update - It Lives!

 I can't believe it's been almost 4 years since the last project update here.  I'm sure everyone has assumed The Black Knight Rises is DOA.

I'm happy to say that not only is it not dead, but for the first time in a while, the project is  making great progress!

Yeah, this is a long post.  It's hard to wrap up 4 years in a couple paragraphs.


What Happened?

In the summer of 2017 I needed a break from working on the The Black Knight Rises.  Building a complete pinball machine from scratch, designing and assembling my own electronics, writing firmware, programming the pinball software, and troubleshooting issues coming from every direction - it was just all too much.

Click through below to follow along on the journey and see the great new developments!

Friday, September 8, 2017

Modern Firepower - Upgrades and a Tune-up

It's been about 4 years since Modern Firepower received any attention under the hood, and it has been such a solid build it really didn't need any attention.  I had a switch wire break a solder connection once - my own fault for keeping the wires taut between connections, always leave wire slack - but beyond that it has been pretty much trouble-free.

Well, except for that one sheared pop-bumper bolt I discovered in the cabinet a few months back, still clinging to the nut it liberated in its desperate attempt to escape a life of pinball attacks.  It crossed my mind that perhaps I should see where the destroyed bolt was located, but since Williams style pop bumpers are connected with three bolts, I didn't give it too much thought.  From the top side of the playfield, all four pop bumpers seemed solid.

Fast forward to the end of the 2017 Southern Fried Gaming Expo.  While packing up Modern Firepower for the short trip home, I noticed another sheared pop bumper bolt lying underneath it on the floor.  Though I couldn't rule out its origination coming from a nearby machine, in my gut I knew Modern Firepower was the source.

Modern Firepower at the 2017 Southern Fried Gaming Expo, next to an original classic Firepower - photo by Juan Josino


Read on to see the Modern Firepower repairs, tune-ups, and the very special upgrade I installed...

Thursday, June 29, 2017

"The Black Knight Rises" - Week 5 Progress

Though The Black Knight Rises missed the show, the work must go on...

Days 29 & 30 - Saturday & Sunday at the 2017 SFGE:
For me, one of the best things about attending the Southern-Fried Gaming Expo is hands-on time with hundreds of machines, including some custom machines.  Sure, I was having fun playing, but this was also work, research to be specific.

As I would play each game, I would make note of any unique features, not just from a playfield design standpoint, but more importantly from a software capabilities standpoint.

For example, I got to play American Pinball's freshly assembled Houdini.  At one point during gameplay, I triggered a mirrored and reversed flipper mode, in which the right button controlled the left flipper, and vice-versa, plus the flipper bats stayed in the upright position, and you had to press the buttons to lower them, releasing to hit the ball.

With a few lines of code, I could certainly add such a routine to the Chameleon Pinball Engine.

It was also a treat to see under the hood of Scott Danesi's most excellent Total Nuclear Annihilation custom pinball machine.  I learned some simple things, like how a drop target can be both raised and lowered by adding a second solenoid to "hit" the target and make it drop, and that there is a stock Williams flapper style one-way ball gate that includes a solenoid to raise the gate, opening a passageway to both directions of travel.  Scott also has developed his own Computer Startup and Shutdown Controller, allowing the standard power switch on the bottom of a cabinet to directly, and safely, power cycle a PC.

I came home with a mind overflowing with ideas, and it will take a while to work through them.

Read on for the rest of this week's progress...

Tuesday, June 13, 2017

Modern Firepower returned to the Southern-Fried Gaming Expo

Three years ago, Modern Firepower made its public debut at the first annual 2014 Southern-Fried Gaming Expo.

While schedule conflicts prevented return appearances in 2015 and 2016, Modern Firepower was able to make the trip again for the 2017 Southern-Fried Gaming Expo.  A big thanks to Dan and Joe for making room for Modern Firepower.  An even bigger thanks to Troy, without whom the trip would not have been possible, and Steven, who also assisted with moving duties.

This year's expo itself was a smashing success, with a reported 270+ pinball machines and arcades.  The show was a lot of fun.  If you missed it, be sure to attend next year.

Firepower vs. Modern Firepower at the 2017 Southern-Fried Gaming Expo
Read on for show highlights...