Chicago Dynamic Industries Sound Card (EM Gun Games)

A fellow Arcade collector sent me this Private Message a few months ago on the KLOV forums:

I’ve got an old EM Chicago Coin “Shoot Out” gun game. Works great, but came without the sound PCB that generates the gunshot sound. They also made a “Coney Island” game that used the same sound PCB, but I’ve been searching for ~5 to 6 years for a used board with no success.

The problem with the soundcard is it used older End-Of-Lifed (EOL) transistors that can’t be easily found. I offered to help him design a PCB and BOM which would duplicate the sound and provide a “modernized” BOM which could be ordered off Digikey.com. He reported back that after some rework to the pinout; the card worked as expected. As a result; I’ve incorporated the rework (ie corrected the design)… and have provided the materials here for the public to duplicate and use for any older machines which are missing (or has a non-functional board) the EM Gun Soundcard used in these games.

The major changes to this board vs the original are as follows:

  1. The PCB is double sided with large ground plans to aid in noise reduction.
  2. Additional caps are placed on IC1 (LM380) and the Zener diode regulators to help improve the immunity of the circuit to noise. CIC1, C22, C23 – all .01uf.
  3. PCB’s has both a top and bottom silk screen:
    1. Top has values and reference designators to aid in assembly and debug.
    2. Bottom has used edge fingers labeled as well as the legs of the transistors; again for debug.
  4. All transistors were replaced with 2N3904 NPN transistors which are very much still in use today. The single PNP was replaced with the 2N3906.
  5. Test points for the 18V, 12V, 9.1V, and ground rails are provided for easily troubleshooting the voltages on the sound board.
  6. LEDs provided for the 12VAC and 30VAC lines coming into the sound card. Again quick glance that there is at least some voltage going into the sound board.
  7. Although not needed in a real game; two mounting screw holes are needed if you have a non-standard installation.

I’ve decided release this design to the public under the TAPR Non-Commercial Open Hardware License which indicates:

You may make products based upon this design, provided you do not make more than ten units in any twelve month period for your personal use.

If you agree with the license terms; Schematics and BOM lists are posted here under TAPR/NCL license:
Rifle 444-310 Soundboard Package

Ordering should be easy: https://oshpark.com/shared_projects/6GKvZu4s
The boards are $67-ish for a set of 3 PCBs… and they are high quality. Gold plated fingers, two layer, silkscreen on both sides. It’s the cost of doing prototypes. OSHPark usually get the PCBs back to you in about 2 weeks.

BOM Cost from Digikey came to a WHOPPING $17 for one board. My advice is to take the BOM and multiply it by 3 in Excel or some other spreadsheet app. It’s usually cheaper to by 50 or so of the resistors. IE in one qty; they are 8cents… in 50s they are > 3cents. I usually buy 50-100 of each; just so I have them around when I prototype on breadboards and such.

The PCB is very compact; it was done this way to save on the prototype PCB sq inches cost. If you find some of your components are tight; you might try laying them similar to this:
http://pcb.bastl.sk/?page_id=50

Here’s a picture of the assembled board:

Rifle Ricochet sounds w/ AMP Fab B assembled
Rifle Ricochet sounds w/ AMP Fab B assembled

Hope this helps the EM Gun collectors out there. If it does… please drop me a comment letting me know it’s done some good!

Bally (AS-2518) Audio Card tester

For the past week or so; I’ve been working on the Audio solution for the Star Trek: Mirror Universe project. I’ve decided I want to combine a Raspberry Pi with the guts of a Bally AS-2518-32 soundcard. These cards are not yet rare; but the PROMs and the 4bit counter on them are rare. As a result; I’m going to be trying my luck with the first Complex Programmable Logic Device (CPLD) project I’ve ever embarked on. More on that later tho.

Given I’ve designed a replacement sound card out of new components; I wanted the ability to test the card outside of the machine… because I don’t want to risk burning up a perfectly good Bally CPU board with a risky design.

I spent quiet a bit of time looking at the schematics of the AS-2518 Bally sound cards to understand it’s functionality so it can be duplicated. The result is that I decided to design simple micro-controller-based tester which would sequence my new design thru all 32 tones generated by the on-board logic.  Since I already had a Arduino Nano (purchased from FRYs) for the Pinball Nixie Display project – I re-purposed it for the Pinball Audio Tester.

I began by rewiring the cables for the Audio board as follows:

J1
(Audio)

Arduino
Nano (PAD)

Color

Cable

NAME
(AUDIO)

12

D2

Orange

1

SOL_E

11

 

 

 

<KEY>

10

 

 

 

 

9

 

 

 

 

8

D8

Yellow

2

sol_bus_sel

7

 

 

 

NC

6

GND

Bare

2

BARE(GND)

5

