Quantcast
Channel: Linux Device Hacking
Viewing all articles
Browse latest Browse all 3247

LED control on Pogoplug E02 (3 replies)

$
0
0
I'm chasing what I think should be an obvious issue, but I can't find it.

The host is a Pogoplug E02 running Debian jessie.

Logged into the system as root, the following two commands turn the green LED on and off as expected.

root@www:# echo "default-on" > "/sys/class/leds/status:green:health/trigger"
root@www:# echo "none" > "/sys/class/leds/status:green:health/trigger"

So here is a little program adapted from the one at https://github.com/suetanvil/ledflash/blob/master/ledflash.c, which to my mind should blink the green LED on and off a few times:

#include <errno.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <syslog.h>
#include <string.h>
#include <sys/stat.h>

#   define FLASHFILE   "/sys/class/leds/status:green:health/trigger"
#   define ON          "default-on"
#   define OFF         "none"

void main() {
    FILE *ledfile;
    int status;

  ledfile = fopen(FLASHFILE, "w");
  if (ledfile == NULL) {
    printf("Unable to open '" FLASHFILE "' for write\n");
    printf("Error: %d (%s)\n", errno, strerror(errno));
    exit(0);
  }

  status = fputs("none", ledfile);
  sleep(1);
  status = fputs("default-on", ledfile);
  sleep(1);
  status = fputs("none", ledfile);
  sleep(1);
  status = fputs("default-on", ledfile);
  sleep(1);
  status = fputs("none", ledfile);
  sleep(1);
  status = fputs("default-on", ledfile);
  sleep(1);
  status = fputs("none", ledfile);
  sleep(1);
  status = fputs("default-on", ledfile);
  sleep(1);
  status = fputs("none", ledfile);
  sleep(1);
  status = fputs("default-on", ledfile);
  sleep(1);
  status = fputs("none", ledfile);

  exit(0);
}

The program's effect is exactly nothing. No error on the LED device file open, no blinking LED.

Does anyone see what the problem is here?

Viewing all articles
Browse latest Browse all 3247

Trending Articles