Arduino Does SDI Video With FPGA Help

If you are running video around your home theater, you probably use HDMI. If you are running it in a professional studio, however, you are probably using SDI, Serial Digital Interface. [Chris Brown] looks at SDI and shows a cheap SDI signal generator for an Arduino.

On the face of it, SDI isn’t that hard. In fact, [Chris] calls it “dead simple.” The problem is the bit rate which can be as high as 1.485 Gbps for the HD-SDI standard. Even for a super fast processor, this is a bit much, so [Chris] turned to the Arduino MKR Vidor 4000. Why? Because it has an FPGA onboard. Alas, the FPGA can’t do more than about 200 MHz, but that’s fast enough to drive an external Semtech GS296t2 serializer which is made to drive SDI signals.

The resulting project contains the Arduino, the serializer, a custom PCB, and both FPGA and microcontroller code. While the total cost of the project was a little under $200, that’s still better than the $350 to $2000 for a commercial SDI signal generator.

If you want to play along, the files are out on GitHub. We used the Vidor back in 2018 when it first came out. If you need a quick start on FPGAs, there’s always our boot camp.

12 thoughts on “Arduino Does SDI Video With FPGA Help

      1. Not at all. The Blackmagic ATEM switchers use multiple FPGAs and a microcontroller, where the microcontroller’s job is to handle things like the Ethernet and USB interfaces. That’s all it needs because a microcontroller is all you need for the user interface, while the actual video processing is massively parallel and best done by FPGAs. What do you want to do, spend expensive FPGA gates on stuff you can easily do with a cheap microcontroller?

  1. First off, this is a slick project and a good starting point for other SDI solutions at much lower cost than off the shelf products.
    Second, the title is misleading as the Arduino is not “doing SDI”, but rather providing the data needed for 2 other devices “doing SDI”. The title caught my eye because I am familiar with manufacturing converter products for 3G/12G SDI, HDMI, ST Fiber, LC Fiber, and SMPTE 2110 which are definitely not cheap.

    1. Misleading titles are a defining feature of this website that you should not criticize. The sarcasm detector of this website is human based, this one should be pushed beyond its boundaries.

  2. On the other hand, existing microprocessors CAN keep up with generating HDMI outputs in real time (like what happens when you play a movie on your RPi), and converting HDMI to/from SDI is a matter of $25 Chinese converters, or to get both in one module, a Blackmagic device that combines both in one box for $65. I see that DigiKey is selling that Semtech chip for $37, which is just the serializer (i.e., parallel port in to SDI out). Of course, it is better in many ways to avoid HDMI in the first place, but to me it would be just as important to convert SDI to parallel as vice-versa, but does that mean ANOTHER expensive chip?

  3. This is a good start for other SDI projects.
    But comparing this to a HDSDI tester/generator is a stretch. The standard is full of options of different bit rates, image formats, resolutions, audio and metadata to include. Besides Blackmagic, do other devices like your Bitstream? Good luck in generating useful and compliant HDSDI from scratch even with a format analyzer. Been there, done that, and it was painful…

  4. Is the Arduino really anything other than a proxy for the config? I don’t really see it doing anything other than throwing the odd serial instructions over a line to a device doing the heavy lifting.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.