+5V

Red

2

+5v

4

D11

purple

2

SOL_D

3

D12

brown

2

SOL_C

2

D13

grey

2

SOL_B

1

D7

blk

2

SOL_A

I’ve decided to share the Source code so that other Pinball hackers can take advantage of my work. You can download the source code from here:

PinAudioTester.ino Rev 0.1

The source is simple and should be easy to understand – please consider sharing any improvements you decide to make.

To power the Arduino and the soundcard; I created a 4pin Power cable which plugs into my debug ATX powersupply with color-coded aligator clips. I attach the Red (+5V) to the TP1 test point, Yellow (+12V) to the ?TP3? testpoint, and Ground (Black) to the TP2 testpoint. The design does not currently test the 43V to 12V linear supply as ATX doesn’t output that high of a voltage.

I’ve tested the source on my original AS-2518-32 sound card and it outputs 30 tones and two silences as implemented in the pROM. I now await the new soundcard PCBs from OSHPark to do some final testing.

Star Trek Red Alert Audio Trigger

For those following my Sega Star Trek Captain’s Chair restoration; I replaced all the bronze plexiglass with some newer Transparent Grey Acrylic which did not have scratches. One of these peices was featured in the Restoration Worklogs at AustinModders.com or KLOV.com where I custom laser etched schematics of the Klingon D7 crusier and the Nomad Probe:


At the time; I predicted that the etch would not show up well once it was installed in the chair:

Sadly; that prediction came true. As a result; I decided I wanted to find a way to lite the etch with LEDs. SeaWolf on KLOV mentioned to me that he planned on lighting his Chair with some red lights to give it a “battle stations” feel while playing… I told him at the time; I’d proably steal his idea … which is the update your reading about now.

To light the Etch; I decided to create a Red Light bar under the custom Black Corner piece I created when I destroyed mine. But before we go there; I had to decide HOW to create the light. I decided I wanted mine to “activate” when a new game was started and then automatically turn off when the game was finished. I don’t have access to the Star Trek source code; so a software hack seemed problematic. Hummm… What’s the next best thing? Audio! With the exception of attract speech from Scotty and Spock; the instructional videos are silent. So I decided I wanted my machine to go into “Red Alert” Mode when real game play audio starts.

The Red Alert Audio circuit was born. 😉 I spent several nights running spice simulations and came up with this circuit which I’m donating to the public under the TAPR Non-Commercial Open Hardware License which indicates:

You may make products based upon this design, provided you do not make more than ten units in any twelve month period for your personal use.

Schematics :

Click to view Red Alert Audio Schematics in PDF

The only IC in the circuit is U1, a dual JFET opamp – TL062P which operates from a single supply at ~12VDC. U1A makes up a 13.5x amplifier to amplify the ~100mV speaker signal from J1-1. The amplifier operates in non-inverting mode; so the gain is derived from 1+R9/R7. R6 is a series resistor intending to limit the loading of the audio amplifier (prevent distorition) and impedance match closer to the that of the 8 ohm speakers present in the upright version of the Sega Star Trek. D1 and D2 provide over/under voltage protection for U1A; limiting pin3 to 12+0.7V and ground (-0.7V) – a real possiblity given the audio amp is powered from a split supply @+/-24V. C2 is a DC blocking cap to prevent our single supply opamps’ bias voltage from loading the sega’s audio amps. R10 provides a high resistance path to our bias voltage of ~6VDC.

The second opamp (U1B) operates in comparator mode; comparing to the voltage divider made up of R4 and R5. V+U1B is (R5*Vcc/2)/(R5 + R4) or 100k*6V/(110k) or 5.46V. If we have no input audio; Pin1 floats above our bias of 6V; forcing the comparator to drive low providing no voltage to the remaining circuitry… effectively an off. Once the amplified input exceeds (6V-5.46V) 546mV; charging current is sent to D3. For those paying attention; 546mV /13.5V/V… means the input voltage at J1-1 must exceed 40mV regularly to charge the capacitor at C1. Empircal evidence on my Chair indicates that “Thrust” alone generates ~100mV at Pin3 of the U1A. Ofcourse your mileage may vary depending on a number of factors including your current volume level.

Once Pin7 of U1B begins to provide a voltage it is channeled to the RC circuit made up of R2&C1. Since the comparator swings between ground and ~+12VDC; it take nearly zero time for the capacitor C1 to charge to full capacity ~R3*C2 or 3.5mS. D3 provides blocking to prevent U1B from loading the RC circuit and R3 provides load resistance to prevent “shorting” the opamp to ground while C1 charges. Once U1B turns off; the RC circuit becomes a voltage source for M3. R2 slowly drains C1 meaning Toff = R2*C1 or ~8.6seconds. This time delay is necessary to ensure the red alert bar doesn’t go off in the middle of a game… IE between Sectors.

R1, Q2, and Q2 make up a BJT Current Mirror with M3 becomming the “on/off” switch for said mirror. When the gate exceeds approx 3.3VDC; M3 turns on conducting R1 to the top of Q1. Since we tied V+ (J2-1) to the 12VDC PSU in the sega G08 Card Cage; We can calculate the reference current into Q1. Iref is (V+ – Q1_VEB)/(R1 + M3_Rds); assume Q1_VEB=0.7V and M3_Rds from datasheet is 5ohm max. Iref is (12-0.7)/(681+5) or 16.5mA. Given Q1=Q2; ILED @ Q2 (J2-2) is 16.5mA; meaning we now have the means to pull 16mA thru up to 5 LEDs. Given my planned use is ~2V super bright Red LEDs; we can fit at most 5 LEDs in the leg of the current mirror before we run out of voltage. Q4 is a secondary Current Mirror “channel” to allow me to drive another 5LEDs… so I now have a means to drive 10 LEDs in the Red Alert Lightbar.

The powersupply for the circuit is made up of D4, C4, and C5. D4 provides a blocking diode incase I screwed up the wiring. C4/C5 provide filtering given the 12VDC source is about 12feet away. D5, R11, and Q3 make up a simple linear regulator to derive the 6VDC (VCC/2) biasing voltage to U1.

Whew! – clear as Mudd? There was some detail there; hope some of it made sense. 🙂

The PCB is designed as a two layer PCB with through-hole parts on the top layer to enable those less skilled with a soldering iron to build the circuit.

RedAlertAudioTop
Red Alert Audio Fab B Top Layer w/ Silkscreen

RedAlertAudioBot
Red Alert Audio Bottom w/ Silkscreen

For those without PCB layout tools; a bare PCB is available from the batchpcb service for under $15. You can purchase the boards from this link:
http://batchpcb.com/index.php/Products/70379

The Bill Of Materials (BOM) of the board is available from Digikey for under $6 (as of the time of this post). A CSV file with the digikey part numbers is here: RedAlertAudio_FabB_bom.csv

Here’s a package of the materials above as a single download: RedAlertAudio.zip

Here is the the prototype assembled:

Now I needed to find a way to mount the 10LEDs under the black corner piece. This was done by laying out a 1inch strip of Red Acrylic in Corel Draw and laser cutting said peice:

I decided the LEDs would be wired as a “circuit” on the Red Acrylic. My LEDs are 5mm in size; so these would edge light the 1/4inch red acrylic. I put in 40mil traces in the design which are etched on the laser cutter to give us groves to put the LED leads in:


5 of the LEDs were placed on the right side with the Cathode of LED1 at the far left side end. LED2’s cathode is wired to LED1’s Anode repeating until the LED 5’s Anode which is then wired back to the left hand side. When the LEDs touch; they are soldered in place. When they don’t touch a piece of Adhesive red rework wire is soldered between the leads:


The Anode is wired back to the left side by the red rework wire. The Anode of the second 5 LEDs is then tied to the Anode of the first 5LEDs and the cycle repeats in reverse until the cathode of LED1 is at the right most side. It is then tied with a peice of Black adhesive rework wire back to the left hand side. This provides a “single” connection side for all the LEDs.

Here’s the finished Circuit on Acrylic:

I twisted about 12feet of yellow and black wire together and wired it into the connector on the G08 PSU at the +12VDC lines; it terminates on pin 1 of J1. The LED connections also terminate on J1. I drilled a couple of 7/16″ holes on the right side of the chair near the speaker using the circuit board as a template; making sure not to go all the way thru the side wood – just deep enough for the hex standoff threads. I then tapped these holes with a #6-32 tap; and placed a set of #6-32 hex standoffs in the holes. A couple of #6-32 screws and the board is now mounted at the top of the chair:

I found that I didn’t need to wire the speaker ground from the PCB to the speaker; instead only wired from the + side of J1-1 to the + side of the speaker. A small 7/16″ hole was drilled thru the wood to allow the 3 rework wires to come thru to the PCB. Given rework wire is fragile, small, and solid core; I put about 3″ of stranded 26 gauge wire before the crimp style connector. All of the excess wire was tye-wrap anchored to side of the wood -leaving plenty of “service loops” to enable future changes.

So… was it a success?

Does it Activate as expected?

While the circuit works as expected; it fails to deliver the intended effect of lighting the Window etch properly. Still a cool effect; one I’ll keep… but I’ll need to give the etch lighting some more thought. I’m also going to try and increase the current thru the LEDs by adjusting the R1 reference resistor. The LEDs should be able to handle close to 20mA (package says 24mA max); so the increase in current should brighten them up a bit.

Open Source Sega / Gremlin G80 PSU boardset

Over the past couple of weeks; I’ve been designing a replacement G80 PSU for the Sega/Gremlin G80 Vector machines specifically for my Star Trek Captain’s Chair.

I began by using National’s WebBench to design a simulate the 5V and 12V switching PSUs which would replace the linear PSUs on the original board. IMHO; the problem with existing linears is that you’re limited to the Pd of the BJT in the circuit. That BJT leads to a lot of wasted heat in the system. Having said that; I like linear supplies as they are easy to debug and build… for less than 1A of draw.

The Transformer and diode bidges will remain. My intent it to have the board somewhat drop in place of the existing board. I say somewhat; because the power-MOSFETs will need to be bolted to the existing heat sink on both switchers. I’ll probably keep the linears for the negative rails.

I imagine one will have to drill and tap the existing heatsink with some new mounting holes for the mosfets.

Web-bench gave me the following designs:
5V >4A Switcher

12V >2A Switcher

These boards were laid out and put on a single piece of FR4 so they can be assembled as a pair. The design is currently in my BatchPCB shopping cart; waiting for the parent board to complete it’s design phase. Nothing really to write home with regarding these PCBs… I expect the 5V switcher to meet a minimum of 5A… possibly much higher. It’ll likely be limited by the 8A diode bridge on the main parent board. The 12V switcher should meet a min of 2A… probably limited by the 4A bridge on the parent board.

The main parent board is the host for the switching board pairs; and holds the audio amp(s). The main board is currently in development; I’m adding the 12V diode bridge and the final audio AMP.
12V >2A Switcher
Clearly this is an eye-chart schematic. It might be easier to look at the segaSTpsu_rev-99 .

The first notable change is that I’ve replaced the main Audio AMP #1 with a ClassD part from Maxim: MAX9742. This integrated AMP IC should provide specs better than the original discreet amp on the board. It’s configured as a bridge tied load (BTL) targeted for a 23V/V gain with a -3dB frequency of 25Hz. This -3dB frequency and gain was obtained from a spice simulation of the original discreet circuit.

Other notable changes include:

  • Q23 (2N3906) makes “pull down” pulse remover for the CPU board. In the G80 PSU; R23 and D1 make up a pulse circuit which is sent to the CPU board. The CPU board has a 555 timer which implement a missing pulse detector. If a pulse is missed; it puts the CPU into reset. If my theory holds; the 2N3906 acts as a pull down preventing pulses from reaching the 555 timer – which puts the cpu in reset. So if my switching PSUs are not in regulation; this transistor effectively provides a not-“power good” signal to the CPU.
  • U3, U4, and U5 are power good circuits / detectors. U3 is a MAX8215 which monitors the 4 main digital rails to the G80 card cage: +5, -5, +12V, and -12V. These four voltages are “compared” and if in regulation a high is placed on the OUTx lines. These four signals are ANDed together and sent to DIN where it’s “delayed” by ~200mS via C20/R12. This allows the PSUs to stabilize before the CPU is given the “OK” via Q23. U5A and U5B/A1 provide “power good” LEDs for the various power rails – to aid in quick debug of the G80 PSU.
  • U2 provide a local 3.3V linear PSU to power U5 and the pullup on OUT3 (+12V m0nitor). This was done to enable OK12P to drive !SHDN on the ClassD amp. !SHDN cannot have more than +4V driven into it – hence the 3.3V source/pullup. Idea is to prevent premature popping/clicking while the PSU(s) are coming up. The 12V should take the longest to come in regulation and it’s also similar to the VDD/VSS supplies used in the ClassD amp. Additionally !RESET (Dout/U3) drives the “mute” pin of the (SFT / U1) meaning the ClassD amp should remain muted until the “power good” signal is sent to the cpu board.
  • C32/33/L5 (and C27/24/L12) provide a PI filter to reduce vripple into the switching regulators- increasing their stability.
  • I kept Linear Regulators for the lower power rails (-5 and -12) but upgraded the regulators to the National LM2990 as they provide better short circuit protection and slightly more current (1.8A). If desired; one could “in theory” drop in the cheaper/older 79xx series  negative regulators to save costs. They are pin compatible.
  • I’ve put fuses on the +/-12V regulator inputs which are missing from the original G80 design. F6 is a resettable fuse given it’s low power and we need board real estate for other items.
  • Finally LEDs were put in parallel and under the glass fuses on the board. The theory is that if a fuse blows; the LED become a small 10ma current path and the LED lights indicating to the user that the fuse is blown. I neat debug feature if you ask me -hope it works.

I hope to complete the main board design as soon as my upgraded pcb license comes in.
Once I finish the design and validate/test it… I plan to release the design and PCBs via the TAPR open source license.

See a design error? Speak up!