Hacker News new | ask | show | jobs
by AirMarshalHenry 3881 days ago
A bit more compact go-version:

    package main

    import (
    	"log"
    	"os"
    	"strconv"
    	"time"
    )

    func main() {
    	f, err := os.OpenFile("/sys/class/leds/beaglebone:green:usr0/brightness", os.O_RDWR, 0666)
    	if err != nil {
    		log.Fatal(err)
    	}
    	defer f.Close()

    	state := 1
    	for i := 0; i < 3*2; i++ {
    		_, err = f.WriteString(strconv.Itoa(state))
    		if err != nil {
    			log.Fatal(err)
    		}
    		time.Sleep(2 * time.Second)
    		state = 1 - state
    	}
    }
1 comments

Thanks, yeah, I went crazy and implemented it via go channels, which isn't a fair comparison. I updated with a slightly tweaked version of what you provided.