final designs and code fixes of remote controller
This commit is contained in:
parent
572cb13f97
commit
30fd638cb1
BIN
designs/cad/box_top.FCStd
Normal file
BIN
designs/cad/box_top.FCStd
Normal file
Binary file not shown.
BIN
designs/cad/remote.20250125-170345.FCBak
Normal file
BIN
designs/cad/remote.20250125-170345.FCBak
Normal file
Binary file not shown.
Binary file not shown.
BIN
designs/cad/remote_box.20250125-170552.FCBak
Normal file
BIN
designs/cad/remote_box.20250125-170552.FCBak
Normal file
Binary file not shown.
Binary file not shown.
BIN
designs/stl/box_top.stl
Normal file
BIN
designs/stl/box_top.stl
Normal file
Binary file not shown.
BIN
designs/stl/impeller_larger_6_blade.stl
Normal file
BIN
designs/stl/impeller_larger_6_blade.stl
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -15,7 +15,7 @@
|
|||
// WiFi stuff
|
||||
const char* ssid = "sirening";
|
||||
const char* pwd = "alarm_11735";
|
||||
const IPAddress ip(192, 168, 4, 201);
|
||||
const IPAddress ip(192, 168, 4, 203);
|
||||
const IPAddress gateway(192, 168, 4, 1);
|
||||
const IPAddress subnet(255, 255, 0, 0);
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ AiEsp32RotaryEncoder ampEncoderButton = AiEsp32RotaryEncoder(33, 25, 26, -1, 4);
|
|||
float frequency = 0;
|
||||
float amplitude = 0;
|
||||
const int ports = 6;
|
||||
const int motorIndex = 0;
|
||||
const int motorIndex = 2;
|
||||
|
||||
// Display Defs
|
||||
#define I2C_ADDRESS 0x3C
|
||||
|
|
@ -49,11 +49,11 @@ void killAll() {
|
|||
updateAmp(0.0);
|
||||
}
|
||||
|
||||
float hzToRads(int freq){
|
||||
float hzToRads(float freq){
|
||||
return freq * TWO_PI / ports;
|
||||
}
|
||||
|
||||
float rpmToRads(int rpm){
|
||||
float rpmToRads(float rpm){
|
||||
return (rpm / 60) * TWO_PI;
|
||||
}
|
||||
|
||||
|
|
@ -81,11 +81,17 @@ void setupOSC(){
|
|||
});
|
||||
|
||||
OscWiFi.subscribe(settings_port, "/freq", [](const OscMessage& m) {
|
||||
updateFreq(m.arg<float>(0));
|
||||
float input = m.arg<float>(0);
|
||||
if(input < 500.0 && input >= 0.0){
|
||||
updateFreq(input);
|
||||
}
|
||||
});
|
||||
|
||||
OscWiFi.subscribe(settings_port, "/amp", [](const OscMessage& m) {
|
||||
updateAmp(m.arg<float>(0));
|
||||
float input = m.arg<float>(0);
|
||||
if(input < 500.0 && input >= 0.0){
|
||||
updateAmp(input);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -104,19 +110,21 @@ void setupEncoderButton(AiEsp32RotaryEncoder& eb, char* val){
|
|||
} else {
|
||||
eb.setup(readAmpEncoderISR);
|
||||
}
|
||||
eb.setBoundaries(0, 4000, false);
|
||||
eb.setBoundaries(0, 5000, false);
|
||||
eb.setAcceleration(1000);
|
||||
}
|
||||
|
||||
//This needs to be more sophisticated. Moving on if it disconnects...
|
||||
void initWiFi() {
|
||||
int attempts = 0;
|
||||
WiFi.mode(WIFI_STA);
|
||||
WiFi.begin(ssid, pwd);
|
||||
WiFi.config(ip, gateway, subnet);
|
||||
Serial.println();
|
||||
Serial.print("Connecting to WiFi ..");
|
||||
while (WiFi.status() != WL_CONNECTED) {
|
||||
while (WiFi.status() != WL_CONNECTED && attempts < 5) {
|
||||
Serial.print('.');
|
||||
attempts += 1;
|
||||
delay(1000);
|
||||
}
|
||||
Serial.println(WiFi.localIP());
|
||||
|
|
|
|||
|
|
@ -63,12 +63,12 @@ void setupOSC(char* path){
|
|||
float amplitude = m.arg<float>(2);
|
||||
if(frequency != frequencies[motorIndex]){
|
||||
frequencies[motorIndex] = frequency;
|
||||
freqEncoderButton.setEncoderValue(frequency * 10.0);
|
||||
//freqEncoderButton.setEncoderValue(frequencies[sirenSelect] * 10.0);
|
||||
updateDisplay();
|
||||
}
|
||||
if(amplitude != amplitudes[motorIndex]){
|
||||
amplitudes[motorIndex] = amplitude;
|
||||
ampEncoderButton.setEncoderValue(amplitude * 10.0);
|
||||
//ampEncoderButton.setEncoderValue(amplitudes[sirenSelect] * 10.0);
|
||||
updateDisplay();
|
||||
}
|
||||
});
|
||||
|
|
@ -142,6 +142,8 @@ void encoderButtonUpdate(AiEsp32RotaryEncoder& eb, bool& buttonState, char* val)
|
|||
if (!eb.isEncoderButtonDown() && buttonState) {
|
||||
if(val == "freq"){
|
||||
sirenSelect = (sirenSelect + 1) % 3;
|
||||
freqEncoderButton.setEncoderValue(frequencies[sirenSelect] * 10.0);
|
||||
ampEncoderButton.setEncoderValue(amplitudes[sirenSelect] * 10.0);
|
||||
} else {
|
||||
killAll();
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue