Skip to content

Instantly share code, notes, and snippets.

View kasperkamperman's full-sized avatar

Kasper Kamperman kasperkamperman

View GitHub Profile
@kasperkamperman
kasperkamperman / sound_normalizing.ino
Created November 17, 2020 12:20
sound_normalizing
/* script to calibrate (sound level normalizing) a microphone (or other sensor).
used with Sound Sensor v2.0 from flamingoeda.com / electronic bricks
sampling based on Arduino Cookbook recipe "detecting sound" chapter 6.7
dim_curve idea by Jims <http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1174674545>
created 7 september 2011 Kasper Kamperman
http://www.kasperkamperman.com
This example code is in the public domain.
*/
@kasperkamperman
kasperkamperman / ReadPulseCooking.pde
Created June 13, 2019 20:30
Code in which I read serial data and write it to a CSV file. Used for a research project.
// ReadPulseCooking.pde
import processing.serial.*;
/*
http://pulsesensor.myshopify.com/
Uses a modified pulse sensor script in Arduino to update each 10ms
A different string is formulated with all the data
@kasperkamperman
kasperkamperman / callbucket_demo.php
Created October 18, 2018 11:23
This algorithm spreads out reoccurring (every n minutes) api calls over time, so server load is balanced. It's only the spreading out part.
<pre>
<?php
ini_set('display_errors', '1');
ini_set('error_reporting', E_ALL);
/* This algorithm spreads out reoccurring (every n minutes) api calls over time, so server load
is balanced. It's only the spreading out part.
The whole system uses a database with 60 columns. Each croncall (if we assume one a minute) we read out the
@kasperkamperman
kasperkamperman / fixwrongutf8encoding.php
Created July 3, 2018 11:58
Function to fix ut8 special characters displayed as 2 characters (utf-8 interpreted as ISO-8859-1 or Windows-1252)
<?php header('Content-Type: text/html; charset=utf-8'); ?>
<html>
<head>
<title>Fix wrong encoded UTF8 characters</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
</head>
<body>
<pre>
<?php
/* Problem description:
@kasperkamperman
kasperkamperman / dmxoutputdriver.ino
Last active February 4, 2018 20:06
Output DMX data on the Particle Photon. Transmission is done in the background with the DMA implementation. You can use any pin, so you are not restricted to the serial port. Counterpart is that it uses a lot of memory (4 bytes for every transmitted DMX bit).
/* Demo to create a DMX output on every pin of the Photon.
It send the information through DMA, so transmitting data won't cost you
extra CPU cycles. Counterpart of this method is that each bit occupies 32bits
(unt32_t) in memory. So almost half of the Photon's memory is used for the
data array.
You can choose to use continuousMode is DMX is transmitted on the maximum speed
of around 44 fps. You can't go faster (at least not if you use the whole buffer).
This code supports on pin, however without any additional memory cost you could
@kasperkamperman
kasperkamperman / postImageToAzure.pde
Created January 24, 2018 10:07
raw sketch to test Azure posting and feedback in Processing
// download HttpClient 4.5.5 from https://hc.apache.org/downloads.cgi
// Download Binary 4.5.5 zip: http://ftp.tudelft.nl/apache//httpcomponents/httpclient/binary/httpcomponents-client-4.5.5-bin.zip
// Create a folder named code as a subfolder from this sketch
// Copy all the files in the "lib" folder to the code folder.
// Microsoft Cognetive Services - FACE API
// Docs: https://docs.microsoft.com/en-us/azure/cognitive-services/face/quickstarts/java
// Thanks to: https://stackoverflow.com/questions/39541634/how-to-send-a-local-image-instead-of-url-to-microsoft-cognitive-face-api-using-j
@kasperkamperman
kasperkamperman / main.cpp
Last active August 18, 2022 08:41
DMA control of GPIO pins on Particle Photon STM32
#include "Particle.h"
// RM0033 MANUAL - Table 23 / Figure 1 System architecture
// Photon is STM32F205
// Only DMA2 is connected with GPIO ports https://stackoverflow.com/questions/46613053/pwm-dma-to-a-whole-gpio
// GPIO BSSRL/BSSRH/BSSR http://hertaville.com/stm32f0-gpio-tutorial-part-1.html
// DMA_Mode_Circular https://github.com/monkbroc/particle-speaker
// Ulrich Radig OctoArtnetNode https://www.ulrichradig.de/home/index.php/dmx/8-kanal-art-net
// Thanks to Julien Vanier for the idea of BSRR manipulation.
@kasperkamperman
kasperkamperman / add_to_functions.php
Created November 8, 2017 15:03
add source url to image captions in Wordpress
// add source url to image captions
// --------------------------------
//
// add this to functions.php of your (child) theme
// original by Kaspars Dambis: https://kaspars.net/blog/wordpress/how-to-automatically-add-image-credit-or-source-url-to-photo-captions-in-wordpress
// modified by Kasper Kamperman: https://www.kasperkamperman.com/blog/source-link-captions-in-wordpress/
add_filter("attachment_fields_to_edit", "add_image_source_url", 10, 2);
function add_image_source_url($form_fields, $post) {
$form_fields["source_url"] = array(
@kasperkamperman
kasperkamperman / easingdemo.pde
Created June 30, 2017 20:44
Easing functions demo
/*
Demonstration of the "Penner" easing functions.
I've used the Ani library. However you could also copy-paste functions form the source code.
This example only uses the functions in the Ani library. The Ani library is really time focused. However
with the demo you see how you can add easing on all values between 0.0 - 1.0, and use it for example for
music visualisation.
- online previz demo http://easings.net/#
void setup() {
// tip FX2D looks really smooth on retina displays
// some things won't work in this mode, but most things do
size(640,320,FX2D);
}
void draw() {
background(196);