Gravity Touch bluetooth handske (9 / 10 steg)
Steg 9: Skicka touch händelser till telefonen via Bluetooth
Hur att ge ett namn till din Bluetooth-modul:
- Ladda upp "Bluetooth_cmd" skiss till din Arduino micro.
- Öppna Arduinoen Serial Monitor (cmd-maj-M eller verktyg -> SerialMonitor).
- Kontrollera att den seriella Monitor parameter är:
- Newline
- baudvärde: 115200
- Ange "D" och tryck på Skicka-knappen för att få "Grundläggande inställningar" för bluetooth-modulen. Resultatet bör vara som i skärmdumpen "1 - cmd D".
- Ange "SN, det nya namnet på enheten" och tryck på Skicka-knappen för att ange namnet på din modul. På skärmbilden "2 - cmd SN" Jag ändrade min bluetooth-modul namn som "Gravity touch".
- Ange kommandot "D" igen för att se att namnet pf din modul förändrats.
Du kan spela med kommandot som anges i bilaga B i databladet för modulen. När du är redo att gå med din modul, skicka kommandot omstart: "R, 1".
Låt oss testa bluetooth kommunikationen mellan din Android-telefon och handsken.
- Hämta filen "Gravity_Touch_Bluetooth.zip" på datorn, packa upp den och ladda upp koden på din Arduino.
- Installera filen "GravityTouchTest.apk" på din Android-telefon antingen genom att ladda ner det direkt från webben i din telefon eller antingen genom att ladda ner det på din dator och sedan ladda upp den på din Android telefon.
Aktivera bluetooth på telefonen och starta "Gravity Touch Test" app (vara säker att Arduino drivs innan du startar app). Den gröna lysdioden för Bluetooth-modulen ska vända grön vilket innebär att anslutningen mellan telefonen och handsken är. Om allting arbetat böter bör du se kuber slår gröna på skärmen när du trycker på motsvarande finger av handsken.
Jag bifogade java koden jag skrev att hantera den Android sida bluetooth-kommunikation. Denna kod består av tre filer: MainActivity.java, GloveTouchThread.java och BluetoothNoSupportedDialod.java. Jag granska inte här här koden, bör det vara ganska självförklarande om du är en Android-utvecklare. Obs: I detta projekt använde jag Bluetooth-standarden som är mer besvärlig att spela med jämfört med den nya Bluetooth LE (lågenergi). Se här för den nya förenklade rörledningen att hantera kommunikationen mellan Android och Bluetooth LE.
Vid denna punkt, handsken skickar inslag och orientering info och telefonen fånga dem. Som jag sa i inledningen, syftar Gravity Touch handsken till att vara en inmatningsenhet för VR eller AR spel. Så är vad vi ska göra nästa att vidarebefordra de info till Unity3D spelmotor. Varför Unity3D? Jo, eftersom det är bästa sättet när det kommer till 3D spel utveckling på mobil.