Skip to content

Instantly share code, notes, and snippets.

@Lukelectro
Lukelectro / chargepump.pio
Created August 25, 2024 12:30
First experiment with Raspberry Pi Pico PIO: Waveform for Dickson charge pump https://en.wikipedia.org/wiki/Voltage_multiplier#Dickson_charge_pump
.program chargepump
;// this makes the waveshapes for a Dickson charge pump. Frequency can be set by setting PIO state machine clock frequency
.wrap_target
set pins 0
set pins 2 [10]
set pins 0
set pins 1 [10]
.wrap
@Lukelectro
Lukelectro / configuration.h
Created October 1, 2023 18:52
Marlin 2.1.2.1 configuration.h for Leapfrog Creatr (based on reverse engineering and https://support.lpfrg.com/support/solutions/articles/11000083346-firmware-archive-creatr-xl-), no display
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
@Lukelectro
Lukelectro / main.c
Created March 1, 2023 13:29
neon indicator binary counter: 4 bits on 2 lamps (using both electrodes)
#include <avr/io.h>
#include <avr/interrupt.h>
#define F_CPU 8e6
#include <util/delay.h>
/*
FUSES = {
.low = 0xE2, //INTRC 8 MHZ, no CKDIV8
.high = 0xD9, // geen bootloader
.extended = 0xFF, // geen BOD
@Lukelectro
Lukelectro / sinetable.py
Created February 19, 2023 20:05
Sine table for MCU use (Not below zero / offset, though ofc this can be changed)
import math
import matplotlib.pyplot as plt
sintable = " "
sinplottable =[]
sinplotfull = []
# for conversion from volts to adc ticks
vfull=3.3
fullscale = 4096
@Lukelectro
Lukelectro / main.c
Created February 18, 2023 16:26
Atmega328p-based DC-AC converter to ring a T65 phone, simpler hardware, but horrible waveshape
#include <avr/io.h>
#include <avr/interrupt.h>
#define F_CPU 8e6
#include <util/delay.h>
/*
FUSES = {
.low = 0xE2, //INTRC 8 MHZ, no CKDIV8
.high = 0xD9, // geen bootloader
.extended = 0xFF, // geen BOD
@Lukelectro
Lukelectro / main.c
Last active March 1, 2023 13:33
Atmega328p-based DC-AC converter to ring a T65 phone
/*
* Atmega328p-based DC-AC converter to ring a T65 phone.
* http://www.eluke.nl for schematic
*/
#include <avr/io.h>
#include <avr/interrupt.h>
#define F_CPU 8e6
#include <util/delay.h>
[Unit]
Description="run web radio receiver"
After=multi-user.target
[Service]
Type=simple
User=USERNAME_HIER_INVULLEN
Group=USERGROUP_HIER_INVULLEN
ExecStart=/usr/bin/python3 /home/USERNAME/runradio.py
/*
simple example for optical distance sensor with IR LED and BPW40
LED has 470R series resistor and is connected to pin given as IRLED (Pin 8 / PB0)
BPW40 is wired with collector to +5V, emitor to 1k8 to ground.
Emitor of BPW40 is capacitively coupled with 100 nF to pin given as BPW40 (pin A1, PC1)
That pin also has a 100k resistor to ground
(D8) + 5V
| |
470R |
@Lukelectro
Lukelectro / runradio.py
Last active October 9, 2024 14:27
radio stream receiver for raspi, bodged together from url mentioned in comments and a few other sources: A website with streaming urls (https://hendrikjansen.nl/henk/streaming.html) and a few adafruit / sparkfun tutorials on audio-to-usb-soundcard and readonly OS. (strangely, after routing audio to card 1 which is the usb card and setting the FS…
#!/usr/bin/env python3
# requires `mplayer` to be installed
# v1.0
# https://raspberrytips.nl/internet-radio-luisteren-raspberry-pi/
# modified to use vlc and a simple hd44780lcd + 3 buttons
# Re-modified 10-2024 to use --loop and --https-reconnect hoping to fix a 'sometimes stops playing' issue
import time
import os
# generated by Slic3r 1.3.0 on 2022-01-30 13:05:52
adaptive_slicing = 0
adaptive_slicing_quality = 75%
avoid_crossing_perimeters = 0
bed_shape = 0x0,190x0,190x190,0x190
bed_temperature = 0
before_layer_gcode =
between_objects_gcode =
bottom_infill_pattern = rectilinear
bottom_solid_layers = 0