Skip to content

Instantly share code, notes, and snippets.

View tspspi's full-sized avatar

tspspi

View GitHub Profile
@tspspi
tspspi / SimplePiezoBoardTest.cpp
Created October 14, 2019 13:21
3D printer piezo board leveling Arduino test sketch
/*
Simple test program for 3D printer piezo
bed leveling adapter board described at
https://www.tspi.at/2019/09/11/piezobedlevel.html
(using Arduino IDE and libraries).
This does not provide any I2C connectivity, etc.
and just periodically reads analog samples, dumps
them to the serial port and does some moving average
filtering (as well as using a inductive probe as
@tspspi
tspspi / ebnf.ebnf
Created February 27, 2021 20:58
ISO EBNF productions describing ISO EBNF without alternative syntax
(*
ISO EBNF Syntax
Removed alternative syntax:
definition separator symbol = ´|´ | ´/´ | ´!´;
start option symbol = ´[´ | ´(/´;
end option symbol = ´]´ | ´/)´;
start repeat symbol = ´{´ | ´(:´;
end repeat symbol = ´}´ | ´:)´;
*)
repetition symbol = ´*´;
@tspspi
tspspi / LICENSE.md
Created July 28, 2021 16:14
Python access to Gamma vacuum QPC ion pump pressure gauge using Ethernet interface

Copyright (c)2021 Thomas Spielauer. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

@tspspi
tspspi / LICENSE.md
Created September 12, 2021 17:26
Example program for synchronous usage of AD7705 with an ATMega2560

Copyright (c) Thomas Spielauer. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
@tspspi
tspspi / LICENSE.md
Created November 9, 2021 15:20
A simple daemon skeleton for Python 3.x

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without
@tspspi
tspspi / leastsquares.ipynb
Last active March 21, 2022 10:55
Basics-Least squares using QR decomposition
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@tspspi
tspspi / qrdecomposition.ipynb
Created March 12, 2022 21:03
Basics-QR decomposition using Givens rotations
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@tspspi
tspspi / krylovlinear01.ipynb
Last active March 21, 2022 10:56
Steepest descent, Conjugate gradinet and Generalized minimal residual
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@tspspi
tspspi / README.md
Created November 7, 2019 18:36
Fetch or pull all own github repositories

What is this

This is a short script that uses a personal access token from a github account (created via Profile > Settings > Developer Settings > Personal Access Tokens) that fetches a list of all repositories owned by a given user and either clones them into the current directory - or if they exist performs a pull.

The script puts all repositories in directories relative

@tspspi
tspspi / simpleoaallan.py
Created June 14, 2022 14:06
Simple Allan deviation in time domain
# Simple and direct overlapping Allan deviation
# for stability analysis in time domain (i.e. "phase" samples)
def overlappingAlanDeviationTimeDomain(timestamps, samples, overlapWindowSize = 2):
oadev = []
taus = []
tau0 = (timestamps[len(timestamps)-1] - timestamps[0]) / (len(timestamps))
for nLimit in range(2*overlapWindowSize, len(timestamps)):
tau = tau0 * nLimit