Skip to content

Instantly share code, notes, and snippets.

@pawekz
pawekz / MultiWAN.md
Last active February 10, 2026 13:24 — forked from Vladkarok/MultiWAN and routing on MikroTik RouterOS.md
Multi WAN MikroTik routerOS v6 & v7
@mark-stopka
mark-stopka / e3372_openwrt_setup.md
Created October 17, 2020 15:32 — forked from aliicex/e3372_openwrt_setup.md
Using the Huawei E3372 4G Dongle with OpenWRT

Hardware requirements:

USB modem - Huawei E3372h-153/E3372s-153 (in StickMode; non-HiLink)

Firmware versions beginning with 21.xxx.xx.xx.xx NOT 22.xxx.xx.xx.xx

Router running OpenWRT; I use:

  • GL.iNet AR750S firmware v3.022
  • OpenWrt 18.06.1 r7258-5eb055306f / LuCI openwrt-18.06 branch (git-18.196.56128-9112198)
@umar-daraz-techverx
umar-daraz-techverx / VisualStudioProfessionalKeys.txt
Created November 26, 2019 06:10
Visual Studio Professional Keys
Visual Studio 2019 Professional: NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y
Visual Studio 2017 Professional: KBJFW-NXHK6-W4WJM-CRMQB-G3CDH
Visual Studio 2015 Professional: HMGNV-WCYXV-X7G9W-YCX63-B98R2
Visual Studio 2013 Professional: XDM3T-W3T3V-MGJWK-8BFVD-GVPKY
Visual Studio 2012 Professional: 4D974-9QX42-9Y43G-YJ7JG-JDYBP
@james4388
james4388 / mjpeg_stream_multipart_writer.py
Last active March 19, 2025 13:46
MJPEG stream using aiohttp, opencv, multipartwriter
import asyncio
import cv2
from aiohttp import web, MultipartWriter
async def mjpeg_handler(request):
boundary = "boundarydonotcross"
response = web.StreamResponse(status=200, reason='OK', headers={
'Content-Type': 'multipart/x-mixed-replace; '
'boundary=--%s' % boundary,
@bwDraco
bwDraco / secure-erase.sh
Last active September 6, 2025 19:04
Simple script to secure-erase drives, based on https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
################################################################################
# secure-erase.sh
# Copyright 2018-2023 bwDraco - Brian Wong
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@jblang
jblang / tpm2.md
Last active December 28, 2025 18:11
TPM2 Protocol Description

TPM2 Protocol Implementation

Introduction

Frame data is transferred inside packets (similar to DMX, for example). A frame is an image representing a matrix or a light scene.

The packets start and end with one-byte characters. In between are a few control bytes followed by the payload. There is no set size for a payload; it is transmitted with each packet. This makes the protocol quite flexible. There are enough bytes in a single packet for an RGB matrix with 21,845 pixels, but if you just want to control an RGBW lamp, that only requires 9 bytes. The variable frame size means there is no overhead, allowing for maximum transfer speed.

TPM2 Packet Structure