Created by Olli Niemitalo on 2009-08-28, last modified 2015-05-03
My name is Olli Niemitalo. I live in Oulu, Finland.
You can reach me at email@example.com.
I write here of technical and creative things that I am doing.
I have Lenovo ThinkPad X220 on which I am using the Synaptics UltraNav TrackPoint stick as mouse. Upgrade to Windows 10 made mouse slow enough to cause strain because of the extra force required, even when the Windows mouse speed setting was maxed out. In Windows 10 64-bit the latest ...Read More
For more info see this Mathematics StackExchange post
with my reply ...Read More
I am interested in an enumeration of functions that starts with simple functions and progresses to more computationally expensive functions. Such an enumeration would enable to systematically try all useful functions for some task. For efficiency, it would be nice if the enumeration did not contain duplicate copies of the ...Read More
I obtained a few Silicon Graphics (SGI) dial boxes. They have RS-232 serial port interfaces. I figured out the pinouts based on the circuit boards and plan to use these as controllers for some audio generators. Some of the PCB is blank and could be removed to clear room for buttons ...Read More
I bought an Aigo GE-5 microscope years ago. If someone needs, here is the driver for it.
Thanks to Pauli for salvaging this from the CD my CD drive could no longer read ...Read More
As far as I know, yehar.com is safe to visit. But I've had some problems with anti-malware or Internet security companies categorizing yehar.com as malicious. So far these have been false alerts.
Currently I have no problems with McAfee's SiteAdvisor
. I recall I had to ask for a ...Read More
Microwave oven transformer spot welder. Later I have replaced the welding pulse activation switch with a foot switch.
I made a spot welder out of a microwave oven transformer and a starter cable. Those are quite popular actually. They use a solid state relay to switch the transformer on ...Read More
To detect ellipse–circle collision (intersection or one being inside another), the point on the ellipse can be found from which a line perpendicular to the ellipse tangent at that point goes through the circle center. The point on the side closer to the circle center should be taken, not ...Read More
P.S. DyersLIST no longer exists.
DyersLIST is "an internet mailing list intended for the discussion of technical questions, problems and information related to immersion dyeing and to the surface application of synthetic dyes, textile pigments and related chemicals, to fabric and fiber
) owned by East Michigan University
I was ...Read More
These are building instructions for a modern variant of a 5-string kantele, a traditional Finnish folk-musical instrument. Raw sound samples of the instrument (download for higher fidelity):
The finished kantele before painting
I built a kantele for my Russian friend Dmitry, who during his visit lusted after the rather crude ...Read More
is a music synthesis technique that was discovered
by Ville-Matias Heikkilä (viznut/pwp). Kragen Javier Sitaker has a good writeup on the subject
. The way it works is that you generate a stream ...Read More
Laskentaa DNA- ja RNA-molekyyleillä
), Olli Niemitalo, 7.12.2011
Deoksiribonukleiinihappo- (DNA) ja ribonukleiinihappomolekyyleille (RNA) on hahmoteltu käyttötapoja laskuvälineinä. Tämän kirjallisuustutkielman tarkoitus on selvittää, miten DNA- ja RNA-laskennan menetelmät toimivat ja mihin niitä voi käyttää. Tutkimusala lähti liikkeelle toivosta siitä, että molekyylien välisiin vuorovaikutuksiin perustuvat tietokoneet voisivat ratkaista suuria laskennallisia ...Read More
I'm going to call this musical instrument (or rather a tone generator) Rotolaserator
Here's how it sounds like, with reverb, gating and echo added:
And here it is giving the bassline to music (in the first half there's also the softer bassline from Korg Monotron, look for the "power-line-like" sound for ...Read More
I found from a dumpster a Hyundai L17T LCD TV
, pretty much a monitor with an analog TV tuner. I tried to turn it on, but the power indicator light was simply flickering slowly, indicating a short circuit somewhere. Nothing on the screen. The monitor was trying to power up, ...Read More
The Internet Movie Database
) offers their Top 250
list of movies. The list consists of movies that have been received the highest rating from IMDb users. The ratings by which the list is sorted are weighted by the number of votes in a Bayesian
manner ...Read More
Black Deck, an electro-optical musical instrument
Insides of Black Deck
Black Deck EP: http://soundcloud.com/black-deck-project/sets/black-deck-ep/
During the Christmas holidays of 2005, I started to build Black Deck
, an opto-electric musical instrument that superficially resembles a record player. The name Black Deck comes from a philosophy of recycling and a ...Read More
I partook in the music project Oneironaut
during 2010-2011 (and more rarely in 2012), playing Black Deck
and more rarely other instruments, and doing video editing. "Oneironaut mixes various sound sources and effects to create music both for dancing and for private listening. Oneironaut's music is a ...Read More
This is how one can construct a rather useful cable hanger from some random stuff.
The spring is from an old Hewlett-Packard scanner, where its function was to guide and protect cables running inside it.
The function of the cotton string is to pull the spring against the ...Read More
For a project of mine, I needed a stereo amplifier. I had some old Sound Blaster ISA cards (and later got more, which are also now listed here), with different amplifiers:
Sound Blaster 16
2 x 2.4 W
Sound Blaster 16 Value
2 x 2.4 W
Sound Blaster 16
This article describes approaches for efficient isotropic two-dimensional convolution
with disc-like and arbitrary circularly symmetric convolution kernels, and also discusses lens blur effects.
Keywords: depth of field, circle of confusion
, circular blur
, lens blur
, hexagonal blur, octagonal blur
, real-time, DOF
Gaussian function approach
The circularly symmetric 2-d Gaussian kernel is linearly separable
; ...Read More
I have a problem with the halftone patterns that have recently become fashionable: They are not made correctly. For example, have a look at this detail from an image made using Rasterbator
(v1.2 or earlier):
Or any of these random examples from various sources:
What you see in each case is ...Read More
I have started eperimenting with natural dyes to be used in a CD cover art project. The first one of vegetable dyes is bilberry juice (Vaccinium myrtillus
, maybe you know it as mustikka or blueberry). It seems quite versatile!
I knew from beforehand that the color of the juice ...Read More
I became very annoyed by the reoccurring disturbances to Internet connectivity by the overly sensitive master control for wireless radios switch of my ThinkPad X200 laptop. So I superglued it to ON position.
No help. The glitches were still there, shutting down WLAN randomly and whenever I pressed my palm ...Read More
Here is a method for generating a sine look-up table in case you have little (a few kilobytes of) program memory. The idea goes like this: Let's say you have a sine wave lookup table of length 1024 with a 24-bit amplitude range. If you take the difference between successive ...Read More
Teksti: Antti Mehtomaa. Muutama kuva on muiden kuin itseni ottama.
1.4.2006 ja kello löi 8 aamulla. Neljä (takaisin) luontoon haluavaa miestä saapui oulun bussiasemalle. Tästä siis lähdettiin ja mukana oli Antti (möylä), Mursu, Aarni (Junnu) ja Olli. Bussi oli ihan täynnä porukkaa ja tavaratilakin oikein odotti meidän rinkkoja ja ahkioita ...Read More
After the first snow had fallen, me and my colleague Fumi were given permission to pick the apples of the botanical garden at our university. There were about 30 kg of them. That yielded 14 half a litre bottles of cider (batch 2009/1). I used a centrifuge-type juicer from Lidl, ...Read More
When I had my dreadlocks made, I had little idea how to take care of them. I tried different things. By now, I have a routine. I wash the dreadlocks with water every morning and after sports. Once a week, I wash them with non-silicone shampoo, twice at a time, ...Read More
Miscellaneous works and designs
This was sold along with tickets for Histoni's NED parties. The stuff in the tube is a combination of glue and a phosphorescent powder intended for fish lures.
For the shirt I used a coat as a model for the pieces.
These are miscellaneous notes and recipes.
Mapping a pair of integers to an integer
How to map from a pair of integers to an integer? Negative or positive, independent of the size of the two integers, you can convert them into balanced ternary
to get rid of the signs and then ...Read More
Here is a collection of "early" music by me in mp3, ogg, and tracker formats. Some of my songs have probably got lost forever due to hard disk failures, but most of the nicer ones have continued to live thanks to the safe haven that is the Internet. I made ...Read More
This is how to make tuna pie. Heat oven to 225 °C (200 °C is better if you can wait longer).
Take a plate.
Take a can of tuna. Do not discard the oil!
Spread the oily tuna on the plate.
Spread mashed potatoes from yesterday, on top.
Put ...Read More
Polynomial Interpolators for High-Quality Resampling of Oversampled Audio
Revised version (October 2001): deip.pdf
"This paper discusses piece-wise polynomial interpolators used in audio resampling and presents new low-order designs that are optimized for high-quality resampling of oversampled audio. Source code and useful tables for using the interpolators are included."
Old version ...Read More
Sometimes I get an idea that I think may be worth something, maybe not much, but something. But then I forget it. Better write it down, here.
Fractal spring reverb
Sierpinski triangle spring arrangement
Similar to fractal antennas, springs in a spring reverb could be arranged so that the frequency response ...Read More
OK, I have an idea: A spectrophotometer that can take 2D-images, like a normal camera, but from each pixel you get a complete visible spectrum instead of just red, green, and blue intensities.
Pictured is one possible way to construct an imaging spectrophotometer. An image of a subject is focused on ...Read More
Tällä ohjeella tulee 1,5 L raikasta savulohi-vihannesmössöä, jota voi laittaa vaikka kolmioleipiin.
1 L maustamatonta jugurttia (tein vähälaktoosisesta UHT-kevytmaidosta, juurena bulgarianjugurtti)
800 g savustettua lohta (3/4 kokonaisesta 2 kg lohesta)
1 ruukullinen tuoretta persiljaa
2 rkl viinietikkaa
2 tlk sitruunamehua
Valuta jugurtista nestettä pois yön yli kankaan läpi, nakkaa neste pois. Sekoita ...Read More
This page is devoted to the classic PC soundcard, Adlib, and compatibles.
Me and Matthew Gambrell reverse-engineered the YM3812/YMF262 ROM tables
. These are the pictures we took:
The bits of dirt are from my fingers, sorry about ...Read More
My second screen printing project.
I found some burgundy bedsheets on sale in Anttila, and made a blanket cover from them for my mmmmmm-so-warm camel hair blanket from Lidl. (Thanks to Tiina for helping out with sewing!) I started to think that a subtle silvery plant pattern along the sides ...Read More
My first screen printing project, logo patches for our football team shirts.
Evolution of the logo:
Real silk! ...and photoresist. Exposed by ultraviolet light through two duplicate layers of photocopier transparencies. The frames are hardwood photo frames that were on sale, 2 EUR each.
Not perfect registration ...Read More
Chebyshev's inequality states that, for any probability distribution, at most $1/k^2$ of the area of the probability density function lies more than $k$ standard deviations away from the mean. We can do better, if we know that the distribution is bounded and we know the bounds.
Let $X$ be a random ...Read More
What if you suddenly need a scale, accurate to one gram? Here is the solution, in case you live in the euro zone. (Something like this has actually been done before!
The physical mass of each euro coin is actually standardized
. So they can be used to measure mass ...Read More
Problems running Java applets? If you have Windows 7, go to Control Panel, search for Java, go to Java Control Panel tab Java, change Java Runtime Environments settings by adding
to the runtime parameters. Or try this alternative page of Dye Mixer
Hello, fellow dyer!
If the Dye Mixer won't ...Read More
To measure the impulse response of a noisy system, you don't want to just send an impulse and see what comes out. Instead, you will play a signal that has succifiently high energy (long instead of loud), record the outcome and deconvolve from it your original signal, giving you the ...Read More
If you have a problem where you need to find the optimal values for a set of real variables, try this library written by Magnus Jonsson and me.
- Optimization library
- Mersenne Twister random number generator required by the library (by Rick Wagner
optitest.cpp Read More
Doing the following will void the warranty of your camera and also might destroy your camera, although I don't think that should happen. If this is OK with you, please read on!
A network adapter will be handy for a camera if you intend to take a lot of pictures ...Read More
This is probably the most efficient structure for implementing a Hilbert transform. Actually, it's not a Hilbert transform, but two all-pass IIR filters whose phase difference is approximately 90 degrees over a range of frequencies symmetric around Nyquist/2. Laurent de Soras uses these kind of filters in his HIIR
In 1998, I had some extra time while others were reading for final exams of the senior high school, and got into digital signal processing. I wrote as I learned, and here is the result. It is not entirely accurate in places but may serve as a nice tutorial into ...Read More
I have occasionally been a regular on the EFNet #musicdsp IRC channel. This ASCII art comic is my perverted view of some of the #musicdsp characters.
___ __ _ _ _ _ __
| | | | _|__|_ |\ /| | | / \ | / ` | \ / ...Read More
- simple C++ EPS plotting library
With this simple library you can plot Encapsulated PostScript files straight from your C++ program. Nearly all the pictures in Polynomial Interpolators for High-Quality Resampling of Oversampled Audio
were generated with this ...Read More
RSS feed for comments on this post. TrackBack URL