Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Wa-hoo!  (Read 20372 times)

0 Members and 1 Guest are viewing this topic.

NickG

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 586
  • Last login:September 26, 2022, 05:25:23 am
  • Dig.
    • My Projects Page
I'm baaaack!
« Reply #40 on: August 02, 2014, 03:20:46 am »
I am really excited about my latest innovation to my upright cabinet.  I tried the LED-Blinky route for a while, and found I wanted more...  I am in the initial build phase of my upgrade. The intent is to have projected button legends inside the actual button.  I am setting this up with my electric ice 2 buttons.  I was incredibly displeased in the fitment of the Electric Ice 2 switch holders and how loose they have proven to be with any of the various micro-switches I have tried to install to them, and decided to put them to more optimal and extravagant use by creating a framework beneath my panel which allows the button plunger retention feature to block an infrared pair when pressed.  First I verified good clarity and diffusion in the concave and the convex button plunger.  Then I drill a hole in the bottom of each button, large enough for the projection, small enough to hold the plunger retention and spring.  So far I have  tested the projection across multiple buttons and designed a circuit with some ir pairs and some 7404's.  This is co-incident with another upgrade; I am also upgrading my U360 based controller to output directly to some consoles, mainly Ps2, via Dual-Shock 2 controller hacks (this is an impressive upgrade on it's own, full analog joy capability to consoles via Arduino and digital potentiometer, plus true digital mode with micro-switches added to the U360's, switching with a 4066 if I ever figure one out, or simply using a bulky relay board I have already tested with in my proto-type)  The controllers connections to PS2/PC and the digital/analog switching is done via Arduino compatible over Com/Serial batch commands from Hyperspin.  I have yet to work out the software methods for the display of the legends. Most likely I will make use of CPWizard and custom graphic or one of the other Artwork/Marquee helper apps.

NickG

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 586
  • Last login:September 26, 2022, 05:25:23 am
  • Dig.
    • My Projects Page
Re: Wa-hoo!
« Reply #41 on: February 02, 2016, 01:14:44 pm »
...Abandoned Projector buttons for now.  I will probably hot-glue or shim my microswitches to my electric ice 2 buttons in interim. For the Projector buttons project,  I drilled out the bottom of the buttons to the spring diameter and the springs started shifting a bit and getting through the bottoms.  This could be be corrected later with more modification such as shaving off the buttons bottoms entirely and adding a clear plastic sheet with holes drilled for the button retention prongs and the optics to detect the prongs adhered to/through it, but I am saving this task for later and focusing on DualShock Analog from U360 raw output automation.  So now I am just using the Electric Ice 2 RGB buttons as-is.
  The cabinet which was once the subject of this thread is now a Dedicated (mostly) Pop'n'Music Cabinet.  New computer, old slimline PS2, and an Arduino with a KA05 shield kit.  Running Hyperspin.  Computer & computer-emulated big-button games are setup with configurations common to many other hyperspin setups.  Playstation 2 games are started via IR commands from the Arduino (w/ a transmitter) on a real Playstation 2 slimline through it's remote IRr sensor (with some custom programming on my part but most by another party which I am not sure is allowed for discussion or reference here.  IR stuff I used on the Arduino was fairly pedestrian after adding Ken Shiriff's Library and should be ok to relate here for educational purposes here if requested;  PS2 software modification I added was a workaround for the controller type to navigate to and launch the correct game (pop'n controller has down/left/right shorted).  The KA05 shield on the Arduino in this cabinet switches Playstation controller lines from PC/PS2 (PC is using Parallel port and PPJoy as featured on Emulatronia and other sites) , and I added a couple more relays to the kit in some unused pcb space to  switch the audio channels from PC/PS2.  My Video is switched via IR commands and a second transmitter taped to my XM29, including anunderscan/overscan switch command.  (PS2 is connected via a GBS 8220 for now, despite the crappy white artifacts those produce on every monitor and power supply I have tried.)

So.  I cloned my cabinet, mostly  The new cabinet has same profile but is narrower by some parts of an inch.  I decided to try a 1/3 LCD from ebay for the dynamic Marquee this time.  At first I updated the image from Hyperspin Helper, but now I have added a raspberry pi B+ which seemed kind of underpowered for what I bought it for originally as the Marquee driver.   This RPI accepts commands via putty from my PC to change the marquee images, but I have not yet completed setup of prelaunch programs/whatevs in Hyperspin/other  frontend.  My intent with the rpi is to keep the analog XM29 monitor in my new main cabinet as "default monitor" and //display1 in the modern Windows operating systems, while offloading the marquee image tasks to the rpi to something other than my main GPU.  I've also continued efforts to allow for Dualshock Analog Support from My UltraStik360s.  So far I have an Arduino which translates the Raw Analog output from the U360  connector to some mcp42010's.  My sketch as yet, (which I built on top of: http://arduino-projekte.de/index.php?n=65) , takes analog inputs from the U360's, and is able to set the digipots (42010s) values to the wires I have attached to my Dualshocks.  Arduino processes a few times faster than a DS2 so latency should not be an issue, at least for the PS2 Games (PC games should still be able to use direct connection if needed once I have this sorted.)  What I am working on now is being able to detect and toggle the analog mode of the Dualshocks.  At first it seemed as though I just had to pulse low/high the analog switch line to toggle the mode, but now, after running into P1/P2 cross-controller toggling problems, I am looking at using relay to toggle the switch. I have resorted to installing IR LEDs in place of the original Red LEDs, with IR detectors stuck to them with some tubing to allow the Arduino to verify detection of the analog/digital mode.

RandyT

  • Trade Count: (+14)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 6891
  • Last login:Yesterday at 09:17:53 am
  • Friends don't let friends hack keyboards.
    • GroovyGameGear.com
Re: Wa-hoo!
« Reply #42 on: February 02, 2016, 02:19:14 pm »
I will probably hot-glue or shim my microswitches to my electric ice 2 buttons in interim.

There's no need to take this approach.  Just give the switch holder legs a good hard squeeze together, hold it for second or two, and they will remain in that position to hold your switches nice and tight.  You won't break or damage the material in doing this, as it is extremely rugged.

NickG

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 586
  • Last login:September 26, 2022, 05:25:23 am
  • Dig.
    • My Projects Page
Re: Wa-hoo!
« Reply #43 on: February 16, 2016, 02:08:52 pm »
Thank you so much for the clue Mr. T, you benevolent plastic wizard, you!  I have your buttons back in with RGB LEDs, for now, and tight for days! 

Vitrolight Marquee Progress/Failures:   
  My original goal was to have marquee as DISPLAY2/Secondary in Windows OS, instead of DISPLAY1/Secondary, and to be at Pixel-Perfect resolution.  I found my first success with pixel-perfect resolution on the RPi.  This lead to many a misadventure.  Sending batch commands from a front-end is no biggie, but I was met with performance issues when getting them to the Raspberry Pi.  plink would be an easy solution for only changing the Marquee upon game launch, in a single-frontend menu configuration, but I have been spoiled by hyperspinhelper and wanted more.  Sending plink commands from Windows CLI; I found, requires re-connection+login every time, which seemed possibly too laggy for something like a menu selection change in hyperspin or the like.   Then I tried AHK scripting with an invisibly-windowed already logged-in Putty connection.   This worked to quickly enough change the marquee from batch commands, but I encountered reliability issues returning to the CLI/frontend from the putty window.  Abandon ship, try something else.  I added a second video card to the cabinet (NV cards seem to not have a way yet available to persons of my knowledge to change a display number, and no, Ultramon cannot actually change it at least in my install of WIN7)  I was then able to add the Vitrolight on HDMI/DVI as a secondary/DISPLAY2 from within windows.  As a strange side-effect, with this second card installed, I was finally able to have a Virtual monitor from zoneos show up in the Windows display settings program.   I was able to get a good image to my RPi by sending this secondary image via VNC to the RPi.  Then I was able to run Hyperspin helper images to RPi, but I was disappointed by the lag, and still had thousands of pixels missing due to scaling.  Due to the lag, rather than look into scaling the image on RPi or vitual monitor side, I tried CRU and Nvidia custom resolutions on the new card, connected directly to the monitor.  I was able to remove left,right,top overscan on the new card  (had to make it 1366x768@61Hz w/o LCD standard timings), but my VitroLight only has 243 or 244 vertical pixel rows viewable, so HyperspinHelper 1/3 option had lower- cutoff of the image.    I tried HyperMarquee next, as it had user option to scale the image window.  I tried and tried and tried, and eventually understood Hypermarquee+EDS setup.  HyperMarquee would not draw anything normally to secondary card during setup, like it would not draw to it at all.  I then abandoned hope for the foolproof avoidance of DISPLAY1-only programs, and will find a workaround for that if it later proves to be a real issue.  I copied the custom resolution to my main card config and uninstalled the secondary.  I know am using EDS+HyperMarquee sucessfully to have marquees scaled as I like, at the least.

The PS2 DualShock analog selection :  I moved the P1 and P2 automatic analog selection switching to relay contacts to successfully avoid P1/P2 mode selection crosstalk issues, although I am not sure it was entirely necessary (I may have done wrong on the Arduino scripting or a buffer IC could do instead.)  I have gained reliability of detection of analog vs digital modes for later scripting; by removing the Analog Mode indication led from the Dualshock, and wiring the cathode point which traces to the MCu on the Dualshock, to an Arduino digital input configured in script as a pullup input.  I can reliably switch modes from batch script or buttons wired to extra Arduino inputs now.

I attempted to have my entire control panel connected through one 50p centronics cable, but encountered problems with USB noise or bandwidth or something; devices could be used individually but would not be recognized with various hubs, even with a separate power connection.  I decided against this idea in-lieu of keeping the control panel portable and mostly dumb like my pop'n panel.   To do this I decided to have a second Arduino just for the cab to control the PC/PS2/Whatever-Other-Console and AV switching in the CAB (just the cab stuff), and have Dualshock Mod Dedicated Arduino inside the controller with the powered USB hub which connects to 2 LedWiz, 2 U360s, and a trackball.  (Now tempted to build a dedicated spinner cab now instead of adding it back in from my first project, and may liberate the TB, too, if i do not find games which use TB+Joy setup.)  The end result will mean disconnect/connect of  four plugs instead of one or more, but my track record has hinted to me that I may continue to prefer dedicated setups vs. ease of portability of existing setups. 

I hope to share cab pron soon instead of wall-of-text, but I've had issues capturing the marquee image (too bright to my cellphone camera) and am not finished mounting/wiring the control panel guts.  I gues some of this could be interesting to someone, so I will go ahead and post today.