Skip to content

Instantly share code, notes, and snippets.

View adlerweb's full-sized avatar

Florian Knodt adlerweb

View GitHub Profile
#include <ESP8266WiFi.h>
#define DEBUG
// Wi-Fi Settings
const char* ssid = "freifunk-myk.de"; // your wireless network name (SSID)
const char* password = ""; // your Wi-Fi network password
WiFiClient client;
// ThingSpeak Settings
/**
* NeoClock
*
* Clock using 60 WS2812B/Neopixel LEDs and DS3231 RTC
*
* Libraries needed:
* * Adafruit NeoPixel (Library Manager) - Phil Burgess / Paint Your Dragon for Adafruit Industries - LGPL3
* * Rtc by Makuna (Library Manager) - Michael C. Miller
* * Arduino Timezone Library (https://github.com/JChristensen/Timezone) - Jack Christensen - CC-BY-SA
* * Time Library (https://github.com/PaulStoffregen/Time) - Paul Stoffregen, Michael Margolis - LGPL2.1
@adlerweb
adlerweb / composersetup.sh
Created June 10, 2017 11:05
Composer Install Script
#!/bin/sh
#Taken from https://getcomposer.org/doc/faqs/how-to-install-composer-programmatically.md, here to allow for simple installation
#Use at your own risk.
EXPECTED_SIGNATURE=$(wget -q -O - https://composer.github.io/installer.sig)
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_SIGNATURE=$(php -r "echo hash_file('SHA384', 'composer-setup.php');")
if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
unsigned long last1 = 0;
unsigned long last2 = 0;
unsigned long lasts = 0;
unsigned int dur1 = 0;
unsigned int dur2 = 0;
byte tgt1 = 128;
byte tgt2 = 128;
void setup() {
Serial.begin(115200);
@adlerweb
adlerweb / vref.ino
Created July 28, 2017 20:12
Voltage reference hack
#include <Bounce2.h>
//Pin mapping
const byte LED[] = {2,4,3,5}; //Jepp, I screwed up while soldering ;)
const byte SW = 6;
const byte SYSLED = LED_BUILTIN;
//ATT: When powering on or switching voltages the output may provide +10V for a brief moment
const String volt[] = {
<?php
$port = STDIN;
$out = array();
$b=0;
$dlc = -1;
$buffer = array();
while(!feof($port)) {
$curByte = ord(fread($port, 1));
@adlerweb
adlerweb / gpstest2.ino
Created November 5, 2017 15:50
GPS Tracker (ublox neo 6/7 + ESP8266), https://www.youtube.com/watch?v=wlQ7ku758T4
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <NMEAGPS.h>
#include <SoftwareSerial.h>
/**
* Required libs (see manager):
* - SoftwareSerial
* - NeoGPS
*/
@adlerweb
adlerweb / LCDWiFi.ino
Created June 10, 2018 00:41
ESP8266 HD44780 WiFi
#include <LiquidCrystal.h>
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
const char *ssid = "freifunk-myk.de";
const char *password = "";
const char *netname = "esp-lcd";
#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <PubSubClient.h>
const char* cfg_wifi_ssid = "freifunk-myk.de";
const char* cfg_wifi_pwd = "";
const char* mqtt_server = "deinserver.local";
const unsigned int mqtt_port = 1883;
@adlerweb
adlerweb / vz.md
Last active December 30, 2023 17:25
Grafana MySQL query to visualize Volkszähler-Data

Using Channel-IDs (that's not UUID)

SELECT
  timestamp/1000 as time_sec, 
  data.value as value, 
  properties.value as metric
FROM data
  LEFT JOIN properties ON (properties.entity_id = data.channel_id)
  LEFT JOIN entities ON (entities.id = data.channel_id)