HDMI1306 - HDMI for Arduboy?

Tell me about the HDMI!

I would also like to know. Can we make a arduboy console with hdmi out?

I think so! @uXe pointed us at this part Rochester Electronics (en-US) : Part HI1178JCQ and said it would be perfect to drive HDMI.

Let me know if you think it can be done, if you need help getting chips or quantity production made let me know I can help out :slight_smile:

That chip is a DAC, it won’t help with HDMI. I think uXe meant using it to generate VGA analog signals without using a resistor ladder to sum parallel digital I/O to generate higher color depth analog video.

They do make chips that will handle HDMI output from either analog or digital video standards but the chips aren’t exactly easily available in low quantity to relatively small companies and without signing NDAs to get the datasheets. It might ironically be easier/cheaper to just buy vga to hdmi dongles and use as is or scavenge the chip from them. Going the hard route (though infinitely more elegant) would be to design an FPGA hdmi implementation (in similar fashion to how the gameboy hdmi mods were done).

Yep, sorry for the confusion - as Shawn said, what that DAC would be perfect for is getting more colour depth in VGA (ie. instead of constructing ever-more complex resistor ladders to achieve more colours, as most FPGA boards seem to do, just drop in that DAC and you’d get all the colours :slightly_smiling_face:).

As far as doing HDMI, again Shawn is right, the chip out of a VGA->HDMI dongle is the drop-in solution. I linked to a datasheet and source for one of those chips in this post above. Bonus is that this chip also combines audio-in with the video signal. Because I know that if we made HDMI video output work, the first comment would be - ‘cool, but where’s the sound?’ :sweat_smile:

Honestly though - I would contact Iulian Gheorghiu, he already has a working AVR core and a hardware design for an FPGA-based Arduboy (this is what the MiSTer Arduboy core is based on):

https://store.devboard.tech/en/

Would just have to swap out the FPGA chip for one with a little more room to accommodate a HDMI video/audio implementation in there, and it’s ready to go. This way you can just lose the 32u4 altogether, one FPGA can handle running the Arduboy game and doing the HDMI video/audio output at the same time. The guy is a wizard, and if there is serious intention to pay someone to make an Arduboy console happen then I believe he can deliver.

1 Like

Maybe this will get people excited - just saw it on cnx-software announced today.

£13.48 | Sipeed Lichee Tang Nano 4K Gowin Minimalist FPGA GoAI Development Board HDMI Camera

By all accounts, it has the cortex M3 that might be easier to port across than implement arduboy as-is in gates. And hdmi out. Please could someone with FPGA knowledge chime in on whether they think this could be a good dev board for hdmi arduboy for “us” to play with?


Edit - cnx-software link: $18 Tang Nano 4K FPGA board comes with HDMI output, optional camera - CNX Software


Another edit - maybe we should split the topic to arduboy + hdmi instead of staying in arduboy + vga.

1 Like

I doubt anyone would replicate the 32u4 at the gate level unless the application is super timing specific, you’d basically implement a softcore processor at the register level in hdl. It’s been years though since I played with fpgas but 4k LUTs sounds an order of magnitude or two too small to replicate a 32u4. For generating HDMI with an ssd1306-like interface it’d be fine though.

1 Like

I’m happy to handle the splitting if someone could specify at which post the split should begin, or which posts should be included if it’s going to be more complicated than “this and everything below it”.


If the main processor is fast enough, an AVR emulator would be a reasonable option.

That seems the better option to me.


Do you happen to know if USB serial is comparably fast to the SPI connection that connects the 32u4 to the Arduboy’s screen?

If it were, the commands could just be routed over serial instead.

In fact, if it is fast enough, I might be tempted to make a desktop SSD1306 emulator that takes commands via serial.


(I haven’t actually been following the technical side of the thread. I’ve just been watching people pull off magic and nodding approvingly.)

1 Like

USB bandwidth is plenty fast enough, the limitation would be the 32u4’s implementation of the usb stack and sending uart over it. I’d assume 1Mbps should be doable (easy enough to test this). So that would be about 128KBps, and assuming no overhead and transferring 128x64 (1024bytes per frame) that would equate to a max theoretical frame transfer rate of 128Hz. Account a fudge factor of divide by 2 just for house keeping/overhead and that’d still allow 64 fps. This is all back of the napkin though so ymmv.

2 Likes

I think this is the start of the hdmi thread.

2 Likes

Oh wow so we could use the VGA version and then just add this chip to it?

AG02-EX

200

I remember some threads heading in that direction…

1 Like

I’ve never used ‘screen mirroring’ before, so I don’t know what the speed is like, but if ‘screen mirroring’ works well then theoretically there should be no problem with creating a ‘virtual’ SSD1306.

I might have a go at some point, if for no other reason than creating a screen mirroring tool that’s actually open source.

(Unless @tuxinator2009’s ‘Arduman’ already does this?)

I bought ~$200 worth of max7219 led matrix displays over the shutdown to build a massive wall hanging 128x64 led marquee, gonna see if I can attach a headless arduboy and add bluetooth for control. Seems like the reasonable thing to do …

This is an early test with 40 of the 64 rows built and some buffered driver software written to test the idea out. Driving 8 spi busses concurrently (software bitbanged of course but still able to get over 60Hz update rates).

2 Likes

You absolute nutter. I completely approve.

1 Like

That’s amazing. Was more or less than half your budget spent on cooling apparatus for the eventual behemoth?

I can see @bateske promoting it with the headline “that time Arduboy wanted to be a wall paper stripper” :grin:

1 Like

Powered directly from my laptop’s usb port, set to low pwm brightness and only consumes 210mA at 5V with all those characters lit up! No doubt at full brightness and every pixel on it’d jump to a few amps though lol.

4 Likes

@sjm4306 Reminds me of the LED panel that @JayGarcia made!

Alright then @ande3367 @uXe where could I find the latest board files and what package are you using? Do you have the schematic posted what updates got made?

I can add the AG02-EX and 32u4 to the design… and try to source some.

What should be done for controller?

2 Likes

Ah! @sjm4306 this is so cool! Pretty damn impressive that you could power all of those LEDs on only 210mA @ 5V!

The screen that @bateske mentioned can be viewed here.

It used P6 LEDs and required way more power than what a Laptop USB connection could provide.

not to threadjack, but… for anyone interested in what we did with that experiment, we ended up taking the concept and scaling it big time.

I so miss working with the Arudboy :cry:

3 Likes

What’s stopping you? Lack of time?

1 Like