diff --git a/dist/servoverifier b/dist/servoverifier index aa571436..a4519f28 100755 Binary files a/dist/servoverifier and b/dist/servoverifier differ diff --git a/pi/roverd/command.go b/pi/roverd/command.go index 1306e98b..c29f2eca 100644 --- a/pi/roverd/command.go +++ b/pi/roverd/command.go @@ -6,7 +6,7 @@ type helloMessage struct { Battery BatteryConfig `json:"battery"` MaxWheelSpeed int `json:"maxWheelSpeed"` Media MediaConfig `json:"media"` - CameraServo CameraServoConfig `json:"cameraServo,omitempty"` + CameraServo CameraServoConfig `json:"cameraServo"` } type sensorMessage struct { diff --git a/pi/roverd/wsclient.go b/pi/roverd/wsclient.go index c161d527..b50bfcdc 100644 --- a/pi/roverd/wsclient.go +++ b/pi/roverd/wsclient.go @@ -72,6 +72,7 @@ func (c *WSClient) sendHello(ctx context.Context, conn *websocket.Conn) error { Media: c.cfg.Media, CameraServo: c.cfg.CameraServo, } + c.log.Printf("sending hello (camera servo enabled=%v pin=%d)", msg.CameraServo.Enabled, msg.CameraServo.Pin) return writeJSON(ctx, conn, msg) } diff --git a/server/src/services/roverManager.js b/server/src/services/roverManager.js index 40b14562..8e723d0d 100644 --- a/server/src/services/roverManager.js +++ b/server/src/services/roverManager.js @@ -80,19 +80,16 @@ function lockRover(id, locked, actorSocket) { } function getRoster() { - return Array.from(rovers.values()).map((record) => { - const cameraServo = record.meta?.cameraServo ?? record.meta?.CameraServo ?? null; - return { - id: record.id, - name: record.meta?.name || record.id, - battery: record.meta?.battery, - maxWheelSpeed: record.meta?.maxWheelSpeed, - media: record.meta?.media, - cameraServo, - locked: record.locked, - lastSeen: record.lastSeen, - }; - }); + return Array.from(rovers.values()).map((record) => ({ + id: record.id, + name: record.meta?.name || record.id, + battery: record.meta?.battery, + maxWheelSpeed: record.meta?.maxWheelSpeed, + media: record.meta?.media, + cameraServo: record.meta?.cameraServo, + locked: record.locked, + lastSeen: record.lastSeen, + })); } function broadcastRoster() {