Löparbands spelande

Planering och tankar kring eventuella framtida projekt.
Chillance
Inlägg: 5
Blev medlem: 15 april 2010, 21:25:24

Löparbands spelande

Inlägg av Chillance »

Hej,

Jo, jag har arbetat på http://treadgaming.blogspot.com/ ett tag nu, och just nu försöker jag lösa ett problem som jag hoppas någon här kan hjälpa mig med.

I princip så handlar det om att analogt kunna styra en spelare i ett spel genom att man går på löparbandet. Tidigare har jag använt en vanlig mus, libUSB och lite mjukvara för att få det att fungera som om man tryckte på tangentbordet. Musen tejpades på löparbandet, och när man kom upp i en viss hastighet skickades exempelvis knappen "W". Detta gjorde då att man gick framåt i ett FPS spel. Men nu vill jag få till så att man kan skicka en analog signal istället. Och, eftersom det är mest strul att försöka lösa det i mjukvara (kan inte installera libUSB 1.0 drivrutiner korrekt i Windows 7), och eftersom spel inte bryr sig om vilken mus man använder (spelen agerar även på musen som används under löparbandet), så tänkte jag lösa detta med ett hemmagjort hårdvara bygge! Dock är jag ny med hårdvara bygge, så jag behöver lite hjälp här.

Som det ser ut nu så lutar det åt att använda Teensy ( http://www.pjrc.com/teensy/index.html ). Sen så är frågan med resten. Någon här som kan ge mig tips hur vad för hårdvara jag borde köpa? Passiv Infraröd Sensor? Fotodiod? Direktlänk till elfa.se eller nått uppskattas. Jag vill ha ett enkelt sätt att kunna läsa in hastigheten på rullbandet. Antingen då genom att hårdvaran är snabb och relativt känslig och kan få ut skillnader på korta avstånd, eller i värsta fall, att jag får sätta dit vita remsor, som man kan använda för att mäta hastigheten...

Vidare var det tänkte att simulera/emulera en XBox 360 kontroll (närmare bestämt den vänstra analoga thumbstick). Dvs, ta input från vad nu passar bäst, köra igenom lite kod, och USB in i datorn! Spel tror det är en Xbox 360 kontrolls data som kommer in... Naturligtvis tar jag gärna emot andra tips för lösning här.

Tack,
Chillance
zecretw
Inlägg: 5
Blev medlem: 8 april 2010, 19:32:01

Re: Löparbands spelande

Inlägg av zecretw »

Absolut enklast är väl en cyckeldynamo mot bandet, likriktarbrygga och en konding som laddas ur via ett motstånd du får lista ut storleken på själv. Kanske en Zenerdiod som överspänningsskydd om du bjuder hem Usain Bolt..

Kul idé..
Johanb
Inlägg: 3406
Blev medlem: 26 mars 2006, 22:26:12
Ort: Smedjebacken

Re: Löparbands spelande

Inlägg av Johanb »

Här finns lite exempel http://www.obdev.at/products/vusb/prjhid.html på HID-implementation gjord med en avr som emulerar USB i mjukvara. På det viset kan du emulera en analog joystick som dyker upp i windows som en spelenhet.
Chillance
Inlägg: 5
Blev medlem: 15 april 2010, 21:25:24

Re: Löparbands spelande

Inlägg av Chillance »

zecretw skrev:Absolut enklast är väl en cyckeldynamo mot bandet, likriktarbrygga och en konding som laddas ur via ett motstånd du får lista ut storleken på själv. Kanske en Zenerdiod som överspänningsskydd om du bjuder hem Usain Bolt..

Kul idé..
Jag hade nog tänkt försöka undvika en mekanisk lösning som det. Då håller det längre.
Chillance
Inlägg: 5
Blev medlem: 15 april 2010, 21:25:24

Re: Löparbands spelande

Inlägg av Chillance »

Johanb skrev:Här finns lite exempel http://www.obdev.at/products/vusb/prjhid.html på HID-implementation gjord med en avr som emulerar USB i mjukvara. På det viset kan du emulera en analog joystick som dyker upp i windows som en spelenhet.
Jag är lite osäker på att det kommer att funka i spelen dock... "Just Cause 2" tex har jag hört bara har stöd för tangentbord-mus eller en XBox 360 kontroll...
Johanb
Inlägg: 3406
Blev medlem: 26 mars 2006, 22:26:12
Ort: Smedjebacken

Re: Löparbands spelande

Inlägg av Johanb »

Emulera ett tangentord istället då :)
HID inkluderar ju även mus och tangentbord, finns sådana exempel på sidan också.
Chillance
Inlägg: 5
Blev medlem: 15 april 2010, 21:25:24

Re: Löparbands spelande

Inlägg av Chillance »

Tangentbord = digitalt, och jag nämnde att jag redan har en sådan lösning.

Mus kolliderar med spelet. Och i vissa spel går det inte att ens stänga av musen... I de flesta spel så används ju musen för att styra åt vilket håll man tittar. Och spelen bryr sig inte om vilken mus det är. Har jag då två, så visst funkar det att gå, men hållet man tittar på ändras också av samma mus! Stänger jag av musen i Kontrollpanelen, funkar det alls inte för då får ju ingen museventen. Därav libUSB.. men som är meckigt att få att fungera...

Dessutom så med egen hårdvara så kan man göra det enkelt för att andra ska kunna göra samma sak. Annars måste alla mecka runt att få mjukvara att installeras och fungera på rätt sätt.

I en ideal värld, så har jag alltså en sensor som läser löparbandets hastighet. Lite kod i microkontrollern som tar sensorns data, och skickar det över USB in till datorn som om man rörde på den analoga styrstickan till vänster på en XBox 360 kontroll.
Johanb
Inlägg: 3406
Blev medlem: 26 mars 2006, 22:26:12
Ort: Smedjebacken

Re: Löparbands spelande

Inlägg av Johanb »

Kolla upp vad som är speciellt med xbox360-kontrollen och om du kan lura spelet.
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Löparbands spelande

Inlägg av E85 »

http://www.fragtheplanet.com/808/emulat ... ontroller/

Kanske fungerar i kombination med Johanb's förslag. Har inte provat emulatorn själv.
På rullbandet kan du säkert trycka dit en optisk enkoder som är kopplad till samma µC som emulerar joysticken.
Chillance
Inlägg: 5
Blev medlem: 15 april 2010, 21:25:24

Re: Löparbands spelande

Inlägg av Chillance »

Det är precis vad det lutar åt nu. Kolla den mer aktiva tråden här: http://forums.adafruit.com/viewtopic.ph ... 60&start=0

Med Teensy, en ADNS-2610 (eller liknande) och följa http://www.martijnthe.nl/2009/07/interf ... r-arduino/ Vidare så kan jag då med USB Raw HID säkert lösa problemet med att simulera/emulera en Dual Shock eller Sixaxis/PS3 kontroll i microkontrollern. Tycker jag hade blivit en enormt snygg lösning. Billigt oxå!

Förresten, någon här som vet var jag i Sverige kan köpa en motsvarande ADNS-2610? ADNS-2610 finns visst bara att köpa in från USA, med sådär 200 i frakt.
Skriv svar