Arduboy Factory Test

Just for posterity sake this is the app I wrote for testing the hardware in the factory:

And in the emulator:


It needs to be updated for the FX, to check for the W25Q chip.

Should also have it list out a hash of the bootloader. these are things I could use help from @mr.blinky but it’s also in his flash test sketch so I should be able to figure it out from there.

Want to make it so that after the test is complete it will flip an EEPROM bit and the sketch will actually load up as an “About FX” which will have a tutorial on how to use the menu and hopefully also community credits page.


My emulator has failed. I will have to contact support (@FManga).


Ya it for crashes the emulator. It’s something I’ve pestered him about before but it has to do with it being in a frame. It’s actually a memory bug from the browser.

Run the emulator in it’s own window and it will run fine. Also firefox supposedly gives more correct results, but it seems to run faster in chrome.

Oh, you are making a joke because the emulator fuse bits aren’t set correctly…

Sorry it was a bad joke :frowning:


Here it is detecting the new fuse settings and the flash chip for the FX.

Now, to make it flip an EEPROM bit when it’s passed and then load into a welcome message!

And on the hardware:


So after the test is complete, it will set an EEPROM flag and then on boot it discovers it and switches to a “welcome to arduboy” mode.


Some things I could use help with:

  • What EEPROM address and value you is a good idea to use, knowing that we don’t ever expect a user to use this app ever again.
  • Is there a way to speed up the printing of strings so that the performance doesn’t suffer on row 3 and 4?

I thought about only re-drawing the section of screen where the text has changed, which I COULD DO, that’s the only viable solution I can think of. But kinda hoping there might be an easier way to print the string to a graphics buffer that I could just draw all at once.

Oh yeah, I forgot to mention, it doesn’t reset the display! So it doesn’t blank for a second from the boot menu, meaning it will appear that “Arduboy FX Loader” text explodes into particles! Yay!

Since this is sort of a “special” program, related to testing, bootloaders and system stuff, you could consider using the single byte at EEPROM address 0 (off limits to “regular” sketches), that recently has been reserved for this kind of thing. I think @Mr.Blinky decided not to use this location for his purposes but you could discuss with him how you both feel about if, and how, it should be used (such as a particular bit as a flag).

Yeah that’s what he suggested too.

I think I’ll probably toss this program in the “tools” category so people can get to and if they really feel like exploring the test menu they can flip that bit using another tool!


Nice re-use of the particles!

1 Like

Thanks, I’d like to clean up the library and make it more portable and easier for others to use. (might get to around to it… one day)

And thanks again to @pharap for Physix - A simple physics toy

It’s all based off that and he helped me reduce the footprint by moving it to fixed point.


Thats a flippin awesome idea you had there! :+1:

arduboyFXTest2.ino-arduboy.hex (34.5 KB)

With performance upgrade