Skip to content

Instantly share code, notes, and snippets.

@c7h
c7h / gist:203a74d5fd24fb213c23cbb6ebf11568
Created February 10, 2025 17:05
Tasmota Smart Meter Interface: eBZ DD3 2R06 DTA SMZ1
>D
>B
TelePeriod 60
=>sensor53 r
>M 1
; Device: eBZ DD3 2R06 DTA SMZ1
; protocol is D0 SML HEX
; 9600@7E1 for OP-type devices, 9600@8N1 for SM-type devices
+1,3,s,0,9600,SML,1
; Zählerstand zu +A, tariflos,
@c7h
c7h / generate_custom_grammar.py
Created June 17, 2022 18:29
RESTler generate combinations of fuzzing grammar for the NFDiscovery Endpoint.
"""
Generate custom grammar to fuzz Open5GC NFDiscovery
endpoint with a maximum of 13 parameters a a time
"""
import sys
imports = r"""
from __future__ import print_function
import json
from engine import primitives
@c7h
c7h / rce.py
Created July 9, 2020 14:34
RCE Exploit Pickle Cookie
"""
Cookie RCE for Cryptopaste server
"""
import requests
import os
import pickle
import base64
target = "http://localhost:1337/"
@c7h
c7h / ipynb
Created December 9, 2019 10:39
Install a pip package in jupyter (the right way)
# Install a pip package in the current Jupyter kernel
import sys
!{sys.executable} -m pip install plotly
@c7h
c7h / read_portexpander.sh
Created September 6, 2018 11:08
Read an I2C Portexpander
#!/bin/bash
ADDRESS=0x27
printf "76543210 76543210\n"
while :
do
v=$(i2cget -y 0 $ADDRESS 0x00 w)
echo ${v: -4:4} | xxd -r -p | xxd -b | awk '{split($0,a," "); printf "%s %s\r", a[2], a[3]}'
done
/* Rotary Dial encoder
encode the rotary dial of an old analog phone.
by Christoph Gerneth
*/
const int active_pin = 2;
const int pulse_pin = 3;
int number_counter = 0;
int last_pulse_state = 0; // last state of the rotary dial pulser
int last_active_state = 0;
@c7h
c7h / gist:cbba43f1c3d58250f9c9fc7bd39ebba7
Created July 17, 2017 09:52
major and annoying differences between module versions of Pythons JSON Library
Two versions of the same library behave completely different :-/
the PI
```
Python 3.4.2 (default, Oct 19 2014, 13:31:11)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import json
>>> try:
@c7h
c7h / keybase.md
Created January 31, 2017 19:27
keybase.io

Keybase proof

I hereby claim:

  • I am c7h on github.
  • I am c7h (https://keybase.io/c7h) on keybase.
  • I have a public key ASCdetH8IgkxSS8N_CBwRxZhqthPiFpK-iGS4vlIn1vtUQo

To claim this, I am signing this object:

@c7h
c7h / user.pl
Created December 9, 2015 10:53
logfile evaluation
#!/usr/bin/perl
my $user_c = 0;
my $user_min = 0;
my @ip = ();
while(<>) {
if (m/(^\w+).*(\d{2}:\d{2})/) {
if ($1 eq 'christoph'){
$user_c++; # user_zaehler erhöhen
@c7h
c7h / binserarchtree.py
Created November 16, 2015 23:16
understanding binary search trees
class BinSearchTreeElement(object):
def __init__(self, data, leftTree=None, rightTree=None):
self.data = data
self.left = leftTree
self.right = rightTree
def add(self, element):
if element <= self.data:
self._insertElement(self.left, element)
else: