Joystick & Pid Configuration
Flexible PID configuration and joysticks were added
This commit is contained in:
@@ -12,4 +12,5 @@ data class DeviceState(
|
||||
@Json(name = "p") val pitch: Float = 0f,
|
||||
@Json(name = "r") val roll: Float = 0f,
|
||||
@Json(name = "zIn") val zInertial: Float = 0f,
|
||||
val pidSettings: PidSettings? = null
|
||||
)
|
||||
@@ -0,0 +1,7 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
// This dataclass provide message content with its type without any markers
|
||||
data class GeneralMessage(
|
||||
val type: MessageType,
|
||||
val data: String
|
||||
)
|
||||
@@ -0,0 +1,6 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
enum class MessageType {
|
||||
UpdateMessage,
|
||||
PidSettings
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
import com.squareup.moshi.JsonClass
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class PidParams (
|
||||
val p: Float,
|
||||
val i: Float,
|
||||
val d: Float
|
||||
)
|
||||
@@ -0,0 +1,8 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
import com.squareup.moshi.JsonClass
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class PidSettingRequiredMessage (
|
||||
val pidSettingOpened: Boolean = true
|
||||
)
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
import com.squareup.moshi.JsonClass
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class PidSettings (
|
||||
val p1: PidParams,
|
||||
val p2: PidParams,
|
||||
val p3: PidParams
|
||||
)
|
||||
@@ -0,0 +1,6 @@
|
||||
package com.helible.pilot.dataclasses
|
||||
|
||||
data class StickPosition (
|
||||
val x: Float,
|
||||
val y: Float
|
||||
)
|
||||
Reference in New Issue
Block a user