Skip to content

Instantly share code, notes, and snippets.

View brennanMKE's full-sized avatar

Brennan Stehling brennanMKE

View GitHub Profile
@brennanMKE
brennanMKE / README.md
Created February 20, 2024 18:09
Noisebridge Rules

Noisebridge Rules

The top rule is Be Excellent. All rules that follow are examples of not being excellent.

Is there a no sleeping rule at Noisebridge? What about living in the space?

Yes, Noisebridge has a policy against sleeping and living in the space. This is to ensure that the space remains available and accessible for the community's intended purpose: collaboration, learning, and making. The rule is in place to maintain a productive environment and to comply with legal and safety regulations. Noisebridge is dedicated to being a welcoming and active makerspace, and as such, it is not designed to support living accommodations. If you have specific questions about this policy or need clarification on acceptable use of the space, I can provide more detailed information from Noisebridge's guidelines and policies.

What is to be done when someone is sleeping or living in the space?

@brennanMKE
brennanMKE / README.md
Last active February 15, 2024 06:34
Raspberry Pi 2011.12 with USB adapter for WiFi (RTL8188ETV)

Raspberry Pi 2011.12 with USB adapter for WiFi

Realtek Semiconductor Corp. RTL8188ETV Wireless LAN 802.11n Network Adapter

If you are trying to use this USB adapter to connect your 2011.12 Raspberry Pi to connect to WiFi you may have difficulty because there is not driver preinstalled for it from the version of Linux installed using the [Raspberry Pi Imager]. What you will need is the [rtl8188eu] driver. The following instructions will get your Pi up and running on WiFi.

To check which USB adapter you have, run lsusb and see if it is an adapter from Realtek Semiconductor Corp. If it matches the name above the instructions below will help you build and install the required driver.

First, install the dependencies.

@brennanMKE
brennanMKE / README.md
Last active February 12, 2024 23:05
Flaschen Taschen on a Raspberry Pi

Flaschen Taschen on a Raspberry Pi

Build and run FT on a Pi.

Preparing SD Card

Use Raspberry Pi imager to install OS and create a username of noisebridge to log into the Pi.

Building FT

@brennanMKE
brennanMKE / README.md
Created February 4, 2024 05:38
Electronics Workbench

Electronics Workbench

I’m setting up a workbench for working with electronics to do soldering and programming microcontrollers. Please provide a list of essential tools and supplies for my workbench.


Setting up a workbench for soldering and programming microcontrollers involves gathering a variety of tools and supplies to ensure you can tackle projects efficiently and safely. Here's a list of essential tools and supplies you might consider:

Basic Tools and Supplies for Soldering

  • Soldering Iron: A good quality, temperature-controlled soldering iron is crucial. Consider one with interchangeable tips for different tasks.
@brennanMKE
brennanMKE / README.md
Last active July 16, 2024 01:02
OTA support for ESP32

OTA support for ESP32

Please show me code which would check a server which has the new firmware along with a checksum which is then downloaded, verified and installed with fallback support. Ideally a single JSON file would list the latest release to install related to hardware models. (sent to ChatGPT)


Implementing OTA updates on an ESP32 that checks a server for new firmware, along with a checksum for verification, and then downloads, verifies, and installs it with fallback support, involves several steps. I'll provide a simplified example in Arduino code. This example assumes you have a server hosting a JSON file indicating the latest firmware and its checksum, and the firmware binary itself.

Assumptions:

  • A server hosts the firmware binary and a JSON file.

The Flaschen Tachen is a great way to give members of Noisebridge a system which is hackable. What are other systems that Hackspaces have made which were hackable?

Hackspaces and makerspaces around the world often create unique, hackable systems that embody the spirit of innovation and open-source technology. Here are some notable examples:

  1. Interactive LED Walls: Similar to the Flaschen Taschen at Noisebridge, other spaces have created large-scale LED displays that can be programmed and controlled by members.

  2. Hackable Door Access Systems: Many hackspaces develop their own electronic access systems, allowing members to experiment with RFID, NFC, or even biometric access controls.

  3. DIY 3D Printers and CNC Machines: Custom-built or modified 3D printers and CNC machines are common. These not only serve a practical purpose but also provide a platform for learning and experimentation in hardware and software.

@brennanMKE
brennanMKE / AutomaticNetworking.cpp
Created January 15, 2024 07:58
ESP32 controller for lights
#include "AutomaticNetworking.h"
#define ATTEMPT_MAX 10
#define ATTEMPT_DELAY 500
AutomaticNetworking::AutomaticNetworking() {
// Constructor - You can initialize variables here if needed
}
bool AutomaticNetworking::connect() {
@brennanMKE
brennanMKE / NoDelay.ino
Last active December 27, 2023 04:48
LED light control without delays
/**
LED lights control with no delays.
The Blink example Sketch for Arduino uses delays to control the built-in LED to turn
it on and off repeatedly. Since the next loop is delayed nothing else can be done
while until the delay expires. This Sketch controls the built-in LED and a strip of
10 LED lights without delays. It sets timeouts so that once the current clock passes
the timeout it can trigger an action. There is an interval for the blink and color
change which cycles through the list of colors and blinks a number of times for the
current color position.
@brennanMKE
brennanMKE / QRCode.swift
Created November 27, 2023 18:58
Create QR code
import CoreImage
struct QRCode {
static func generateQRCode(from url: String,
width: Double = 512.0,
heigth: Double = 512.0,
foregroundColor: CIColor = .black,
backgroundColor: CIColor = .white) -> CGImage? {
let data = url.data(using: String.Encoding.ascii)
@brennanMKE
brennanMKE / OpenWeatherMapKey.cpp
Created November 26, 2023 07:09
Networking with ESP32 Microcontroller
#include "OpenWeatherMapKey.h"
const char* OpenWeatherMapKey::key() {
return "INSERT_HERE";
}