J5 is the Tag-Connect footprint, with ordering like this:
|---------------|
| O O ----|
| 2 4 6 8 10 o |
| o |
| 1 3 5 7 9 o |
| O O ----| J5
|---------------|
^
J5 is the Tag-Connect footprint, with ordering like this:
|---------------|
| O O ----|
| 2 4 6 8 10 o |
| o |
| 1 3 5 7 9 o |
| O O ----| J5
|---------------|
^
| #!/usr/bin/env python3 | |
| # | |
| # Simple Intel x520 EEPROM patcher | |
| # Modifies the EEPROM to unlock the card for non-intel branded SFP modules. | |
| # | |
| # Copyright 2020,2021,2022 Andreas Thienemann <andreas@bawue.net> | |
| # | |
| # Licensed under the GPLv3 | |
| # | |
| # Based on research described at https://forums.servethehome.com/index.php?threads/patching-intel-x520-eeprom-to-unlock-all-sfp-transceivers.24634/ |
| #!/bin/sh | |
| CONFIGFS=/sys/kernel/config/usb_gadget/g1 | |
| USB_VENDORID="0x1D6B" # Linux Foundation | |
| USB_PRODUCTID="0x0104" # Multifunction composite gadget | |
| USB_MANUF="Debian" | |
| USB_PRODUCT="Mobile USB Gadget" | |
| USB_SERIAL=$(sha256sum < /etc/machine-id | cut -d' ' -f1) | |
| USB_ATTRIBUTES="0x80" # Bus-powered | |
| USB_MAX_POWER="500" # mA |
| [ "${ACTION}" = "add" -o "${ACTION}" = "remove" ] || exit 0 | |
| [ "${SUBSYSTEM}" = "tty" ] || exit 0 | |
| [ -n "${DEVNAME}" -a -n "${DEVPATH}" ] || exit 1 | |
| if [ "${ACTION}" = "add" ]; then | |
| subsystem="$(basename $(readlink /sys${DEVPATH}/../../../subsystem))" | |
| [ "$subsystem" = "usb" ] || exit 0 | |
| manufacturer="$(cat /sys${DEVPATH}/../../../../manufacturer)" || manufacturer="$(cat /sys${DEVPATH}/../../../../idVendor)" |
| [Unit] | |
| Description=Network UPS Tools - power device driver controller | |
| After=local-fs.target network.target systemd-udev-settle.service | |
| Wants=systemd-udev-settle.service | |
| StopWhenUnneeded=yes | |
| [Service] | |
| ExecStart=/sbin/upsdrvctl start %i | |
| ExecStop=/sbin/upsdrvctl stop %i | |
| Type=forking |
| [Unit] | |
| Description=Software Defined Radio TCP Server | |
| Requires=network.target | |
| After=network.target | |
| [Service] | |
| ExecStart=/bin/sh -c "/usr/bin/rtl_tcp -a 0.0.0.0 -d %i -p $$((1234+%i))" | |
| Restart=on-failure | |
| KillMode=control-group |
| #!/usr/bin/python3 | |
| # Original script by frutis, mods by Leo-PL | |
| # Usage: | |
| # 1. uncomment proper section for your router (MF283+, MF286, MF286A, MF286D). | |
| # 2. set correct IME if you have one | |
| # 3. Set correct version ID (the integrate_version from NVRAM) for your device if not already found here | |
| # 4. Run the script - it shall return the URL of data update, if available for the set base version. | |
| from base64 import b64decode, b64encode |
| README | |
| A simple rule to push sensor data to Luftdaten directly off of sensor running Tasmota. Assumes configured BME280 and PMS5003 sensors. | |
| Replace <CHIP_ID> and <VERSION> by ESP8266 chip ID (available on info page) and Tasmota version, respectively. | |
| Rule1 | |
| ON Tele-BME280#Temperature DO Backlog Var1 %value% ENDON | |
| ON Tele-BME280#Humidity DO Backlog Var2 %value% ENDON | |
| ON Tele-BME280#Pressure DO Backlog Var3 %value% ENDON | |
| ON Tele-PMS5003#PM10 DO Backlog Var4 %value% ENDON | |
| ON Tele-PMS5003#PM2.5 DO |
| # Creates persistent serial port symlinks for USB devices, | |
| # like mobile broadband modems, USB-UART bridges, etc, | |
| # with layout very similar to udev symlinks | |
| # Put under /etc/hotplug.d/tty | |
| [ "${ACTION}" = "add" -o "${ACTION}" = "remove" ] || exit 0 | |
| [ "${SUBSYSTEM}" = "tty" ] || exit 0 | |
| [ -n "${DEVNAME}" -a -n "${DEVPATH}" ] || exit 1 | |
| if [ "${ACTION}" = "add" ]; then |
| #!/bin/bash | |
| # Simple script to check if remote host behind a jump host is up. If not - wake it up using etherwake. | |
| # Usage: invoke the script through ProxyCommand directive from your ssh_config. | |
| # "nc" must be available on your host. "etherwake" must be available on jump host. | |
| # Example: | |
| # Host <target_hostname> | |
| # ProxyCommand ~/.ssh/ssh-wakeup.sh <jumphost_address> <wol_interface> <wol_mac_address> %h %p | |
| function wait_for_host() { |