Skip to content

Instantly share code, notes, and snippets.

View vitorio's full-sized avatar

Vitorio Miliano vitorio

View GitHub Profile
@vitorio
vitorio / boot.py
Last active March 17, 2024 22:53
Force a kiosk into BIOS to boot from a USB drive + offer ⊞ key after boot, Adafruit Neo Trinkey, CircuitPython 8.x
import board
import touchio
import storage
import usb_cdc
import usb_midi
import usb_hid
# Neo Trinkey
touch1 = touchio.TouchIn(board.TOUCH1)
touch2 = touchio.TouchIn(board.TOUCH2)
@vitorio
vitorio / main.py
Created January 15, 2024 01:18
CO2 monitor using Pimoroni Breakout Garden + 1.12" Mono OLED SPI + SCD41 breakouts, MicroPython 1.21
from pimoroni import BREAKOUT_GARDEN_I2C_PINS
from pimoroni_i2c import PimoroniI2C
import breakout_scd41
from machine import Pin, SPI
import sh1107 # https://github.com/peter-l5/SH1107
import random
MESSAGE = '0000'
co2 = 0
@vitorio
vitorio / font2x5fixedmononum.py
Last active January 15, 2024 01:30
CO2 monitor using Pimoroni Breakout Garden + 5x5 RGB Matrix + SCD41 breakouts, MicroPython 1.21
# Quick script to convert Adafruit GFX font into binary file.
# Author: Tony DiCola
# License: MIT (https://opensource.org/licenses/MIT)
# Taken from glcdfont.c from Adafruit GFX Arduino library.
FONT = bytes((
0x00, 0x00,
0x00, 0x00,
0x00, 0x00,
0x00, 0x00,
0x00, 0x00,
@vitorio
vitorio / main.py
Last active July 21, 2023 02:42
CO2 monitor using Pimoroni Wireless Plasma Kit + Adafruit SCD40, MicroPython 1.20.3
# https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/plasma_stick/co2.py
# https://docs.micropython.org/en/latest/library/rp2.html#rp2.bootsel_button
# https://github.com/pimoroni/phew/blob/v0.0.3/phew/__init__.py
import time
import plasma
from plasma import plasma_stick
from machine import Pin
import breakout_scd41 as scd
from pimoroni_i2c import PimoroniI2C
@vitorio
vitorio / main.py
Last active July 20, 2023 03:19
CO2 monitor using Pimoroni Tufty 2040 + Adafruit SCD-40, MicroPython 1.20.3
# https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/tufty2040/main.py
# https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/tufty2040/pride_badge.py
# https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/breakout_scd41/scd41_demo.py
from picographics import PicoGraphics, DISPLAY_TUFTY_2040, PEN_RGB332
import time, math, random, gc
from pimoroni import Button, BREAKOUT_GARDEN_I2C_PINS
import breakout_scd41
from pimoroni_i2c import PimoroniI2C
@vitorio
vitorio / boot.py
Last active July 20, 2023 03:20
Force a kiosk into BIOS to boot from a USB drive, Adafruit Trinkey QT2040, CircuitPython 8.x
import board
import digitalio
import storage
import usb_cdc
import usb_midi
import usb_hid
# QT2040 Trinkey
button = digitalio.DigitalInOut(board.BUTTON)
button.switch_to_input(digitalio.Pull.UP)
@vitorio
vitorio / main.py
Last active December 1, 2023 02:29
CO2 monitor using Adafruit Trinkey QT2040 + SCD-40 + ST25DV16K, CircuitPython 8.x
# SPDX-FileCopyrightText: 2021 Carter Nelson for Adafruit Industries
# SPDX-License-Identifier: MIT
import time
import board
import adafruit_scd4x
import neopixel
import adafruit_24lc32
## https://github.com/Neradoc/circuitpython-st25dv
@vitorio
vitorio / bongos.py
Last active January 20, 2023 04:16
Stadia gamepad + Bongos as synthetic/composite/hybrid Switch Pro controller for Taiko no Tatsujin
# sudo apt install python3-pip pkg-config libdbus-1-dev libglib2.0-dev
# sudo pip3 install nxbt
# sudo pip3 install jinja2==3.0.3 itsdangerous==2.0.1 Werkzeug==2.0.2 eventlet==0.33.0 dnspython==2.2.1
import pyjoystick.sdl2
import nxbt
import gpiozero
import sys
button3 = gpiozero.Button(24, pull_up=False)
@vitorio
vitorio / sawtoothv1.md
Created August 31, 2021 17:53
Sawtooth Power Mac G4 Raspberry Pi 4 case configuration files v1

Okay, here's where we've landed for v1:

  • Power button
    • Wired to GPIO3, the default for gpio-shutdown
    • When pressed, does a safe shutdown
  • Green power LED
    • Wired to GPIO23
    • Lights up green when the RPi powers on
  • Reset button
    • Wired to RUN using a test point pin
@vitorio
vitorio / archival-transfer-marker
Last active December 30, 2021 07:02
DEPRECATED /.well-known/archival-transfer-marker
# A /.well-known/archival-transfer-marker file is a short-lived,
# well-known location meant to act as a boundary marker for web
# archives. It marks the END of a period of time, and itself SHOULD
# only exist for no more than 24 hours (TTL of 86400 seconds).
#
# The capture of a /.well-known/archival-transfer-marker file
# indicates that any captures of any other pages on that domain AFTER
# THE CAPTURE OF THE MARKER may have different owners, rights,
# robots.txt policies, permissions, etc.
#