Try setting the timer expiration time to 0 so it expires every frame. Then use
viz.getFrameElapsed to get the elapsed time since the previous frame and multiply that against the speed in m/s and joystick position:
Code:
viz.MainView.move([0, 0, -joy_y * SPEED * viz.getFrameElapsed()])