What's new

BladeZX

Grand Master
Joined
Jul 11, 2019
Messages
1,017
Reaction score
845
Location
Ontario Canada
Here is a short demo of the Sega16-Pi multi selector for use with the Sega16B multi kit made by Apocalypse.
It allows you to change games by using your cell phone and connecting to the IP address of the Raspberry Pi used with the selector. It uses the RPi as well as a Atmega328p chip for processing.
You can either have your own hotspot off of the Pi (which is the default in the original image) or you can change it in the wifi configuration to connect to your wifi at home

There is an option to load last game on startup. This will store the last loaded game directly in the memory of the atmega328p and when started it will immediately load that game. To switch to another game you will need to wait for the RPi to load up (which is not too long)

More information will come on the link to the pcb project from Osh Park as well as the parts needed to build the pcb and connections that are required between the RPi, multi selector and sega pcb board itself.

Here is a link to the demo


I welcome any feedback
Cheers
Bob
 

Attachments

  • 6F014306-F368-4198-99B6-476BEB4AEA01.jpeg
    6F014306-F368-4198-99B6-476BEB4AEA01.jpeg
    229 KB · Views: 241
  • A3CB6E21-40C5-4E4D-8DB6-94DE2B0786BD.jpeg
    A3CB6E21-40C5-4E4D-8DB6-94DE2B0786BD.jpeg
    166.3 KB · Views: 237
Last edited:
Here are the parts you will need to build the multi selector pcb:

Here is the link to the Osh Park project for the actual pcb:    Sega16-Pi Multi Selector PCB
NOTE: The minimum boards you have to order is 3 so maybe people can split on orders to get the boards

Here are the parts you need to build the pcb:

DescriptionQuantityPCB LocationDigikey Part No.Comment
Conn Rcpt 4POS 2.54mm2952-2229-NDone connects to sega pcb (5v, GND, reset)
one connects to pin 12, 16 and 18 on RPi
Conn Rcpt 2POS 2.54mm1952-2227-NDconnects to pin 8 and 10 on RPi
Conn Rcpt 3POS 2.54mm3952-2228-NDone connects to 5v, GND, Reset on mult selector
one connects to pin 11, 13 and 15 on RPi
one connects to 3.3V, SDA and SCL on RPi
Conn Rcpt 12POS 2.54mm1952-2034-NDconnects to multi selector (all wires from RPi connect into this)
Cap Cer 0.1uf 25V4C1,C2,C3,C6BC1154CT-ND
Res 10K OHM 1/4W 5%1R110KQBK-ND
Res 220 OHM 1/4W 5%1R4220QBK-ND
Res 1K OHM 1/4W 5%1R21.0KQBK-ND
Res 2K OHM 1/4W 5%1R32.0KQBK-ND
Crystal 16.0000MHZ 20PF1X11923-1400-ND
Cap Cer 22pf 50V2C4,C5445-175522-ND
Switch Tactile SPST-NO 0.05A3EG1829-NDblack switches for up, down and select
Switch Tactile SPST-NO 0.05A1EG1830-NDred switch for reset
CONN IC DIP SOCKET 28POS TIN1A120353-NDsocket for atmega328p
Atmega328p chip1ATMEGA328P-PU-ND
Conn Rcpt USB2.0 TypeR 4POS1UE27AC54100-NDmounts to the bottom side of the pcb
Conn Header R/A 3POS 2.54mm1952-2245-NDmounts to the bottom side of the pcb
Conn Header R/A 12POS 2.54mm12057-PH2RA-12-UA-NDmounts to the bottom side of the pcb
Conn Socket 10POS1SAM12535-NDmounts to the bottom side of the pcb (dip switch)
Conn Socket 22-30AWG Crimp Pin30952-2159-NDcrimp pins for all wire connectors
OLED 128x321Amazon URL:
https://www.amazon.ca/gp/product/B08LQM9PQQ/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1
 
Last edited:
Raspberry Pi Zero W was used for this multi selector.
I bought the RPi Zero W with the pin header already soldered to it

rpi-zero.jpg


This is the case I am using for it:

rpi-zero-case.jpg


You will also need a 8GB microSD card (I recommend Sandisk)

Here is the Raspberry Pi image you will need to load to the RPi. Just unzip it and load the img file using Win32DiskImager

Sega16-Pi Raspberry Pi Image

The pi user is: pi
The pi password is: segamulti

Here are the RPi connections that will be used and connected to the Sega16-Pi mult selector pcb

sega16-rpi-connections.png


Pins 1,3,5 are used for the OLED display
Pins 11,13,15 are used for the UP, DOWN and SELECT buttons
Pins 8 and 10 are used to send and receive data from the Atmega328 chip
Pins 12,16,18 and 32 are used to program the Atmega from the Raspberry Pi

Connect a USB to microUSB cable from the multi selector to your RPi in order to power everything from one place

You also need to make a connection from the Sega16 pcb to the VCC, GND and RST pins on the multi selector
Red is VCC (5v)
Black is GND
White is RST
IMG_20200416_213545.jpg
 
Last edited:
Once you have everything setup and connected to the RPi and the multi selector, turn on the Sega pcb and wait for the RPi to fully load. You will know it is loaded when you see the OLED is lit up

NOTE:
*** All dip switches must be in the OFF position on the multi board by Apocalypse

The first time you load it up, it will default to a hotspot with the name Sega16-Pi
Connect to the hotspot (password is segamulti) and then go to your browser on your phone and go to any web address (eg: gg.com)
The web interface should appear and you should see the games listed

