Virtual Pinball Cabinet, B2S
Contingut
- 1 Introducció
- 2 Conversió taules FS a B2S (llegir, part 1)
- 3 How to install DirectB2S backglass, part 2
- 4 PinballX amb Directb2s
- 5 Ordinador
- 6 Construcció
- 7 Arduino Pro Micro: plunger i tilt analògics
- 8 Dimensions
- 9 Pressupost
- 10 A millorar propera versió
- 11 Videos i Xarxes socials
- 12 QoS. Guió de coses a comprovar abans d'entrega
- 13 Estic fent... (todo)
- 14 Transport. Instruccions de muntatge
- 15 Versió 2 (novembre 2018-gener 2019). Jacks Open
- 16 Versió 3 (gener 2019). Marvel-Avengers
- 17 Versió 4 (juny 2020/... COVID/19).
Introducció
He fet dues màquines FS (Fullscreen), i ara és el moment d'instal.lar i provar la configuració B2S (backglass to screen), ja veurem si farem una màquina. La configuració B2S és la típica de dues pantalles, la principal que és la taula (16:9), i el backglass (4:3) que té la imatge del backglass i el score (DMD o reels). Evidentment, la targeta de video haurà de tenir dues sortides, en ppi una HDMI pel monitor principal (16:9) i una altra DVI per al monitor de backglass (4:3).
La carpeta del projecte serà VisualPinball_VP9_B2S/, i la idea és implementar les mateixes taules que tinc en la configuració FS.
He aconseguit portar a B2S la majoria de les taules, i algunes no. Per tal de tenir el número de 200 taules disponibles, n'he ficat a B2S algunes més.
Per fer aquesta primera màquina he escollit el disseny de la taula Jacks Open (Gottlieb, 1977), doncs és un disseny relativament fàcil i vull practicar la talladora de vinils, pintura i màscares.
No confondre Jacks Open (Gottlieb, 1977) amb Jacks to Open (Mylstar, 1984), que és un remake (Jacks to Open' was a remake of the 1-player EM game Gottlieb's 1977 'Jacks Open')
Conversió taules FS a B2S (llegir, part 1)
Primer de tot, llegir aquestes tres entrades del fòrum
Què significa B2S?
Em sembla que les taules B2S necessiten un servidor de B2S (?). Efectivament, està explicat com s'instal.la i es configura aquí:
Taules FS vs B2S
A VPforums.org, dins l'apartat VP9 Cabinet Tables, puc descarregar les taules de l'apartat Fullscreen Cabinet (que són les meves taules FS) o Fullscreen B2S Cabinet (que n'hi ha molt poques en comparació amb l'apartat anterior). Com és que n'hi ha tan poques? Doncs perquè de fet no cal, com es comenta en un dels enllaços és molt fàcil convertir el script FS a B2S. De fet això ja ho havia fet a l'inversa: quan configurava FS hi havia taules que no funcionaven, i és que estaven configurades per a B2S.
A part d'editar el script de cada taula, també necessitaré el fitxer screenres.txt, i suposo que b2s.vbs. Com que jo ja tinc totes les taules FS configurades, em centro en aquestes. Evidentment, s'ha de descarregar les imatges de backglass.
How to install DirectB2S backglass, part 2
Descarreguem els fitxers de backglass (DirectB2S): Download a DirectB2S backglass and unzip it to the Visual Pinball\Tables folder:
Per ex, 250cc. Fitxer: 250cc (Inder 1992).directb2s -> s'ha de renombrar al nom de la taula, i conservar l'extensió .directb2s. És a dir, la taula i el backglass es diuen igual, canvia l'extensió.
Install B2S Server to the Visual Pinball\Tables folder
- http://www.vpforums.org/index.php?app=downloads&showfile=12553 -> d'aquí descarrego el B2S server, però l'enllaç està malament, està en una altra url. Explica com s'instal.la B2S Backglass Server 1.3.0.2, que és necessari per fer córrer els 'directB2S' backglasses
1. First of all check the color depth of the backglass monitor. It should be 32bit.
2. The B2S backglass server requires .NET Framework 4 installed on your computer. El descarrego de:
- https://www.microsoft.com/en-us/download/confirmation.aspx?id=17718 (standalone installer)
3. Unzip all backglass server files (són 4 ó 5 arxius, exe's i dll's) into your VP tables folder and overwrite already existing files with this new ones.
4. Rightclick the B2SBackglassServer.dll and click on Properties. Maybe you'll find the following text on the General tab:
This file came from another computer and might be blocked to help protect this computer". Click on the "Unblock" button. If you are not able to find this text everything is allright, too.
5. Crear el fitxer screenres.txt Explicació:
1366 <-- Playfild screen X resolution (width) 768 <-- playfield screen Y resolution (height) 1280 <-- Backglass screen X resolution (width) 1024 <-- Backglass screen Y resolution(height) 2 <-- Display number for the backglass 0 <-- offset for the backglass on the selected display (normally left at 0) 0 <-- offset for the backglass on the selected display (normally left at 0) 600 <-- Width of the DMD area in pixls 200 <-- Height of the DMD area in pixels 1280 <-- X position of the DMD area relative to the upper left corner of the backglass screen 100 <-- Y position of the DMD area relative to the upper left corner of the backglass screen 0 <-- Y-flip, flips the LED display uppside down. Used in P2K style cabs.
pantalla 1 (ppal) 1680x1050 (32 bits) pantalla 2 (backglass) 1280x1024 (32 bits)
screenres.txt: (aquesta configuració funciona per a la tele LG Flatron)
1680 1050 1280 1024 2 0 0 600 200 1280 0 0
TV Samsung 22:
- model: UE2205020NW
- resolució: 1920x1080
Haurem d'anar a la configuració de la TV, i fer Ajuste de pantalla. No tinc problemes de pèrdual de visió com em passa amb el LG Flatron, la qual cosa confirma que era un problema de la tele i no de la targeta de video.
screenres.txt: (TV Samsung 22)
1920 1080 1280 1024 2 0 0 600 200 1280 0 0
6. Start the 'B2SBackglassServerRegisterApp.exe' in the VP tables folder and the server dll should be registered. IMPORTANT: With Win7 start the exe as Administrator. -> abans de fer això s'ha de crear el fitxer ScreenRes.txt
You're ready to download and play some 'directB2S' backglasses.
7. Modify existing table script to change from using VPinMame server to the B2S Server:
7.1. Open table script 7.2. If you see 'Choose Controller: 1-VPM, 2-UVP, 3-B2S' near the top of script, change it to option 3 - Else, search for Set Controller = CreateObject("VPinMAME.Controller") and change it to Set Controller = CreateObject("B2S.Server")
Aleshores ja puc obrir la taula i ja funciona. El primer que hauré de fer és treure el score que tenia de quan configurava la taula per a FS. El tema és que quan amb el cursor em fico a sobre de la pantalla del backglass, amb el botó dret puc configurar moltes opcions del backlight (número de flashes), que tenen a veure amb el rendiment, i concretament treure el quadre del DMF que tenia per a FS: això es fa Visibility > DMD: hidden
Quina és la pantalla 1 i la pantalla 2?
El playfield s'ha de definir com la pantalla1, encara que vagi a la dreta. El backlight és la pantalla2. La idea és que quan em desplaci cap a la dreta pel playfield, quan surti de la pantalla, el cursor m'ha d'aparèixer en l'esquerra de la pantalla del backlight (que col·loco a l'esquerre). Encara que no sigui intuïtiu, és com s'ha de fer per posicionar el DMD. D'aquesta manera, si la pantalla del playfield té 1920 px, el DMD el trobaré a la segona pantalla ficant un valor més gran que 1920, per ex:
.Games(cGameName).Settings.Value("dmd_pos_x")= 1750
Resolució de problemes
1.. No sé posicionar el DMD en la backglass (pantalla secundària).
ratolí Sobre el DMD -> Game Settings > Cabinet mode. D'aquesta manera ara puc posicionar el DMD en la pantalla secundària, ficant la geometria directament en el script:
With Controller .GameName = cGameName .SplashInfoLine = "Austin Powers (Stern 2001)" & vbNewLine & "VP9.2 + table by Javier1515 v.1.0" .Games(cGameName).Settings.Value("dmd_pos_x")= 1980 .Games(cGameName).Settings.Value("dmd_pos_y")=50 .Games(cGameName).Settings.Value("dmd_width")=300 .Games(cGameName).Settings.Value("dmd_height")=90 .Games(cGameName).Settings.Value("rol") = 0
Ara sí que funciona la geometria: la pantalla ppal són 1920, i per posicionar-ho a dalt de la pantalla secundària (20px), el valor a ficar és 1920+20=1980px. Això només funciona marcant cabinet mode.
2. Centrar el DMD en el backlight: geometria
geometria 1920x1080 (playfield) 1280x1024 (bakclight) dimensions que vull del DMD 500x150 per tal de què quedi centrat en el backlight: 1920 + 1280/2 -500/2 = 2310 1024/2 - 150/2 = 437
3. S'ha de treure sempre el DMD quan configuro B2S?
No, s'ha de treure el DMD quan la informació que ofereix és la mateixa que en el backglass. Però hi ha DMD que són molt rics i ofereixen videos, informació extra, ... És per això que hi ha la configuració de tres pantalles.
4. El DMD em queda a sota, no sé posicionar-lo.
Potser en el PinballX això es solucionaria. De totes maneres, per ficar-lo en el backlight forço la posició, per ex ficant en el codi:
.Games(cGameName).Settings.Value("dmd_pos_x")= 2310 .Games(cGameName).Settings.Value("dmd_pos_y")=437 .Games(cGameName).Settings.Value("dmd_width")=500 .Games(cGameName).Settings.Value("dmd_height")=150
Un cop ja tinc el DMD en el backglass, aleshores ja no queda a sota. Ficant el border el puc reposicionar, i comentar aleshores les línies de codi que acabo de ficar. La propera vegada que obro, conservo la posició.
Més sobre el posicionament del DMD, i guardar les configuracions
All of the DMD locations are stored in the registry. You can use setdmd to position them all in about 20 seconds. It's a great program.
SetDMD is a tool, mainly for virtual pinball cabinet owners, that allows you to easily set your DMD position as well as some other parameters in the DMD for all installed ROMs in the system at once. I found setting up a table design was somewhat of a tedious process having to load each ROM in vpmame "once" to agree you own it, setting up the DMD location, etc. I wrote a utility that does all this for you. It will:
1) Allow you to set a DMD screen location and save it to all tables - at any time. < 2) Scan a directory of ROMs and create all the necessary registry entries so the DMD will be in the location you have set up and they will appear "played once" so you don't have to get prompted the first time 3) Gives you other options like changing dmd color, antialiasing etc.
De totes maneres, he mirat aquesta utilitat, i no veig que em pugui ser útil. El que és útil és la possibilitat d'exportar/importar els valors del registre directament.
La informació del posicionament del DMD es guarda a:
HKEY_CURRENT_USER->Software->Freeware->Visual Pinmame
Per tant, no és una bona idea ficar la geometria dins de la taula, com havia fet. És millor comentar totes aquestes línies de la geometria, i modificar directament la geometria en el registre (i el registre també es pot exportar i importar per anar ràpid). He estat mirant la utilitat SetDMD, però jo no l'hi veig massa la utilitat.
Per tant, si no tinc la geometria dins del script de les taules, no hi ha d'haver cap diferència entre les taules amb configuracions diferents (per exemple 1920_1080_1280_720 o 1366_768_1024_768. La clau està en importar els valors del registre, i modificar-los allà mateix, i en tot cas exportar la nova configuració. Actualment tinc 60 (de les 200) taules que tenen DMD.
Per a la geometria 1920_1080_1280_1024, uns bons valors per al registre són:
dmd_height: 139 (valor decimal) dmd_posx: 2247 dmd_posy: 838 dmd_idth: 550
Però hi ha taules que és millor posicionar el DMD a dalt, o hi ha taules que tenen un espai específic on s'ha de ficar el DMD. Un cop he comprovat les 60 taules, ja es pot exportar els valors del registre, especificant en el nom del fitxer la geometria (per ex, vpinmame_dmd_1920_1080_1280_1024.reg).
Una altra cosa que he descobert és que hi ha backglasses que porten un layout de DMD més currat. En alguns casos (per ex, Whirlwind) convé aprofitar-ho. Per això creo en l'Excel la columna reposicionar DMD, on dexio constància les taules que no tenen DMD, les taules amb DMD bàsic, i les taules amb DMD més currat (B2S Grill Visible). Això ve perquè s'ha d'activar l'opció B2S Grill Visible.
L'opció de skip pinball test i cabinet mode també estan en el registre.
PinballX amb Directb2s
Recordem la configuració de les dues pantalles:
- Display1: 1920x1080
- Display2: 1280x1024 (backglass)
per tal de què en el PinballX funcioni la imatge del Backglass, en els settings.exe del PinballX he de ficar (3a pantalla):
- Use DirectB2S in frontend: NO -> IMPORTANT, per tal de què les imatges de backglass es carreguin ràpides. És important perquè si fico SI les imatges les carrega de no sé quina banda, i pot trigar uns 5 segons a carregar la imatge de backglass.
- Auto Position DirectB2S: NO
- Backlass position (més avall): 0,0,1280,1024
I aleshores és important ficar les imatges de backglass (1280x1024) en aquesta carpeta. PinballX/Media/Visual Pinball/Backglass Images
Per obtenir les imatges ràpidament (relativament), el que puc fer és una captura de pantalla (Impr Pantalla), i obtinc una impressió de pantalla de les dues pantalles, i aleshores amb el Gimp puc obtenir la imatge de backglass. Això ho faig per a les 200 taules, i encara que és una mica lent, potser és el més ràpid.
És important ficar les imatges de backglass en aquesta carpeta, perquè si no el que fa és buscar el fitxer directb2s i extreure d'aquest fitxer la imatge, i aquest és un procés lent que fa que qudi la càrrega de la imatge molt ralentida.
Si ja tinc totes les imatges dels playfield, i només em falten els backglass, recordar que des del PînballX també puc fer captura de pantalla: S captura el playfield; B captura el backglass. Els Backglass van a parar a Media/Visual Pinball/Screen Grabs Backglass, i les imatges les he de renombrar correctament (segons el .vpt), i ficar-les a Media/Visual Pinball/Backglass Images
Ordinador
- CPU: Intel Core 2 Quad Q9550 2.83GHz
- Placa base: ASUS P5Q-E. https://www.asus.com/es/Motherboards/P5QE/
GPU: NVidia GeForce 240 (és la mateixa que havia fer servir en la segona taula de pinball (color wengué)).
- 4GB RAM
- HDD: 250 G
- Windows 7
NOTA: diferència entre Core 2 Quad i Quad Core: Core 2 Quad es el modelo, y Quad-Core significa que esta formado por 4 nucleos, aunque basicamente es lo mismo, ya que los Intel Core 2 Quad son Quad-Core.
Windows 7
Un cop finalitzada la màquina, coses a fer:
- configurar bé el JoytoKey per tal de què funcionin tots els botons. Que arrenqui minimitzat
- imatge de fons d'Escriptori (que ocupi el playfield i el backlight). En el establecer imagen como fondo de Escritorio, hi ha una opció important (TBD)
- imatge de fons de quan es carrega el Windows.
- Que s'inicïi el PinballX en l'inici del sistema (opció des de la configuració del PinballX).
- Que s'inicïi el JoytoKey en l'inici del sistema.
Construcció
Faig servir la nostra tele: TV Samsung 22 polzades, model: UE2205020NW. Dimensions:
- ample marc: 52,2 cm
- ample pantalla: 47,1 cm
- alt marc: 32,2 cm
- alt pantalla: 26,6 cm
- fondo: 3 cm
update 24-10-2017: he comprat una tele Philips de 22. -> Malament, molt difícil de treure el marc
update 28-11-2017:
- TV Savoid Full HD 24 inch . Model: LED-2414FHD GR (50e). És la que finalment faig servir.
Idees construcció
- https://www.elotrolado.net/hilo_pocketpin-el-proyecto-veraniego-de-pocket-lucho_1476345
- http://www.vpforums.org/index.php?showtopic=34034
- https://virtuapin.net/
- http://www.vpforums.org/index.php?showtopic=18420 (segueixo aquesta idea)
- http://www.casemodgod.com/troy%27s_pinball.htm
Perfils Servei Estació (Nov 2017)
Angle (perfil 90º): Acer: 30mmx30mmx3mm 1m 10,25e -> LM: 5,10e (1m); 8,5e (2m) 35mmx35mmx3.5mm 1m 10,25e -> LM: 7,45e (1m); 14e (2m) 40mmx40mmx4mm 1m 14e -> LM: 9,5e (1m) Ls desiguals: 20mmx15mmx1.5mm 1m 5.30e 30mmx20mmx2mm 1m 9,5e Perfils 90º: (TBD) Pletines: alumini galvanitzat: 40mmx1.5mm 1m 5,90e 60mmx1.5mm 1m 8,45e alumini anoditzat: 15mmx2mm 1m 20mmx2mm 1m 25mmx2mm 1m 30mmx2mm 1m alumini brut: 40mmx2mm 1m -> LM: 3,95e (1m); 6,10e (2m); 9,90e (2,5m) 10mmx2mm 1m 15mmx2mm 1m 20mmx2mm 1m 25mmx2mm 1m 30mmx2mm 1m 35mmx2mm 1m 50mmx3mm 1m (també hi ha 2m...) Us: (TBD)
Leroy Merlin:
- Productos > Ferretería > Perfiles, pletinas, chapas y rejillas > Perfiles
Artwork. Stencils
Faré el disseny de la màquina Jacks Open. Es tracta de fer unes plantilles amb vinil per tal pintar amb spray (tècnica del stencil). Hi hala màquina de tallar vinils.
Sí que disposem d'un ploter de vinil Roland. Si el vols fer servir, has de portar tu el material, i el preu d'ús de la màquina és de 2.50 € els 30 minuts. Pel que fa al material, els rotllos de vinil no han de superar els 60 cm d'ample. Si vols venir diga'm quin dia de la setmana vinent t'aniria bé, excepte dilluns. El nostre horari és de 17 a 21.30 h. Belén Fernández Coordinadora Espai Maker FAB Casa del Mig Punt Multimèdia www.puntmultimedia.org 93 291 42 62
He fet servir la Silhouette Cameo del MOB. Vaig cometre l'error de tallar els vinils a 30 cm, perquè aquest és el tamany màxim al qual pot tallar els vinils, però els havia de tallar a 32-34 cm. S'ha d'ajustar la punta per tal de què realment talli els vinils. Si no, has de fer la feina dues vegades. Realment el mètode funciona, tot i que per ser la primera vegada m'ha donat bastanta feina.
Analog plunger
S'ha de vigilar que el plunger no interfereixi amb la posició de la tele ni amb els botons laterals.
- https://cdn.instructables.com/FJJ/JO8W/H27LSSHI/FJJJO8WH27LSSHI.MEDIUM.jpg
- https://i.ytimg.com/vi/WqhoYen4ahQ/maxresdefault.jpg
- http://i.imgur.com/APb4mi8.jpg
- https://cdn.instructables.com/F0F/13LG/H1YONL3C/F0F13LGH1YONL3C.MEDIUM.jpg
- http://www.vpforums.org/index.php?showtopic=28313
- http://arcademania.eu/viewtopic.php?t=626
- http://www.ozstick.com.au/product/plunger-module/ (utilitza potenciòmetre linial variable)
idees per fer el sensor del plunger:
- https://www.youtube.com/watch?v=WqhoYen4ahQ
- utilitzar un rotary encoder
- utilitzar una matriu de fotoreceptors linials
- CCD linear sensor array (TAOS TSL 1410R), com es fa a http://www.vpforums.org/index.php?showtopic=28313
- Utilitzar una resistència variable
- utilitzar un sensor de distància LVDT (són cars, però un se'ls pot construir):
El problema es divideix en vàries parts:
- construcció mecànica del plunger
- sensor (rotary encoder) + arduino + software arduino
- Arduino (o un altre microcontrolador, com el KL25Z ) com a USB HID (el microcontrolador s'ha de comportar com un joystick)
- Configuració Visual Pinball per llegir el valor del joystick. Interfacing to Visual Pinball: VP is set up to read an analog plunger via the joystick interface. The KL25Z has an on-board USB port that lets it act like a USB HID (human interface device), so with the proper USB configuration reports we can make it look to Windows like a joystick.
Està documentat a: Arduino#Arduino_Joystick_library_.28novembre_2017.29
Sembla ser que el meu dispositiu ha de ser un Gamepad en comptes d'un joystick. A Windows, puc veure el gamepad amb l'aplicatiu: '''joy.cpl'''. A propiedades puc veure quin és l'eix que tinc actiu. Una altra possibilitat és instal.lar un aplicatiu per configurar els joysticks-gamepads: xpadder RB-joy Visual Pinball > Preferences > Joystick ? (després de key) http://www.rbsoft.de/html/rb-joy.html Instal.lar versió 8.4
important: Enable mechanical plunger en el plunger, en l'editor de la taula.
I en aquest fòrum (http://www.vpforums.org/index.php?showtopic=22470) he trobat una bona idea per a un analog plunger, que crec que podria funcionar.
Configuració final Analog Plunger
Finalment la configuració que funciona bé és un potenciòmetre final. Encara que és físic, funciona bé. Això sí, s'haurà de veure el comportament que té a llarg termini.
Com es comenta a:
els valors del analog plunger no han d'anar de -1000 a 1000m sinó de 0 a 1000. Això ho puc provar amb el programa joystick (Direct Input Joysticj Sample). Per tal de canviar -1000 -> 1000 a 0 -> 1000 he de fer servir el programa DXTweak2 (old). A Calibration, en comptes d'anar de -32768 (min) a 32767 (max), passant pel centre a 0, he de ficar que el centre sigui -32768. El dead zone el puc deixar al 0%, però també es pot canviar si s'hagués d'ajustar el plunger.
Per veure l'efecte que té aquest canvi, tinc la taula de prova plunger_test, i veig que el plunger agafa els valors de 0 a 25. Però per tal de què el plunger canvïi des del principi, és important que els valors que agafa el joystick DirectX sigui de 0 a 1000. Aquests tres programes als tinc a la carpeta Downloads.
Quan es reinicia l'ordinador la calibració del plunger es manté (com ha de ser).
En el firmware de l'Arduino he associat el plunger analògic a l'eix X:
Joystick.setYAxis(outputValue1); Joystick.sendState();
En el Visual Pinball, la configuració del plunger analògic és, a Axis assignments:
- Plunger: Y Axis
- Y Axis (U/D): disabled: per tal de què no xoqui amb la configuració anterior.
M'he d'assegurar de què els valors van de 0->1000 (0->25) en la taula de Test. També m'he d'assegurar que el senyal elèctic del plunger va de 0V a 4.5V (5V). Si tinc -4.5V vol dir que he de canviar GND i Vcc.
Interface I-PAC amb moneder electrònic
El moneder electrònic no funciona igual que els botons. Primer de tot que està alimentat a 12V. Hi ha una línia que dóna un pols (suposo que 12V) quan posem una moneda. Per fer la interface amb el I-PAC (compatible), el millor, més lògic i ràpid és ficar un relé que tanqui el circuit.
El relé funciona senzillament aplicant 12V en els dos bornes principals. La única cosa que hem de tenir en compte és que el senyal de coin és un pols a GND. Per tant, els dos bornes del relé són a 12V i a COIN (que normalment està a 12V i fa un pols a GND quan detecta una moneda).
12V - |------|-I-PAC | relé | COIN - |------|-I-PAC
El botó de COIN (blanc), també associat a les instruccions (I), el puc activar o desactivar amb l'interruptor que poso a sota. Tant el botó de coin/instruccions com el moneder electrònic estan associats a la tecla 5 en el Joytokey, però són dos entrades diferents. (de la mateixa manera que en un botó puc associar vàries tecles, no hi ha cap problema per tal de què dos botons estiguin associats a la mateixa tecla).
Arduino Pro Micro: plunger i tilt analògics
Video que he penjat del funcionament del plunger analògic:
Si he de construir una màquina amb plunger i tilt analògics, no cal utilitzar un I-PAC compatible, sinó que ho faré amb un Arduino Pro Micro. Evidentment, el firmware ha d'implementar la llibreria Joystick que fa que l'arduino el reconegui (tant Linux com Windows) com a dispositiu HID (Human Interface Device), és a dir, joystick o gamepad.
Entrades analògiques:
- A0: plunger analògic
- pin2: SDA -> acceleròmetre SDA
- pin3: SCL -> acceleròmetre SCL
Entrades digitals:
- pin4: left flipper
- pin5: right flipper
- pin6: Exit (Botons frontals)
- pin7: Start
- pin8: Coin (aquí anirà connectat tant el botó frontal com el relé del coin acceptor)
- pin9: Enter
Extres: (potser són necessaris)
- pin10: volum - (si vull implementar el volum amb botó, en el cas de què el volum de la TV no estigui accessible, que seria lo ideal)
- pin16: volum +
- pin14: left tilt (si a més de l'acceleròmetre també vull implementar el botó)
- pin15: right tilt
Per tant, idealment en els laterals només tindré el botó dels flippers (el volum pot estar al darrere, i tilt no cal que n'hi hagi). En el frontal de fet tampoc caldria el botó del moneder).
Arduino Pro Micro (plunger, acceleròmetre, i 6 botons) * * * * GND -> necessari per al potenciòmetre * * * * VCC -> necessari per al potenciòmetre SDA * * SCL * * 4: Left. BUT0 * * 5: Right. BUT1 * * A0 (potenciòmetre) 6: Exit. BUT2 * * 7: Start. BUT3 * * 8: Coin. BUT4 * * 9: Enter. BUT5 * *
El firmware de l'Arduino Pro Micro està documentat a:
L'acceleròmetre MPU-6050 és de 3.2V, i l'Arduino és de 5V, però no hi ha problema, llegeix bé les entrades digitals dels SDA i SCL.
Dimensions
- altura total: 112,5 cm
- amplada: 44 cm
És una màquina pensada per jugar assegut.
Pressupost
- Ordinador (amb NVidia GeForce 240) (120e)
- TV Savoid Full HD 24. Model: LED-2414FHD GR (50e)
- Monitor AOC 17 (25e?)
- I-PAC compatible (10e)
- botons: 6 botons normals, 4 botons il.luminats (10e)
- monedero (10e)
- pintura (15e)
- vinils (10e)
- potes de ferro (2 barres de 1m, perfils de 30x30): 16e?
- candau: 3e
- vidres: 10e
De moment no he utilitzat:
- Arduino Leonardo (6e) (5V 16MHz)
- rotary encoder
- acceleròmetre: 4e (https://www.ebay.es/itm/172985544828) (MPU-6050 GY-521 Compatible) (treballa a 5V)
A millorar propera versió
- que pugui treure les potes -> fet en la versió 2 i 3, soldadura de ferro
- que la capsa del backglass es pugui plegar
- analog plunger -> fet en la versió 2 i 3
- acceleròmetre -> fet en la versió 2 i 3,
- millorar el mètode de pintures i les màscares -> màquina de tall làser -> vversió 2: he fet màscares de pintura i ha sigut un rollo, al final molt millor vinils.
- que els botons laterals també estiguin il·luminats
- posar enganxines en els botons frontals. -> fet en la versió 2 i 3,
- compte amb pintar el vidre. Si es rasca pot saltar la pintura fàcilment. Si està en contacte amb el marc metàl·lic de la TV, hauria de protegir el marc metàl·lic amb cel·lo.
- candau del moneder. Buscar un bon mètode.
- posar les etiquetes en els botons il·luminats de Start, Credit, Quit i Plunger -> OK
- no hi ha cap motiu per treure els cables, interruptors i USB per la part de sota (incòmode). Això ho feina perquè les primeres màquines (coffee table) era un requisit. Tots ha d'estar en la part posterior (com he fet amb el pocket pinball). -> OK
- Allà on poso la mà no ha de ser afilat -> protector amb escaire de fusta vernissat, fet en la versió 2 i 3
Videos i Xarxes socials
Posts www.joanillo.org:
- http://www.joanillo.org/?p=1766
- Categoria pinball: http://www.joanillo.org/?cat=38
Video promoció:
Video construcció:
QoS. Guió de coses a comprovar abans d'entrega
- Inici quan s'ha apagat malament, reduir el comptador de segons. Mi Equipo > Propiedades > Config Avanzada Sistema > Inicio y recup > Config -> reduir el comptador a 2 segons.
- Fons pantalla inici de sessió, Change Windows 7 Boot Screen Animation: Virtual_Pinball_Cabinet#Fons_pantalla_inici_de_sessi.C3.B3.2C_Change_Windows_7_Boot_Screen_Animation
- Comprovar plunger i tilt
- PinballX en l'inici de sistema
- JoyToKey minimitzat
- Deixar el filtre de taules com a Prefered
- Millorar en una màquina el HS per comprovar que funciona. Per exemple Eight Ball de Luxe. Fer-ho des del PinballX i comprovar que es grava bé el HS.
- Moneder (treure les monedes que hi pugui haver)
- Moneder. La moneda que hi ha és la correcta? S'hauria de preguntar.
- repassar ràpidament des de PinballX les 200 taules per comprovar que les imatges (ppal, backglass i wheel) són correctes.
- comprovar fluidesa amb una màquina pesant.
- comprovar màquines amb música. Per ex: ACDC, Elvis.
- no oblidar-se el pinganillo del teclat/ratolí inal·làmbric al moble
- ...
Estic fent... (todo)
- mephisto
- big valley: mec strength: passar de 80 a 180
Transport. Instruccions de muntatge
En la primera de màquines B2S, el backglass es desmunta respecte el cos de la màquina. I això vol dir que s'envia el paquet amb el backglass desmuntat i s'haurà de tornar a muntar en el destí.
- muntatge potes. Fer un dibuix per tal de què no hi hagi confusió. El criteri pot ser que la dreta és mirar la màquina des de davant cap endarrera.
- perfil d'alumini
- cargols
- tapa trassera
- monitor: connectar DVI-VGA i connector corrent
- moneder
- construcció de la caixa. Mides
- què conté el paquet? (4 femelles,...)
- cable alimentació
- abans de posar el backglass en posició, s'han de treure els dos cables pel forat. S'ha d'evitar que els cables puguin caure dins del moble principal.
- Com es canvia la moneda
- La màquina pesa 35Kg, però afegint el moble del contenidor, que està fet amb conglomerat cru de 1cm, són el total 49 Kg. A Mail Boxes es pot contractar l'assegurança que cobreixi com a mínim si s'ha de tornar/reenviar la màquina (s'ha d'aduntar fotos del que hi ha a dins).
- Protegir la màquina amb plàstic de bombolles.
Versió 2 (novembre 2018-gener 2019). Jacks Open
Les màquines 2 i 3 les he fet bastant en paral·lel Tema: Jack's Open
Ordinador
- INTEL CORE 2 QUAD. HD 500GB, 2,400MHz.
- foxconn p31a-s (3 pci, 2 pci-e x1, 1 pci-e x16, 2 ddr2 dimm, audio, gigabit lan)
- HDD 500Gb
- RAM: 4GB
- Gràfica: geforce gt 520 (1024 mb) (HDMI, VGA i DVI). Processador gràfic: nvidia gf119
- Preu: 110 e
Pressupost (400 e)
- Ordinador i gràfica: 110 e
- Monitor backglass: HP1740 17 1280x1024: 15 e
- TV playfield: 60
- Arduino Pro Micro: 7e
- potenciòmetre linial lliscant: 7e
- acceleròmetre MPU-6050 GY-521: 3e
- cable USB: 1e
- fustes: 10e
- tornilleria: 10e
- potes de ferro: 10e
- pintura: 10e
- vinils: 9e
- moneder: 20e
- botons: 13e
- vidre: 3e
- perfils d'alumini: 10e
- Caixa d'embalatge: 15e (conglomerat cru 2440x1220 1cm)
- Transport: 72e (49Kg)
- plàstic de bombolles (7e)
Versió 3 (gener 2019). Marvel-Avengers
Ordinador
- Lenovo ThinkCentre
- INTEL CORE 2 QUAD, 2,4GHz.
- HDD 80GB
- RAM: 6,5 GB RAM DDR2
- Gràfica: Nvidia GeForce GT520 1GB compte!: aquesta gràfica m'ha sortit malament i al final he hagut de posar una GeForce GT240 de la màquina que tenia en el Jacks Open). El problema era un cert retard, i sobretot molt malament els sons, com per exemple Star Wars Trilogy.
- Preu: 75 en (inclou pantalla 17, teclat ratolí i gràfica Geforce 9900Gt 1GB DDR2 que no utilitzo)
Pressupost (300e)
- Ordinador i gràfica: 100 e
- Monitor backglass: 17 1280x1024: 15 e
- TV playfield: Samsung 24: 60e
- Arduino Pro Micro: 7e
- potenciòmetre linial lliscant: 7e
- acceleròmetre MPU-6050 GY-521: 3e
- cable USB: 1e
- fustes: 10e
- tornilleria: 10e
- potes de ferro: 10e
- vinils: 13e
- moneder: 20 e
- botons: 13e
- vidre: 3e
- perfils d'alumini: 10e
Versió 4 (juny 2020/... COVID/19).
Ordinador:
- Lenovo ThinkCenter E73
- Intel Core i5-4460S, 2.90GHz
- 8GB RAM
- Windows 10 Pro (instal·lat i actualitzat, legal. El número de sèrie està a la BIOS. Ve d'empresa.
- disc dur: SSD Intel de 180GB
- Targeta gràfica: al final és la integrada que porta l'ordinador, que té sortida digital display port (necessito cable diaplay port-HDMI), i VGA.
No és un SFF, però la placa no és de les grosses. La targeta de video integrada és suficient per moure les taules, però si necessités una nova targeta gràfica hauria de comprar una font d'alimentació. Aquesta és de 180W, i no té el connector per alimentar una targeta de video (connector de 3x2=6 pins).
En aquesta màquina coexistiran les 200 taules de VP9 que tinc configurades, i unes quantes taules de VPX (és la primera vegada que configuro VPX).
Instal·lació VPX
Provo la última versió: VP 10.7 Beta (VPX_7_beta_rev4144.zip). La descarreguem de:
joanillo/jq****
Instal·lació de DirectX: d3dx9_43.dll was not found
dxdiag: tinc DirectX 12
Configuració del video
En principi la qualitat de les taules que he provat és suficient, amb la configuració per defecte després de la instal·lacuió de VPX. Si vull menys qualitat i més performance, puc fer:
- Reflect Ball on playfield (es pot desactivar)
- Force Anysotropic texture filtering (es pot desactivar)
- Max Texture Dimension: unlimited a 2048
- Elements Detail Level: es pot posar de màxim a la meitat (millora la performance)
Visió FullScreen
El mètode a VPX és diferent de com es feia a VP9. No cal tocar el script.
Primer de tot instal·lem el servidor de DirectB2S i configurem les dues pantalles. Quan descarrego les taules de VPX, normalment es veuen en Desktop Mode (a part del monitor de Backglass, que ja funciona). Per tal de veure les taules en mode FS:
- View > backglass/POV (Ctrl-space). Backglass, pestanya càmera.
- Desmarcar FSS
- Desmarcar Test Desktop
- en el desplegable, Mode Fullscreen (FS).
- si cal, XY rotation: 270
- gravar (important)
Pressupost (? €)
- Ordinador i gràfica: 160 e
- TV 28 LG FullHD TV M2752: 50€
- Monitor 19 (HP L1950g): 20€
- cable Display Port-HDMI: 14€
- cable HDMI:
- cable VGA
- Arduino Pro Micro: 7e
- potenciòmetre linial lliscant: 7e
- acceleròmetre MPU-6050 GY-521: 3e
- cable USB: 1e
- fustes: 10e
- tornilleria: 10e
- potes de ferro: 10e
- vinils: 13e
- moneder: 20 e
- botons: 13e
- vidre: ? e
- perfils d'alumini: 10e
- ...
creat per Joan Quintana Compte, octubre 2017, juny 2018, febrer 2019