diff options
-rw-r--r-- | main.vala | 14 | ||||
-rw-r--r-- | receiver.vala | 2 | ||||
-rw-r--r-- | receiver/socket.vala | 2 |
3 files changed, 12 insertions, 6 deletions
@@ -45,14 +45,18 @@ int main(string[] args) { cfg = new Config(); Log.init(); - //gyroscope = cfg.get_gyroscope(); - //accelerometer = cfg.get_accelerometer(); - //compass = cfg.get_compass(); - //barometer = cfg.get_barometer(); - //motorCtrl = cfg.get_motor_controller(); + gyroscope = cfg.get_gyroscope(); + accelerometer = cfg.get_accelerometer(); + compass = cfg.get_compass(); + barometer = cfg.get_barometer(); + motorCtrl = cfg.get_motor_controller(); model = cfg.get_model(); receiver = cfg.get_receiver(); + receiver.set_speed.connect((id, speed) => { + motorCtrl.set_single(id, speed); + }); + kinematics = new Kinematics(0, 0); // TODO: Compass flightCtrl = new FlightControl(); diff --git a/receiver.vala b/receiver.vala index 7ea5c9f..f1c4655 100644 --- a/receiver.vala +++ b/receiver.vala @@ -18,4 +18,6 @@ public abstract class Receiver : Object { public abstract void init(KeyFile cfg) throws Error; public abstract int32 get_value(uint8 channel) throws Error; public abstract void set_value(uint8 channel, int32 value) throws Error; + + public abstract signal void set_speed(uint8 id, uint8 speed); } diff --git a/receiver/socket.vala b/receiver/socket.vala index e9d8eed..79eec85 100644 --- a/receiver/socket.vala +++ b/receiver/socket.vala @@ -85,7 +85,7 @@ public class Socket : Receiver { uint16 port = (uint16) cfg.get_uint64("Socket", "port"); srv = new RPCServer(port); - srv.set_speed_all.connect((speed) => {channel_data[0] = speed;}); + srv.set_speed.connect((id, speed) => {set_speed(id, speed);}); } public override int32 get_value(uint8 channel) { |