• Show log

    Commit

  • Hash : 5697089d
    Author : Sam Lantinga
    Date : 2013-10-20T23:52:02

    Fixed bug 2156 - Android: Accelerometer values fed to joystick driver are inverted for the X axis and wrong for Z
    
    Denis Bernard
    
    Background information: http://developer.android.com/reference/android/hardware/SensorEvent.html#values
    
    Steps to reproduce: compile testjoystick.c as an android app (change screen size according to your device). While running the app, also run:
    
    adb logcat -c; adb logcat -s 'SDL:*' 'SDL/APP:*'
    
    When tilting the device left/right, the joystick moves in the opposite direction of what one would expect. Or at least, the behaviour is not consistent with the Y axis.
    
    Also when the device sits on a table (obviously not moving), the Z axis value oscillates between -32000 and +32000 (by overflow):
    
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: 32511
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: 32575
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: 32383
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: -32386
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: -32450
    I/SDL/APP ( 1994): Joystick 0 axis 2 value: -32578
    
    This is caused by the accelerometer yielding a constant value around 9.81 for Z and feeding something like 0.9 to 1.1 to the joystick driver, resulting in the overflow.
    
    Proposed fix in SDLActivity.java (swap X and subtract G from Z reading)
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/SDL.git
    Git SSH git@git.kmx.io:kc3-lang/SDL.git
    Public access ? public
    Description

    Fork of https://github.com/libsdl-org/SDL

    Users
    thodg_w kc3_lang_org thodg_l thodg_m www_kmx_io thodg
    Tags