aboutsummaryrefslogtreecommitdiff
path: root/src/modules/px4iofirmware
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-11-16 00:57:23 +0100
committerLorenz Meier <lm@inf.ethz.ch>2014-11-16 00:57:23 +0100
commit63707ef058f01e324d8d74cf6bc48635e09ab507 (patch)
treedebe2064e507ef8360b88a23318249a6aa9c42c2 /src/modules/px4iofirmware
parentc0f32d44a2acd0f840b4246f90816a95dc6a7527 (diff)
downloadpx4-firmware-63707ef058f01e324d8d74cf6bc48635e09ab507.tar.gz
px4-firmware-63707ef058f01e324d8d74cf6bc48635e09ab507.tar.bz2
px4-firmware-63707ef058f01e324d8d74cf6bc48635e09ab507.zip
Let it breathe
Diffstat (limited to 'src/modules/px4iofirmware')
-rw-r--r--src/modules/px4iofirmware/px4io.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/modules/px4iofirmware/px4io.c b/src/modules/px4iofirmware/px4io.c
index 51281f660..8abfb0d2e 100644
--- a/src/modules/px4iofirmware/px4io.c
+++ b/src/modules/px4iofirmware/px4io.c
@@ -85,6 +85,9 @@ static volatile uint8_t msg_next_out, msg_next_in;
#define NUM_MSG 2
static char msg[NUM_MSG][40];
+static void heartbeat_blink(void);
+static void ring_blink(void);
+
/*
* add a debug message to be printed on the console
*/
@@ -124,9 +127,16 @@ heartbeat_blink(void)
{
static bool heartbeat = false;
LED_BLUE(heartbeat = !heartbeat);
+}
+
+static void
+ring_blink(void)
+{
#ifdef GPIO_LED4
- const unsigned max_brightness = 1000;
+ // XXX this led code does have
+ // intentionally a few magic numbers.
+ const unsigned max_brightness = 118;
static unsigned counter = 0;
static unsigned brightness = max_brightness;
@@ -135,7 +145,7 @@ heartbeat_blink(void)
if (brightness_counter < max_brightness) {
- bool on = ((on_counter * 100) / brightness_counter) <= ((brightness * 100) / max_brightness);
+ bool on = ((on_counter * 100) / brightness_counter+1) <= ((brightness * 100) / max_brightness+1);
LED_RING(on);
brightness_counter++;
@@ -159,9 +169,10 @@ heartbeat_blink(void)
n = 62 - counter;
}
- brightness = n * n;// designed to be ~1000 / (31.0f * 31.0f);
+ brightness = (n * n) / 9;
brightness_counter = 0;
on_counter = 0;
+ counter++;
}
#endif
@@ -338,6 +349,8 @@ user_start(int argc, char *argv[])
heartbeat_blink();
}
+ ring_blink();
+
check_reboot();
/* check for debug activity (default: none) */