Skip to content
Snippets Groups Projects
Commit 21c6d08d authored by David G. Martin IV's avatar David G. Martin IV
Browse files

Merge branch '11-fan-speed-wrong-on-startup' into 'master'

Change fan speed handling

Closes #11

See merge request !7
parents 8b3e9cd5 22e10fe9
Branches
Tags firmware-v1.1
1 merge request!7Change fan speed handling
Pipeline #489 passed
......@@ -7,10 +7,10 @@ if [[ -z ${COMMIT_REF} ]]; then
fi
for firmware in *; do
if [[ -d ${firmware} && -d ${firmware}/src ]]; then
if [[ -d ${firmware} && -f ${firmware}/${firmware}.ino ]]; then
cp platformio.ini "${firmware}/"
cd "${firmware}"
sed -i 's/__GIT_DESCRIBE__/'"${COMMIT_REF}"'/' src/*.ino
sed -i 's/__GIT_DESCRIBE__/'"${COMMIT_REF}"'/' ${firmware}.ino
platformio run
mv .pio/build/teensylc/firmware.hex "../${firmware}-${COMMIT_REF}.hex"
cd ..
......
File moved
......@@ -108,11 +108,9 @@ void PrintUsage();
const double Get_IGN3_V(const bool print = false);
// Read fan speed selection (0 to 5, <0 on error)
int Get_Fan_Speed();
int Get_Fan_Speed(const double IGN3_V);
// Set blower PWM automatically (calls Get_Fan_Speed) or by fan speed (0-5)
void Set_Fan_Speed();
// Set blower PWM by fan speed (0-5)
void Set_Fan_Speed(const int fan_speed);
// Set blower PWM value
......@@ -142,7 +140,7 @@ SnoozeUSBSerial usb;
SnoozeBlock snoozeConfig(snoozeCompare, snoozelc5vBuffer, usb);
// Current fan speed
int current_fan_speed = -1;
volatile int current_fan_speed = -10;
// -----------------------------------------------------------------------------
// Function Definitions
......@@ -179,6 +177,7 @@ void setup()
analogWriteFrequency(pin_Blower_PWM, PWM_freq);
analogWriteResolution(PWM_bits);
analogWrite(pin_Blower_PWM, 0); // Off at startup
current_fan_speed = -11;
// Wake when IGN3 is above IGN3_min_V
snoozeCompare.pinMode(pin_IGN3_wake, HIGH, IGN3_min_V / IGN3_VD_Ratio);
......@@ -319,11 +318,6 @@ const double Get_IGN3_V(const bool print)
return IGN3_V;
}
int Get_Fan_Speed()
{
return Get_Fan_Speed(Get_IGN3_V());
}
int Get_Fan_Speed(const double IGN3_V)
{
// Disable fan with low IGN3 voltage
......@@ -349,15 +343,10 @@ int Get_Fan_Speed(const double IGN3_V)
else { return 5; }
}
void Set_Fan_Speed()
{
Set_Fan_Speed(Get_Fan_Speed());
}
void Set_Fan_Speed(const int fan_speed)
{
current_fan_speed = fan_speed;
SetPWM(FanToPWM(fan_speed));
current_fan_speed = fan_speed;
}
void SetPWM(const int blower_PWM)
......@@ -395,7 +384,7 @@ const int FanToPWM(const int fan_speed)
void Hibernate()
{
// Prepare for hibernation
Set_Fan_Speed(0); // disable blower
Set_Fan_Speed(-100); // disable blower
digitalWrite(pin_NTC_en, LOW); // disable NTCs
if (usb)
{
......@@ -406,7 +395,7 @@ void Hibernate()
}
// Hibernate
const int who = Snooze.hibernate(snoozeConfig);
Snooze.hibernate(snoozeConfig);
}
void PrintEverything()
......
[platformio]
default_envs = teensylc
src_dir = .
[env:teensylc]
platform = teensy
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment