parent
3ea92f6cd3
commit
d7b849720c
1 changed files with 45 additions and 0 deletions
@ -0,0 +1,45 @@ |
||||
#!/usr/bin/env python3 |
||||
from flask import Flask |
||||
import cereal.messaging as messaging |
||||
|
||||
app = Flask(__name__) |
||||
pm = messaging.PubMaster(['testJoystick']) |
||||
|
||||
index = """ |
||||
<html> |
||||
<head> |
||||
<script src="https://github.com/bobboteck/JoyStick/releases/download/v1.1.6/joy.min.js"></script> |
||||
</head> |
||||
<body> |
||||
<div id="joyDiv" style="width:100%;height:100%"></div> |
||||
<script type="text/javascript"> |
||||
// Create JoyStick object into the DIV 'joyDiv' |
||||
var joy = new JoyStick('joyDiv'); |
||||
setInterval(function(){ |
||||
var x = -joy.GetX()/100; |
||||
var y = joy.GetY()/100; |
||||
let xhr = new XMLHttpRequest(); |
||||
xhr.open("GET", "/control/"+x+"/"+y); |
||||
xhr.send(); |
||||
}, 50); |
||||
</script> |
||||
""" |
||||
|
||||
@app.route("/") |
||||
def hello_world(): |
||||
return index |
||||
|
||||
@app.route("/control/<x>/<y>") |
||||
def control(x, y): |
||||
x,y = float(x), float(y) |
||||
x = max(-1, min(1, x)) |
||||
y = max(-1, min(1, y)) |
||||
dat = messaging.new_message('testJoystick') |
||||
dat.testJoystick.axes = [y,x] |
||||
dat.testJoystick.buttons = [False] |
||||
pm.send('testJoystick', dat) |
||||
return "" |
||||
|
||||
if __name__ == '__main__': |
||||
app.run(host="0.0.0.0") |
||||
|
Loading…
Reference in new issue