🎓 Expand servo buffers to Int16
This commit is contained in:
@@ -37,8 +37,8 @@ let canvas: HTMLCanvasElement, streamCanvas: HTMLCanvasElement, stream: HTMLImag
|
||||
|
||||
let context: CanvasRenderingContext2D, texture: CanvasTexture
|
||||
|
||||
let modelAngles:number[] | Int8Array = new Array(12).fill(0)
|
||||
let modelTargetAngles:number[] | Int8Array = new Array(12).fill(0)
|
||||
let modelAngles:number[] | Int16Array = new Array(12).fill(0)
|
||||
let modelTargetAngles:number[] | Int16Array = new Array(12).fill(0)
|
||||
|
||||
let modelBodyAngles:EulerAngle = {omega: 0, phi: 0, psi: 0 }
|
||||
let modelTargeBodyAngles:EulerAngle = {omega: 0, phi: 0, psi: 0 }
|
||||
|
||||
@@ -6,7 +6,7 @@ export const isConnected = writable(false)
|
||||
|
||||
export const dataBuffer = writable(new Float32Array(13))
|
||||
|
||||
export const servoBuffer:Writable<Int8Array|number[]> = writable(new Int8Array(12))
|
||||
export const servoBuffer:Writable<Int16Array|number[]> = writable(new Int16Array(12))
|
||||
|
||||
export const data = writable();
|
||||
|
||||
@@ -28,7 +28,7 @@ export const connect = (url:string) => {
|
||||
const buffer = []
|
||||
buffer[0] = 1
|
||||
buffer.push(...data)
|
||||
_socket.send(new Int8Array(buffer))
|
||||
_socket.send(new Int16Array(buffer))
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -24,7 +24,7 @@ class Servo : public Adafruit_PWMServoDriver {
|
||||
|
||||
Servo() : Adafruit_PWMServoDriver() {}
|
||||
|
||||
void SetAngles(int8_t* angle) {
|
||||
void SetAngles(int16_t* angle) {
|
||||
for(size_t i = 0; i < 12; i++)
|
||||
servo_angles[i] = angle[i];
|
||||
updateServos();
|
||||
@@ -108,7 +108,7 @@ class Servo : public Adafruit_PWMServoDriver {
|
||||
|
||||
position_t spot_position = {.omega=0,.phi=0,.psi=0,.xm=-40,.ym=-170, .zm=0, .set=1};
|
||||
position_t goal_position = {0,};
|
||||
int8_t servo_angles[12]{0,};
|
||||
int16_t servo_angles[12]{0,};
|
||||
};
|
||||
|
||||
extern DRAM_ATTR std::unique_ptr<Servo> g_ptrServo;
|
||||
|
||||
+1
-1
@@ -321,7 +321,7 @@ void handleWebSocketBuffer(uint8_t* data) {
|
||||
if(data[0] == 0) g_ptrServo->setBody(data[1], data[2], data[3], data[4], data[5], data[6]);
|
||||
else if(data[0] == 1) {
|
||||
log_i("About to update all servos");
|
||||
int8_t* angles = (int8_t*)data+1;
|
||||
int16_t* angles = (int16_t*)data+1;
|
||||
|
||||
g_ptrServo->SetAngles(angles);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user