Just before Christmas I managed to fix a few outstanding issues, and after a bit of hesitation decided that enough-is-enough – time to get the scaler out.
It is by far the most complex thing I’ve ever designed, and that took the longest time to finish. When making something like this, one thing is to have a mostly working prototype on your desk, but something entirely different to have a product that you can charge money for with a clear conscience. Another factor is that the final part, making something usable by just pressing a couple of buttons is not exactly exciting - it often feels like real work.
Looking back, the idea started in 2011 when I ordered a sample of the TVP7002, the same ADC that ended up being used in the OSSC. I had no idea how to build something like this but figured it was a place to start. I needed a scaler for my Naomi Universal Cabinet that is 31k only, I had an XRGB-2 that was great – but it has a bit of a pain to source it, and not exactly cheap.
First PCB- 2015
I decided to not use the TVP7002, as it was announced end-of-life from Texas Instruments, I didn't want to design something that I couldn't source parts for in the future so decided to go with Analog Devices AD9984a. This is a newer version of the ad9983a used in the xrgb3, so I figured it was a good choice even if it cost a bit more than the TVP7002. I built a prototyping board in January 2015 – I guess that’s the real start of this project. I knew I had to use an FPGA but had no idea how to program them. I connected the digital output of the ADC directly to the input of a DAC, got lucky and got a picture and then I knew this was indeed something a mere mortal could do.
RPI zero based proto - 2016
Previous projects had been done using Eagle for PCB design, but now I was going ‘pro’ and using something proper, that of course also came with a proper learning curve. The first real prototype was done in October 2016 – the idea was to use a Raspberry Zero for the brains. I managed to get a scaled picture, and thought I was pretty close – how wrong I was ?
Rev 1.1 2017
This idea of using a Raspbery zero was ditched as there was no way to get them in quantity. I decided to use STM32 instead, which also had a pretty steep learning curve. In April 2017 I had the my STM32 prototype board connected to the scaler.
By June 2017, I had a prototype that started to look like what is now for sale. Again, I thought I was almost there.
Rev 1.2 2017
November 2017, another prototype. Which is about the same time I started working on the Jammafier as making the scaler would be too expensive and risky to finance by savings, so I needed something "easy" to fund it. Along with something to fund this project, I had to get legit, i.e. doing this through a a business, so Irken Labs was born. The Jammafier project took a bit more time and was more complex than anticipated so the scaler project was put on hold for some time.
Rev 1.3 2018
Prototype rev 1.3, is from May 2018. The really big change is that Intel had released a less expensive FPGA, that had the same capabilities of the one I used in previous revisions - I managed to build a board that would accept them both. This revision incorporates some lessons-learned when it comes to power delivery. I also placed all components on one side of the PCB to decrease production cost. If the firmware had been ready, this could likely have been a viable product - although later revisions incorporates some nice tricks not yet developed.
Rev 1.4 Late 2018
I experienced some noise and bad picture quality from some sources, so as an experiment I added a video amplifier with a low-pass filter in rev 1.4, the same used in the OSSC. The low-pass filter was a disappointment, it didn’t really clear up the noise and just added cost. I identified the source of the noise as being a combination of a bad power supply, ‘bad luck’ using Moon-Patrol and Kung-Fu master as test sources – these boards have a terribly noisy video signal.
Rev 1.5 2019
Now we are getting serious, and this board went through 3 revisions mostly to optimize for production, culminating in Rev 1.5c which is the first public release. A crucial change in 1.5 is the ability for the FPGA to analyze sync signals.
Manufacturing of the boards were completed in August this year, but the firmware was not yet ready and a lot of testing still to be done. The game Batsugun was a real curve-ball, but it ended up making the firmware a lot more stable and compatible. Sadly though, there is no hope for Batsugun.
That is the story of the scaler so far – it took a bit of time, but nice things often do :)
This little write up would not be complete without a big thank you to RGB and rtw - thanks for invaluable technical discussions, encouragement, tips & testing. Also, a big thanks to all the wonderful people over at arcade-projects.com.