Routing the audio amp. Since this is going to be made in 500+ QTY of units I decided 4 layer was the way to go as the budget allowed for it. For the layers I will be using the top and bottom side as signals and the two inner planes as the GND and “virtual” GND of the system. Power will be on the bottom layer. Everything is pretty much routed but I need to clean up the traces now.
I have been working on this amplifier for pinball machines. It is a simple 2.1 system with volume control, tone control, sub cutoff, and sub volume. The main lifting is done by a 4 channel TDA7387 which is mainly for low cost car stereos. It can do 41W so it should be plenty powerful for a pinball machine. For opamps I am using the AZ4558C. This is a generic audio opamp in a dual package.
It is a single supply design so easy integration and makes it able to use low cost switcher style power supplies. I run the power though an opamp set to half gain to create a “virtual ground”. This is the middle bias point for all the filtering. After filtering it then gets DC blocked with in series capacitors and shoved into the TDA7387.
After I route this and organize the schematic I will post a link to the files.
Working on this fan controller for my Jeep. All the files are on github. Uses a 4×40 character VFD. Has an onboard E-compass module that will show inclination and direction. Part number is FXOS8700CQR1.
I am still working on the Gameboy VGA driver. You can see the code and hardware working on the BenHeck Show. I have to get some other projects done before I can finish the Gameboy :)
This is the project that the DE0 Digital IO Wing is for. I will use the IO wing to level shift the signals from the Gameboy’s LCD screen so my DE0 can capture the data. The Gameboy is a 5V device and the DE0 does not have 5V tolerant IO. I am using a SN74LVC8T245PWR 8-bit directional level shifter to do the translation on the IO wing board.
Purchased a Gameboy DMG-01 off eBay for $20. Needed some cleaning but it worked and had the battery cover!
The Gameboy DMG-01 uses triwing screws. Kidna like philips heads but with 3 “wings” instead of 4. Tool can be found on eBay or Amazon.
The connector between the front and back of the Gameboy is where I will tap into the signals to sneak a peak. Pinout is the following
Pin 12 – V-Sync
Pin 14 – Pixel Clock
Pin 15 – LCD Data 0
Pin 16 – LCD Data 1
Pin 17 – H-Sync
Pin 21 – Ground
V-Sync should be 60Hz, Pixel Clock 4Mhz, and H-Sync 9.2kHz.
Connected up the Open Bench Logic Sniffer and powered up the Gameboy with a game in it then ran the capture. I had the trigger set to wait for the V-Sync signal.
Then using my DE0_VGA_Driver I started writing the code take data from RAM on the FPGA and output it on the VGA monitor. I wrote a bitmap to .mif format (memory initialization file) convertor to display some Gameboy screenshots on the VGA Monitor. Link to that repo is here.
Currently working on getting the SN74LVC8T245PWR level shifters working and I will be able to pull live data from the Gameboy LCD data bus.
Boards and parts arrived today from OSH Park and Mouser. Soldered them up after work.
Close up of the board. Not a ton of parts…all connectors. The handle idea worked out pretty well. The board can be pulled out of the dual 40pin headers with ease!
Expansion mounted in the DE0 DEV board. Gotta write up some verilog to test it out now.
Ordered the PCBs from OSH Park. Should be getting them in about two weeks.