What's new

bodgit

Professional
Joined
Sep 6, 2020
Messages
249
Reaction score
432
Location
UK
With the original Frank_fjs-designed OLED selector not available, I've designed a new selector based around a cheap ESP8266 chip and the ubiquitous 128x64 SSD1306 OLED display. There is also a Micro SD socket along with some peripheral ICs.

Here's the laid out PCB, (no 3D models currently available for the three pushbuttons):

s16-selector.jpg


Most of the ICs and passives are hiding under the OLED display with the Micro SD slot on the underside of the PCB so it looks quite tidy. Some of the components are only present to allow the ESP chip to be programmed over serial; I already have firmware that is capable of updating itself from the SD card so provided you don't brick it completely, the two tiny buttons, 4-pin header and a handful of passives can be optionally left off.

One thing I realised a few days ago was that there are two revisions of the S16 multi and the selector header has moved location between revisions. This wouldn't be a problem except that the recently-announced S16 case by Semload has a cutout for reaching the selector and/or dipswitches and depending on which revision of the multi you have, the selector might not be visible. To solve this, I've added two solder locations on the underside of the PCB for the 2x5 socket and the selector should therefore sit in roughly the same place on both revisions.

All of the OLED bitmaps are read from the Micro SD card rather than baked into the firmware so I'm not constrained by the same memory limitations that Frank_fjs was. Some of the bitmaps that were scaled to fit in 64x32 for memory reasons can probably be redone to take full advantage of the screen size. I'm currently in two minds about whether to go for 128x64 bitmaps, or 128x32 bitmaps with some text on one half of the screen. I'm leaning towards full size bitmaps as 99% of the games are easily recognisable from their logo.

The firmware currently writes the selected game to SD and will switch to it again on power up so I just have the WiFi functionality to add now. Most of the web interface will also be loaded from the SD card so along with the OLED bitmaps, these can be updated by just changing the SD card contents without the need to reprogram the ESP chip.

I'm planning to adapt the schematic for the various other multis, the PCB layout will just need tweaking for the number of dipswitches used and to put the multi connector in the right orientation and location for each multi.

I will probably build some of these to order if people are interested, no idea on price currently. The OLED and ESP are probably best ordered from AliExpress but everything else is found at Mouser/Digikey/etc., stock levels permitting of course!
 
Awesome, Ill take one!

Suggestions:
M3 mounting holes in the corners?
Can you make a version with the connector/pins on the underside?
Maybe center the screen or layout the buttons differently? I want to 3D print a case or make an acrylic plate for it.
 
Last edited:
Awesome, Ill take one!

Suggestions:
M3 mounting holes in the corners?
Can you make a version with the connector/pins on the underside?
Maybe center the screen or layout the buttons differently? I want to 3D print a case or make an acrylic plate for it.
M3 holes in the corners can be done, I might have to move the buttons in the corners inward slightly to make room.

I didn't add holes initially, and this might go someway to answering your next suggestion about putting things on the underside of the PCB; there's not really much of a gap between the bottom of the PCB and all of the surrounding EPROMs on the multi. I thought about adding some supports, but there's not much exposed PCB that I can rest on so I was planning to just rest the selector on the EPROMs, possibly with a thin adhesive rubber pad to take up any slack. The header pins should hold the PCB firmly as it's not very big, it's 70x60mm as it currently stands.

I did originally lay the PCB out a bit smaller with all of the components and connectors packed on the underside, felt pleased with myself, then looked at my multi PCB and realised I wouldn't be able to plug it in as everything fouled against the EPROMs and so ripped it all up and started again :cursing:

That being said, you could solder the JST connector on the underside if you wanted, there's nothing on the flipside of the PCB there. You would also need to reverse the power/reset wiring harness, but that's easy. The other header is not needed if you don't plan to access the serial port of the ESP chip, or you could flip it or use a right-angled version instead to keep the height to a minimum. You wouldn't be able to plug it in directly to the multi, you'd have to use some sort of wiring harness extension.
 
Excellent stuff!
 
i actually paid for mine from Frank_fjs and then he went offline so I still haven't gotten mine - but I am in for this one.... :)
 
While I wait for the prototype PCBs to turn up, here are the current set of OLED bitmaps gathered from another thread:

all.png


I've increased the canvas size to 128x64 keeping the original image centred; most of the ones originally sized to fit in 128x32 are probably fine but there's a few that I think were sized to fit 64x32 that could maybe take full advantage of the screen size.
 
Yeah, nice job's
If possible, 3 for me.
Thanks a lot.
 
looks amazing! Please add me to the list for one.
 
Add me to the list for one. I fought dip switches last night trying to switch games.
 
Back
Top