Arduboy Max (coming soon-ish)

What is this? An open source game development platform for GIANTS?

IMG_20190703_033127-small

Introducing Arduboy Max!

Arduboy is being reconstructed to smallest possible dimensions using the 0.96" OLED to stupidly large scale yet (technically) portable using a 11.26" LED panel.

Think I should put a keychain hole?

The ATmega2560 is emulating the SSD1306 over SPI and driving the LED panel.
ATmega32u4 is running an almost-unmodified build of Starduino: I had to drop the SPI clock to 4Mhz for the ATmega2560 to keep up.

I got two options in the works to fix that and (hopefully) be 100% backward compatible.

Do you want an Arduboy Max of your very own?

  • This is dumb and shipping would be hell.
  • Are you even going to finish that project?
  • Did… did you accidentally smash a corner of that expensive LED panel only 2 hours after unpacking it?

0 voters

6 Likes

I edited this to give it a poll and I also changed the name to Arduboy Max, I hope you are ok with it. :smile:

2 Likes

Hahahaha I expected you’d edit the poll into a real one :smiley:

I also learned the hard way that the LED panel will instantly blow up an expensive Due board (or just about any board for that matter) if I unplug the panel first as it then tries to power itself through the GPIO pins… about 2 amps worth. I think I got a fix for that too.

To its credit the ATmega2560 I swapped in after destroying my only Due board survived long enough for me to realise what was happening and unplug it when I saw the LED panel partially power up through the 2560’s GPIOs.

It’s still working but it can’t have been good for it.

I’m getting another Due. I was able to push (internally) RGB888 as RGB222 as a quick initial test before I fatally unplugged the panel’s PSU.

I want some ARM board with the extra RAM to run full color stuff when it’s not just emulating the OLED.

That or a Pi+CPLD helper for reliable communication with the 32u4…
Or I use the Due to reliably emulates & drive the screen and optionally control it with a Pi over USB.
Jury is still out.

And I guess I gotta add an SPI ROM chip to the BoM now… I must have some dead PC motherboard somewhere with one I can salvage.

2 Likes

HaHa Cool! I also bought one of those Large 128x64 RGB LED panels (Is yours white only? it looks so white)

A trick you can try is to use the same clock for Arduboy MCU and your ATmega2560 then you can use ATmega2560 In 2X Master Mode as well. If the MCU osc output is too weak you can use a 16MHz oscillator module to drive both.

If you want to mount this all on one board I think I have a PCB fab that would sponsor it. :slight_smile:

It’s full RGB but I wanted the full Arduboy monochrome effect.

Yeah, driving them both off the same clock could help but there’s also the issue of capturing the D/C line to correctly emulate the SSD1306.

That’s two bytes/registers that need to be recorded per SPI byte. They get buffered to SRAM as on-the-fly emulation isn’t possible: too many cycles required to parse commands.

And capturing the D/C line needs to be done as the first SPI bit is being sent, not after in the interrupt handler.

So I’m probably gonna create some serial->parallel FIFO buffer in a CPLD to capture this and reduce the number of IRQs.
Some ARM boards have DMA channels that might even handle the transfer but I need to capture SPI+1pin and convert that to something the ARM board DMA will handle.

The CPLD will probably also be used to shave off a few opcodes when driving the LED panel and/or convert another DMA channel’s data.

I’m gonna try with the 2560+CPLD for a while… until I get over the frustration of frying $50 within less than 1 hour of use and order a new Due board or similar :smiley: