Dreamcast VMU Zero All-in-one

Show off your completed VMµ, or post your build logs here!
satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Dreamcast VMU Zero All-in-one

Post by satri360 » Sun Jan 28, 2018 9:11 pm

I put together the LiPo Charger and Boost DCDC for OLED from previous project in single PCB and added Amplifier for the original Piezo in the Sega Dreamcast VMU. Build instructions will be found at the very bottom of this post.



Schematics and Eagle CAD PCB File
Dreamcast VMU powered by Raspberry Pi Zero Project

FBDEV Driver for SEPS525/DD-160128FC OLED Module
fb_seps525.c.zip
(1.62 KiB) Downloaded 662 times


Parts List:
  • Raspberry Pi Zero W
  • vmuzero_seps525 PCB (Available in $4.99 for PCB while supplies last ;) )
  • Some components BOM
  • 150mAh LiPo Battery
Schematics/PCB CAD files are uploaded in GitHub so you can build by yourself or buy from me for the first 8 orders. Just send me a PM if you are interested. Please note that components are not included and you need instruments to solder a QFN device.
All Sold Out. Wait for V2 PCB ;)
Peek inside 👀Show
vmu525_V1-0_open.png
vmu525_V1-0_open.png (521.66 KiB) Viewed 25140 times
Peek inside further 🔬Show
vmu525_V1-0-flipped.png
vmu525_V1-0-flipped.png (881.22 KiB) Viewed 25140 times
vmu525_V1-0_top_bottom.png
vmu525_V1-0_top_bottom.png (1.31 MiB) Viewed 24110 times
Build Instructions
Last edited by satri360 on Wed May 09, 2018 9:30 am, edited 5 times in total.

User avatar
Lphillimore
Posts: 993
Joined: Sat Jan 07, 2017 7:03 pm
Location: Perth, WA
Has thanked: 796 times
Been thanked: 527 times

Re: Dreamcast VMU Zero All-in-one

Post by Lphillimore » Sun Jan 28, 2018 9:46 pm

Nice work! Maybe some more pics t match the video?

Great to see another VMU build to kick-off 2018. Nice PCB, too and thanks for sharing :D

User avatar
Helder
Trailblazer
Trailblazer
Posts: 2985
Joined: Thu May 05, 2016 8:33 am
Location: Rogers, AR
Has thanked: 1459 times
Been thanked: 3114 times

Re: Dreamcast VMU Zero All-in-one

Post by Helder » Thu Feb 01, 2018 3:18 pm

How long does the battery last? and the gameplay video seems a little sluggish or is it just the way it looks because of the camera?
Chat with me and other members On Discord

Don't contact me about obtaining my board files (as you will not get them). If my Boards or PCB Kits are sold out, they will be restocked as soon as I can get them and there is demand for them. You can join the mailing list on my Website to be notified when they are available.


Helder's Game Tech Website

We will not support any cloned work so don't come to us with technical issues to resolve, go talk to the cloner for help.

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Fri Feb 02, 2018 9:52 am

Helder wrote:
Thu Feb 01, 2018 3:18 pm
How long does the battery last? and the gameplay video seems a little sluggish or is it just the way it looks because of the camera?
I measured average ~220mA at VBAT while running NES emulator on Zero W so theoretically it would only last 40min with 150mAh battery. We should be able to accommodate higher like 350mAh battery if we ripped the OTG and VBUS connectors.
Not sure about the sluggish performance but NTSC version of Super Mario Bros is probably slow like this video ?

User avatar
YaYa
Posts: 1719
Joined: Mon Jun 26, 2017 12:42 pm
Location: brittany - France
Has thanked: 871 times
Been thanked: 689 times
Contact:

Re: Dreamcast VMU Zero All-in-one

Post by YaYa » Fri Feb 09, 2018 1:24 pm

Dis you try to tweak the system with the settings you can find on my guide about saving power and sd card I/O ?
Link on my signature...

Should be great to make a before/after test.
I’ve made the test thoroughly on the mintyPi and i get +16% battery life !
Onmy Kite’s SAIO GBZ, i get 7.5h play time with a 4800mAh battery :D
Follow me on instagram Image

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Tue Feb 20, 2018 2:18 am

YaYa wrote:
Fri Feb 09, 2018 1:24 pm
Dis you try to tweak the system with the settings you can find on my guide about saving power and sd card I/O ?
Link on my signature...
I tried all settings but the last one to remove all unused packages but didn't see significant power saving . I probably need to use decent equipment rather than the general VBUS power checker to see the difference. Thanks anyway for the great suggestions.

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Sun Feb 25, 2018 2:41 am

VMU Zero Build Instruction - PCB Assembly
(Skip to next step if you have pre-assmebled PCB)
00_vmuzero_pcab_header.png
00_vmuzero_pcab_header.png (112.73 KiB) Viewed 24444 times
Tools
Hot Plate
JBC CD1-BB Soldering Station
JBC C245-030 Conical Soldering Tip
JBC C245-768 Chisel Soldering Tip
ChipQuik SMD4300TF Tack Flux
ChipQuik SMD4300SNL10 Solder Paste
Senju ESC-M705-0.3 Solder Wire
Fluke VT04 Thermal IR Camera
Nikon SMZ Stereomicroscope

Parts
All of the parts but LT3469 Piezo Driver are available from DigiKey at the time of this writing. You can buy samples of LT3469 directly from Linear Technology.
BOMShow
https://github.com/satri360/vmuzero_sep ... 00_BOM.pdf

Part Value DIGIKEY MPN PACKAGE SUPPLIER Qty
C2, C4, C7, C20 1.0uF 490-11597-1-ND GRM21BR71C105KA01K 0805 (2012M) Murata 4
C1, C3 10uF 490-3340-1-ND GRM219R60J106KE19D 0805 (2012M) Murata 2
C21 0.47uF/35V 490-3328-1-ND GRM21BR71H474KA88L 0805 (2012M) Murata 1
C23 5.6nF 0805 (2012M) 1
C24 33n 490-12560-1-ND GRM219R71H333JA01D 0805 (2012M) Murata 1
C5, C6, C8 4.7uF/16V 490-3335-1-ND GRM21BR61E475KA12L 0805 (2012M) Murata 3
CN1 VMU Piezo 1
CN2 VBAT 455-1719-ND S2B-PH-K-S(LF)(SN) JST 1
D1, D2 SP1003-01 F3377CT-ND SP1003-01 SOD723 Littelfuse 2
D3, D4 SP1001-04J F2895CT-ND SP1001-04 SC70-5 Littelfuse 2
J1 USB_MICRO_B 102-4007-1-ND UJ2-MIBH-4-SMT CUI 1
L1 10uH 490-15888-1-ND LQH2HPZ100MJRL Murata 1
L2 47uH 490-2497-1-ND LQH32CN470K23L Murata 1
CHG YELLOW LED 754-1937-1-ND APT2012LSYCK/J3-PRV 0805 (2012M) Kingbright 1
PGOOD BLUE LED 754-1938-1-ND APT2012LVBC/D 0805 (2012M) Kingbright 1
R17, R24, R26, R30 0 RHM0.0CPTR-ND MCR10ERTJ000 0805 (2012M) Rohm 4
R25 270 0805 (2012M) 1
R1 1.1k 0805 (2012M) 1
R6 1.5k 0805 (2012M) 1
R5 1.8k 0805 (2012M) 1
R2 5.9k 311-5.90KCRCT-ND RC0805FR-075K9L 0805 (2012M) Yageo 1
R10, R16, R4, R9 10k 0805 (2012M) 4
R19, R21 16k 0805 (2012M) 2
R22 20k 0805 (2012M) 1
R15 68k 0805 (2012M) 1
R14 71.5k 1% 311-71.5KCRCT-ND RC0805FR-0771K5L 0805 (2012M) Yageo 1
R7, R12 100k 0805 (2012M) 2
R23 110k 0805 (2012M) 1
R20 270k 0805 (2012M) 1
R13 1.2M 1% 0805 (2012M) 1
S1 SPDT 401-1999-1-ND JS102011SAQN C&K 1
U1 BQ24075QRGTRQ1 296-38874-1-ND BQ24075RGTR QFN(16) Texas Instruments 1
U2 TLV61046ADBV 296-46927-1-ND TLV61046ADBVT SOT-23(6) Texas Instruments 1
U3 DD-160128FC-2B OR727TR-ND XF2M-3515-1A Omron Electronics 1
U4 LT3469TS8 LT3469ETS8#TRMPBF LT3469ETS8 SOT-23(8) Linear Technology 1
Reflow
Apply a bit of solder paste on the pads of U1, L1, L2, D3 and D4. Optionally for D1, D2, U2, U4 and CN2.
ImageShow
01_vmuzero_SolderPaste_Annoated.png
01_vmuzero_SolderPaste_Annoated.png (850.11 KiB) Viewed 24444 times
Grab components with a tweezer and place them onto the PCB. Make sure to orient the U1 properly.
ImageShow
02_vmuzero_pre-reflow_pcb.png
02_vmuzero_pre-reflow_pcb.png (1.1 MiB) Viewed 24444 times
Position the PCB on the hot plate over the thick tinfoil as a heat spreader.
ImageShow
03_vmuzero_pcb_hotplate.png
03_vmuzero_pcb_hotplate.png (1012.02 KiB) Viewed 24444 times
Cooking time! Turn on the hot plate and try to follow the recommended temperature profile of your solder paste.
SMD4300SNL10 Temperature ProfileShow
04_vmuzero_SMD4300SNL10_Profile.png
04_vmuzero_SMD4300SNL10_Profile.png (128.58 KiB) Viewed 24444 times
I heated it up to 180C in 3 minutes then 220C for the next 60s and hold for seconds. Thermal camera helped a lot to control the temperature. You should see solder paste turn shining silver when it starts melting. Do not heat too rapidly or parts would bounce up.
ImageShow
05_vmuzero_thermal_image.png
05_vmuzero_thermal_image.png (1.85 MiB) Viewed 24444 times
Cool it down. Be careful, PCB is extremely hot.
ImageShow
06_vmuzero_reflowed_pcb.png
06_vmuzero_reflowed_pcb.png (1.06 MiB) Viewed 24444 times
Assemble
Install the rest of the SMT parts. Start with the U3 FPC connector then solder other parts on the top in order of increasing size.
PCB AssemblyShow
07_vmuzero_pcb_assemble.png
07_vmuzero_pcb_assemble.png (479.19 KiB) Viewed 24444 times
Finally install the CN2 battery connector on the bottom side. We will solder the piezo speaker from the VMU to CN1 later.
08_vmuzero_pcba_top_bottom.png
08_vmuzero_pcba_top_bottom.png (1.34 MiB) Viewed 24444 times
History
Last edited by satri360 on Sun Feb 25, 2018 2:49 am, edited 1 time in total.

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Sun Feb 25, 2018 2:42 am

VMU Zero Build Instruction - Software

Install RetroPie
Download RetroPie.

Code: Select all

curl -O -L https://github.com/RetroPie/RetroPie-Setup/releases/download/4.3/retropie-4.3-rpi1_zero.img.gz
Unzip image.

Code: Select all

gunzip retropie-4.3-rpi1_zero.img.gz
Insert an SD card and find the disk number. disk2 is assigned to my SD card but result would vary on the envrionment.

Code: Select all

diskutil list
:
/dev/disk2 (internal, physical): 
Burn the SD card. Hit Ctrl-T to see the progress.

Code: Select all

diskutil unmountDisk /dev/disk2
sudo dd bs=1m if=./retropie-4.3-rpi1_zero.img of=/dev/rdisk2
Create WiFi configuration file. Change the SSID and Password to match with your network.

Code: Select all

tee /Volumes/boot/wpa_supplicant.conf <<EOF
network={
    ssid="SSID"
    psk="password"
    key_mgmt=WPA-PSK
}
EOF
Enable SSH.

Code: Select all

touch /Volumes/boot/ssh
Boot the Pi Zero with the SD card then log on to it. The default password is raspberry.

Code: Select all

ssh pi@retropie.local
The rest of the instructions would be performed on the Pi.

Install FBCP and FBTFT
Enable SPI.

Code: Select all

sudo raspi-config nonint do_spi 0
Disable Overscan.

Code: Select all

sudo raspi-config nonint do_overscan 1
Install FBCP.

Code: Select all

sudo apt-get install cmake
git clone https://github.com/tasanakorn/rpi-fbcp
cd rpi-fbcp/
mkdir build
cd build/
cmake ..
make
sudo install fbcp /usr/local/bin/fbcp
Register FBCP as a service. # DO THIS STEP ONLY ONCE

Code: Select all

sudo sed -i "s/^exit 0/\/usr\/local\/bin\/fbcp \&\\nexit 0/g" /etc/rc.local
Install FBTFT

Code: Select all

sudo tee /etc/modules-load.d/fbtft.conf <<EOF
spi-bcm2835
fbtft_device
EOF
Install SEPS525 driver.

Code: Select all

curl -O https://raw.githubusercontent.com/satri360/vmuzero_seps525/master/fb_seps525.ko
sudo cp fb_seps525.ko /lib/modules/$(uname -r)/kernel/drivers/staging/fbtft/
sudo tee /etc/modprobe.d/fbtft.conf <<EOF
options fbtft_device custom name=fb_seps525 gpios=reset:24,dc:25 speed=8000000 rotate=180
EOF
Update module dependency

Code: Select all

sudo depmod
Install Retrogame
Download and install Retrogame. Select 3. PiGRRL Zero and reboot.

Code: Select all

curl -O https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/retrogame.sh
sudo bash retrogame.sh

SELECT 1-8: 3
Downloading, installing retrogame...OK
Downloading, installing retrogame.cfg...OK
Performing other system configuration...OK

REBOOT NOW? [y/N]y
Configure Retrogame.

Code: Select all

sudo tee /boot/retrogame.cfg <<EOF
LEFT      17
RIGHT     22
DOWN      27
UP        23
Z          4  # 'A' button
X         12  # 'B' button
LEFTCTRL  16  # 'Select' button
ENTER     26  # 'Start' button
EOF
Setup Audio
Enable PWM Audio.

Code: Select all

sudo tee -a /boot/config.txt <<EOF
dtoverlay=pwm,pin=18,func=2
EOF
Set Maximum Volume.

Code: Select all

amixer cset numid=1 -- 100%
History
2018/2/28 Fixed fbtft_device options in fbtft.conf
Last edited by satri360 on Wed Feb 28, 2018 11:01 am, edited 3 times in total.

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Sun Feb 25, 2018 2:42 am

VMU Zero Build Instruction - Modifying VMU

Tools
Screw Driver
Side Plier
7mm Flat File
XACT Knife
Air Duster

Disassemble VMU
Strip down the VMU and keep everything but the PCB, coin cell and display.
Try not to touch the piezo speaker to prevent fingerprints on the disc.
01_vmuzero_mod_strip_down.png
01_vmuzero_mod_strip_down.png (809.42 KiB) Viewed 24444 times
Modify Case
Use plier and flat file to make some changes to the case.
TopShow
02_vmuzero_mod_top.png
02_vmuzero_mod_top.png (489.16 KiB) Viewed 24444 times
Top LeftShow
03_vmuzero_mod_top_left.png
03_vmuzero_mod_top_left.png (359.43 KiB) Viewed 24444 times
Top RightShow
04_vmuzro_mod_top_right.png
04_vmuzro_mod_top_right.png (350.17 KiB) Viewed 24358 times
Top CenterShow
05_vmuzero_mod_top_center.png
05_vmuzero_mod_top_center.png (540.63 KiB) Viewed 24444 times
Alternatively you may keep the ledges and scrape the upper walls to fit the display nicely in the center.
10_vmuzero_mod_top_center_option.png
10_vmuzero_mod_top_center_option.png (329.01 KiB) Viewed 24358 times
Top UpperShow
06_vmuzero_mod_top_upper.png
06_vmuzero_mod_top_upper.png (1.01 MiB) Viewed 24444 times
BottomShow
07_vmuzero_mod_bottom.png
07_vmuzero_mod_bottom.png (608.58 KiB) Viewed 24444 times
LidShow
09_vmuzero_mod_lid.png
09_vmuzero_mod_lid.png (433.56 KiB) Viewed 24358 times
08_vmuzero_mod_top_bottom.png
08_vmuzero_mod_top_bottom.png (727.31 KiB) Viewed 24444 times
History
2018/2/15 Initial draft
2018/2/16 Added Lid and optional Top Center mod for a better display alignment
Last edited by satri360 on Mon Feb 26, 2018 7:35 pm, edited 1 time in total.

satri360
Posts: 45
Joined: Wed Mar 22, 2017 12:59 am
Has thanked: 10 times
Been thanked: 64 times

Re: Dreamcast VMU Zero All-in-one

Post by satri360 » Sun Feb 25, 2018 2:43 am

VMU Zero Build Instruction - Final Assembly

Tools
JBC CD1-BB Soldering Station
JBC C245-768 Chisel Soldering Tip
Senju ESC-M705-0.3 Solder Wire
Desoldering Wick
Desoldering Pump

Parts
Assembled PCB
Modified VMU Case
OLED Display
Raspberry Pi Zero W
150mAh LiPo Battery
AWG34 Enameled Wire
AWG28 Stranded Wire

Reworks
Do some reworks before assembly.
Tape Display Controller (optional)Show
01_vmuzero_fat_tape_display.png
01_vmuzero_fat_tape_display.png (219.7 KiB) Viewed 24353 times
The display controller occasionally failed to perform an analog reset under very bright circumstances. I have reduced the reset period to overcome this problem but you may still observe the black screen if this happens. Shade the controller in hopes of resolving this issue or you can cover it by hand during boot.
Remove Camera ConnectorShow
02_vmuzero_fat_remove_camera_con.png
02_vmuzero_fat_remove_camera_con.png (1.19 MiB) Viewed 24353 times
Desolder the camera connector using solder iron and plier.
Pre-assembly Test
Semi assemble and check the basic functions.
Wiring PCB and PiShow
03_vmuzero_fat_preassemble_wirings.png
03_vmuzero_fat_preassemble_wirings.png (1.32 MiB) Viewed 24353 times
Prepare 5cm of 3x AWG28 stranded wires and 14x AWG34 enamel coated wires. Solder wires to connect the pads of Pi and the PCB. Leave some ground pads at this time to save some time.
#1 Power 3.3V (AWG28 orange)
#2 Power 5V (AWG28 red)
#6 Power GND (AWG28 black)
#7 Key_A
#11 Key_LEFT
#12 PWM0
#13 Key_Down
#15 Key_Right
#16 Key_Up
#18 OLED_Reset
#19 OLED_MOSI
#22 OLED_DC
#23 OLED_SCK
#24 OLED_CS
#32 Key_B
#36 Key_Select
#37 Key_Start
(Note: HDMI and OTG connectors are removed in this image but it is not required for this project)
Speaker and DisplayShow
04_05_vmuzero_fat_piezo_oled.png
04_05_vmuzero_fat_piezo_oled.png (835.49 KiB) Viewed 24353 times
Solder the speaker wires to the PCB. Flip the PCB and attach the OLED FPC.
Double check all the wire connections before powering up the unit.
Power On ⚡Show
06_vmuzero_fat_keyconfig.png
06_vmuzero_fat_keyconfig.png (286.77 KiB) Viewed 24353 times
Attach 1A or higher USB power cable to the PCB. It will power up the unit regardless of the position of the slide switch as it only controls the battery. First, check the green LED flashing on the Pi.
You should see the RetroPie splash screen if everything goes well. Place the rubber pad on the PCB and press any key to start the configurations. Press UP, DOWN, LEFT, RIGHT, START, SELECT, A, B then hold A to skip the rest. Copy your favorite ROMs to the Pi and play some games to check the audio.
Unwiring PCB and PiShow
07_vmuzero_fat_desolder_pi.png
07_vmuzero_fat_desolder_pi.png (347.91 KiB) Viewed 24353 times
Use desoldering wick and pump to unsolder the pads on the Pi.
Assembly
Solder the Pi to the PCB and fit everything in the VMU. You are almost there.
Bonding PCB and PiShow
08_09_vmuzero_fat_bonding_pi.png
08_09_vmuzero_fat_bonding_pi.png (996.8 KiB) Viewed 24353 times
Remove the speaker and display. Unsolder the 3 power wires from the PCB and replace with AWG34. Wire all GND pads #9, #25, #39, #6, #14, #20, #30, #34 with the same AWG34. These wires will work as a core when soldered the PCB down to the Pi.
Thread wires to the header of the Pi. Start from the of row closer to the edge then finish the other. Slowly pull up the wires through the Pi all the way till the Pi touches the PCB. Cut the wires right above the Pi and solder them down.
Again HDMI and OTG connectors are removed in this image but it is not required for this project.
Rework JSTShow
10_vmuzero_fat_rework_jst.png
10_vmuzero_fat_rework_jst.png (427.72 KiB) Viewed 24353 times
Cut the side wall of the CN2 battery connector to avoid it hitting the VMU.
Fixing Display and PCBShow
11_vmuzero_fat_top_complete.png
11_vmuzero_fat_top_complete.png (928.97 KiB) Viewed 24353 times
Glue the OLED to the case. Place the directional key support and rubber pads. Carefully insert the Display FPC to the PCB. Align the PCB to the VMU by matching the 2 notches on the PCB to the protrusions of the VMU case. Screw down the PCB to the case.
CompleteShow
12_vmuzero_fat_bottom_complete.png
12_vmuzero_fat_bottom_complete.png (846.73 KiB) Viewed 24353 times
Wire the speaker to CN1 and attach the battery to CN2. Try to find a place for the battery wires and close the case. Screw the case at the lower holes. Close the lid.
Slide the side switch to On position and enjoy the game 🎮
vmuzero_fat_smb.png
vmuzero_fat_smb.png (226.72 KiB) Viewed 24353 times
Limitations
  • No power status LED. Check the green LED on the Pi as a power indicator. Blue LED will light only when USB power cable is connected.
  • No background changing. One needs to attach the USB power cable and shift the slide switch to On position in order to start charging the battery.
History
2018/3/17 Simplified wiring method of PCB and Pi
Last edited by satri360 on Sat Mar 17, 2018 7:06 pm, edited 2 times in total.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest