Thank you for all your great work on the Arduboy. I am trying to build my second homemade Arduboy, this time I want to add a Flashcart. I have brought this module:
Then I connected to on an Arduino Micro:
CS RX1 PORTD2
I have already succeded in burning the bootloader, and the usb icon is shown on the oled display.
The flashcart is not found when I try the uploader script. Is it wrong to use this module? What am I missing?
Good topic, following it.
Do you mean W25?
You need to make sure if you are using this connection to use the bootloader designed for the old wiring.
You also will need to connect the CLK pin as well. The hold pin needs to be tied to a voltage source.
Double check the schematics in the reference post and let us know how it goes!
Thank you for your quick reply. Yes, w25Qxx - Sorry for the typo. I am sorry if I ask too much, I am still quite new to Arduboy.
I am sorry, I have not been able to find anything about old/new wiring, and what this means to the bootloader. Can you push me in the right direction?
Regarding the clk pin - I have followed the table made by the great Mr. Blinky, but I am still not sure which pin the w25Qxx clk should go to on the Arduino Micro?
Thank you for your help.
Best regards Karsten Thuen
You can summons the great @Mr.Blinky by calling his name three times (or by prefixing it with an @ symbol)
Poof! Mr.Blinky appears with a puf of smoke.
w25q32 module should be fine. But instead of 16Mb it’s 4Mb
Did you also wire up the CLK pin to micros SCK pin ? If not then thats probably the problem. If you did then the wiring should be ok unless you made some sort of wiring mistake.
Did you burn the correct cathy3k bootloader? The filename may differ depending on which display is used but it should end with -micro.hex
In the IDE you the following must be selected prior burning the bootloader:
- board: Homemade Arduboy
- based on: Arduino/Genuino Micro
- display: your display type
- Bootloader: Cathy3k
- Flash select: Pin0/D2/RX1
- Programmer: Your programmer type
Note: since you’re wiring the flash chip directly to the Arduino pins. it is recommended to add a 10k pull-up resistor to flash CS. This will ensure that no ‘random’ data is send to the flash chip while burning bootloader/upload over ISP
When you run the flash-writer script from the command line What JEDEC ID is reported?
Thank you for the clarification. That helped a lot. I found out I had not connected clk correctly. Now I have perfectly succeded writing to the flash cart. Here is the test result from the console:
Arduboy flash cart writer v1.16 by Mr.Blinky May 2018 - Jun.2019
Reading flash image from file “C:\Users\kthue\Downloads\Arduboy-Python-Utilities-master (1)\Arduboy-Python-Utilities-master\example-flashcarts\example\flashcart-image.bin”
Found Arduino Micro bootloader (COM6) at port COM6
Opening port …()
Flash cart JEDEC ID : EF4016
Flash cart Manufacturer: Winbond
Flash cart capacity : 4096 Kbyte
Writing block 4/4
And here are the wiring:
w25q32 - Arduino Micro
D1 - Mosi
CLK - SCK
D0 - Miso
CS - 10k resistor - Rx
And Kevin, thank you for the reminder of that thread.
One step at a time
Now I can this far. Problem is that the games does not get burned/loaded. After selecting a game, the progress bar fills up, and then the only thing that happens is that the top of the screen flickers.
I am sorry, it is not that easy to see on the bad picture. Does anyone know, could this be due to my bad soldering? Or maybe I have done something wrong on the way.
Again, thanks for this fun project
I’d say you’re using an 1.3" SH1106 display module which isn’t fully compatible with the SSD1306 displays used with Arduboy.
The Homemade package supports these displays though. But you have to recompile each game with the display setting set to SH1106