For first time use ONLY:
Go to Tools and select Set Atmega Fuses
This should come back successful and ask you to reboot the Pi (do not do that yet)
Select Program Atmega
This will program the hex code on the Pi into the Atmega 328p chip
Once successful reboot the RPi or just power cycle the Sega pcb power supply since everything gets its power from it

The game that will load the first time is Excite League. Once the RPi has loaded, you can connect back to the hotspot and change games.

You can also go to the Tools and select Wifi Configuration to join it to your home wifi network instead of using a hotspot.
You will be asked to select your wifi network and enter your password. You then need to click Apply and Reboot
This will reboot the RPi and it will connect to your home wifi if your credentials are correct.
 
Last edited:
Just curious, but do you have an estimate of what the whole multi and selector costs? Super nice project. My ST-V is jealous!
 
I will try and work that out
The multi from Apocalypse was about $250 USD
The parts for the selector are cheap - it is the pcb from Oshpark that u have to buy 3 of them so possibly someone in the US can get some made and share them. It might be easier in the US as I am in Canada and things are damn pricey here
OLED screen was about $23 CDN for 4 of them
The RPi Zero W was about $25 CDN or so with the header already soldered

BTW... I plan to make the same thing for the STV multi cart
My cart is on its way from High Score Saves and I just ordered the pcb tonight for it
 
I do have an extra Sega16-Pi multi selector board here that I have built.
Since I am in Canada... If anyone in Canada wants it I could program the atmega for you, test it and send it out to you - u just pay $25 + shipping
You would need to build the harness to connect to the RPi and the Sega16 pcb
Of course u would also need a pi zero W
 
@BladeZX Hey Blade. I'm getting ready to order the BOM for this. The bottom double height connector, ESW-105-33-G-D; could I install a double row pin header and just use an IDC cable as an alternative? I might move the entire board elsewhere on the PCB using a custom mount. Just want to be sure there wouldn't be any performance / DIP switch setting issues if I go this route. I'd appreciate any insight.
 
Just finished building one of these, works great! Thank you!
 

Attachments

  • 20230401_190150.jpg
    20230401_190150.jpg
    165.1 KB · Views: 95
Is it possible to update the code/Pi Image to be compatible with the Arcaniac System 16 JAMMA adapter? I had an idea that if you could set the Dip Switches on the Multi-Pi, then you could also set the jumpers on the JAMMA adapter with 2 cables running to it from the Multi-Pi. Since the System 16 seems to have a Per-Game button setting, it would be useful here, especially, to have the Multi-Pi set the jumpers automatically when the game launches. What do you think?
 
Just finished building one of these, works great! Thank you!
Hey Slayer. Could you post photos of how your selector is mounted? Yours may be one of the first to be mounted to a v1.5 Multi. I'm testing mine out and it works except for actually switching games. I'm working with Blade to figure out what the deal is; maybe we can figure it out based on your install.
 
Bugger, looks like the Raspberry Pi Zero W is out of stock everywhere. With the exception of some damn scalpers on amazon etc.

Digi-Key is reporting 2 August, 2023 as the available date. Day after my birthday!
 
Bugger, looks like the Raspberry Pi Zero W is out of stock everywhere. With the exception of some damn scalpers on amazon etc.

Digi-Key is reporting 2 August, 2023 as the available date. Day after my birthday!
Pi Zero W have been relatively easy to get as of late if you follow rpilocator on Twitter. Although this week seems to be targeted for Pi4's.
 
Hey Slayer. Could you post photos of how your selector is mounted? Yours may be one of the first to be mounted to a v1.5 Multi. I'm testing mine out and it works except for actually switching games. I'm working with Blade to figure out what the deal is; maybe we can figure it out based on your install.
Sure, just plugged it into cn5 in the orientation described on the pcb as far as facing the edge connector. I want to build a shell for it and the pi to have it remote someday. Also, I created a gerber out of the file from oshpark and had it made by jlcpcb for much cheaper. If it's ok I can share that file.
 

Attachments

  • 20230412_190920.jpg
    20230412_190920.jpg
    174.5 KB · Views: 83
Sure, just plugged it into cn5 in the orientation described on the pcb as far as facing the edge connector. I want to build a shell for it and the pi to have it remote someday. Also, I created a gerber out of the file from oshpark and had it made by jlcpcb for much cheaper. If it's ok I can share that file.
And all you did was download the image from Blade's link, used a Pi Imager (I used Raspberry Pi Imager) to write it to the microSD, load it up, set the fuse, program the Atmega, and log in to the hotspot, gg.com opens up, games listed, launching game changes game? If so, I have no clue what's actually wrong with mine then. I've swapped Pi Zeros and the Atmega and it just doesn't change games; either from the Hotspot or the actual board. Everything else seems to work.
 
Sure, just plugged it into cn5 in the orientation described on the pcb as far as facing the edge connector. I want to build a shell for it and the pi to have it remote someday. Also, I created a gerber out of the file from oshpark and had it made by jlcpcb for much cheaper. If it's ok I can share that file.
We got it resolved. Pi Selector works fine now. It was a stupid user error that just didn't come to light until I needed to wire up the GPIO for 3 more pins where I only saw 2 before. that means the lone, single wire (GPIO12) was grounded the entire time diagnosing this. :cursing: I switched the wire to the correct spot and tried again, but had another issue. I had clues to what that was and I corrected it, which allowed the selector to finally select games. I thank @BladeZX for his patience and diagnostic abilities to see the weird behavior when that wire is grounded.
 
Glad to hear it got resolved. I too miswired the gpio at first and took me a couple hours to figure out why it would fail setting the fuses haha.
 
Back
Top