Looking for Arduino Zero pinout

I am trying to build a Gamebuino Meta from scratch, for my own use. I understand that Rodot wants to stop knockoffs being sold and ruining the community, so finding information to reverse-engineer it has been difficult. So, for my question - I’ve managed to dig around the source code and find pin definitions, but they are in the format of “(30u)” (specifically, the TFT CS and D/C pins).

Then I did some way deeper digging and found a table of raw SAMD21 pins to Arduino Zero map. But the problem is, pin 30 in the SAMD21 does not map to a Zero pin. How could I go about wiring this? I might as well experiment by changing the pin definition, but I don’t know how important that specific pin is to speed and functionality. Also, why are the pins in Gamebuino.h defined by raw SAMD21 pins instead of Zero pins. Thank you.

As a side note, when I upload the example world code to the Arduino, it compiles and uploads correctly, but then the arduino disconnects from myPC. It is still on, and to get the computer to recognize it again I have to double click the reset button, which means it is somehow getting switched into Programming port mode out of Native port mode (it is a knockoff from China which has some characteristics of the M0, and this might be part of the problem). The screen works with Adafruit’s example program, but uploading Gamebuino code just leaves a white screen

would be cool to consolize the gamebuino :slight_smile:

Hey, somebody responded! One of my goals for this project is to eventually write/port a Gameboy or NES emulator to run ahem, legal homebrew ROMs. Only problem is, I don’t have anything to test it on and I’m a bit strapped for cash right now :upside_down_face:

Nice project!

I started writing a gameboy emulator for the Meta earlier this year and let the project down by lack of time, but I’d be very happy to see how you’d do that and if you end up having something playable. I’m curious how you’d load the ROMs.

in fact the display code not use pin definition, it’s hard coded : https://github.com/Gamebuino/Gamebuino-META/blob/master/src/utility/Display-ST7735/Display-ST7735.cpp#L316

maybe the same as the define but must be PB(?) 22/23 ?

from this page : https://learn.adafruit.com/using-atsamd21-sercom-to-add-more-spi-i2c-serial-ports/muxing-it-up


so, for your arduino zero, if it’s port B it’s hidden into your programming port, else if it’s port A it’s may be sda/scl pins

you may use any other pin for your dev step and recompile any program you wanna test

. . .

i recently get a pokitto, near the same system but have 4k ram more and a bigger screen wired in //, there is a game boy emulator running into, i done some work to speed it up, near 70% real speed on some games, i may try backport it to the meta

roms are hard coded into the binary, an online tool live patch binary with any other rom (also patch color palette and choice scaling, my version got live scale & palette flip)

here is the source

Funny enough, I managed to stumble upon this table in a completely different way when I was looking for the META board file (for the Arduino IDE). I found this page deep in the tutorials, which happened to have a link to the variant file :smile:. I am not very used to this low level stuff so it might take me a while to wrap my head around the Adafruit link you sent. But what I’ve gotten from it is that the Arduino Zero doesn’t have a direct pinout to some of the SAMD21 pins… What do you think r0dot did to make the META? Thanks for helping, hopefully this thread can help other people in their DIY quest.

EDIT: forgot to add that the board I’m using is this strange hybrid which shares some qualities of the Zero and the M0 pro… as far as I can tell, it looks like the pinout is more similar to the M0 pro according to this image

I don’t know if it is help but… the gamebuino is cost 41.62€ with the coupon COVID19 code.

I’m more interested in the challenge of building it than actually owning one… $45 is tempting, but at least for me it would not be satisfying to just buy one. I’ve already built my own version of the Gamebuino Classic, which was much easier since it was open source from the beginning and much simpler electronically and software-wise.

Ok I understand.
Why don’t you contact rodot ?

Yes, only Rodot can help you. Try to contact him

I joined the discord and there already seems to be some good stuff there. I’m not sure if rodotwould appreciate getting pinged by a random person (probably wouldn’t mind since this is a relatively small community) but just in case I’ll save it for a last resort

1 Like