firewood silo

I find using firewood very enjoyable, it is an energy-dense and environmentally friendly fuel. Felling trees is fast compared to how much wood you get. Splitting the wood is quick and easy using a (vertical) hydraulic splitter.

But finally comes the stacking phase, which i find annoying, especially for small (33cm) wood. This project is about eliminating the stacking phase by building a firewood silo where it is easy to throw the wood directly from the splitter’s work table.

My plan involves building it using steel wire fence and as many repurposed parts as possible.

MATERIALS LIST
dog fence, ~7.5m
2x FIN & random pallet
2×4 wood, 2 x 2.2m
2×8 wood, 2.2m
wood board (to repair broken pallets), 11m
wood nails
steel band
roof nails


I started the project by researching what type of steel wire fence to use. The most common type available is dog fence, but the standard model has too large grid size to make it sturdy and to stop the smaller woods from getting lodged. After looking around i found an independent importer who had a model available with large enough wire thickness (2.5mm) and small enough grid size (5x10cm).

Then i got my hands on some 20 year old FIN and random pallets, so i decided to build the silo using them as a base. FIN pallets are 1×1.2m and the random are 1.2×1.2m. This resulted in the silo being an ellipse with the diameters 2.4×2.2m, and a volume of 8.3m^3.

I flattened the ground and made 9 support spots for the pallet’s corners and made a simple support structures on top of them using two 2×4:s at the edges and a 2×8 in the middle. Then i repaired the pallets using board and made sure there are no holes big enough for firewood to fall through, keeping in mind to leave enough gaps for air to circulate.

Next i placed the fence on the pallets, cut it to length, and hammered it in place using roofing nails and brackets made from steel band. Then i cut the door out and bent the remaining wire stubs to act as a hinge:

The silo without door frames:


To finalize the project i built frames for the door. For this i needed:

10m of wood board
steel band
torx screws

I used the screws to sandwich the fence between two pieces of wood. The door frame helps keeping the silo’s form intact as the wood exerts radial pressure on the walls. The upper 3 and lower 2 wire rings are connected so they won’t stretch, but where the door is cut the stretching force must be connected through the door frame or the silo will bulge.

For the lower horizontal support i used two sandwiched boards plus a third one to connect them to the vertical boards, but at the top i used the steel band instead of a third board to make it more slim.

The finished silo filled with 8.3m^3 of small firewood:

Once the snow has melted and the ground thawed i will update this post with how i ended up keeping ground moisture&plants away.

TO BITCOIN currency converter written in Forth

This is a currency converter written in Forth, capable of converting mixed input EUR, USD, GBP and ounces of gold (XAU) into BTC and mBTC. Forth only supports integers so for now the input must be specified in either full units or cents to keep the code simple.

The calculator is started by typing start after loading the program. Typing exit will close the program.

CHANGELOG
0.1 initial release, my first forth project.
0.2 added support for gold ounces (XAU), added support for exit command, updated help and layout
1.0 re-write so it works correctly on 32 bit setups.


: GFX 61 EMIT ;
: GFXN 0 DO GFX LOOP ;
: start page ." Welcome to the TO BITCOIN currency converter!" CR ." Use POSTFIX notation. Mixed inputs supported. " CR 80 gfxn CR
." e.g. 1 EUR = >enter> Or add several together: 1 EUR 1 USD + 1 GBP + 1 XAU + = >enter>" CR
." Only whole numbers are supported, but you can use c= to input cents e.g. 10 EUR c= >enter>" CR
." Price database updated: 2014-11-03 " ;
: EUR 380486 * ;
: USD 328343 * ;
: GBP 487324 * ;
: XAU 356021 * 1000 * ;
: = >R I 100000000 / ." ~ " . ." BTC or " R> 100000 / . ." mBTC" CR ;
: c= >R I 10 0 DO 10 / LOOP ." ~ " . ." BTC or " R> 7 0 DO 10 / LOOP . ." mBTC" CR ;
: exit bye ; : quit bye ; : close bye ; : stop bye ;

LightDM/Awesome WM script to set the primary monitor at right

If you have an AMD graphics card and want to use two desktops, and your primary display on the right side, then you must do some manual configuration using xrandr because the proprietary driver is buggy and by default always sets the primary screen to be the leftmost one and the default multimonitor mode to clone. It is easy to define a static configuration overriding this, but this will cause problems if your monitors are changed (eg. you use a different primary monitor for your laptop at home/at work and they have different resolutions). The solution is to use a dynamic script that defines the monitors correctly including multimonitor mode and arrangement.

First open lightdm.conf:

sudo nano /etc/lightdm/lightdm.conf

Then locate the line that says #display-setup-script= under [SeatDefaults] and change it to:

display-setup-script=/home/username/script.sh

Then create the file and mark it executable:

nano ~/script.sh && chmod +x script.sh

Add the following script then save&exit:

#!/bin/bash
PRIMARY="DFP6"
#primary display xrandr name
SECONDARY="CRT1"
#secondary display xrandr name

function get_displays()
{
xrandr -q | grep connected | awk '{print $1}'
}

function get_resolution()
{
[[ -z "$1" ]] && return 0 || xrandr -q | grep -A1 $1 | tail -1 | awk '{print $1}' | grep -e "^[0-9]"
}

for display in $(get_displays);

do resolution=`get_resolution $display`

if [[ $display == $PRIMARY ]];
[[ -n $resolution ]] && mode="--mode $resolution" && arg="--primary" && position="--right-of $SECONDARY"; then
xrandr --output $display $arg $mode $position
elif [[ $display == $SECONDARY ]];
[[ -n $resolution ]] && mode="--mode $resolution" && position="--left-of $PRIMARY"; then
xrandr --output $display $mode $position
else
echo "incorrect display setup"
fi
unset display mode arg position resolution;

done

You can list the xrandr display names by running:

xrandr

UPDATE: Starting with Catalyst Omega (version 14.12) the driver configuration tool works correctly, so this can be done much more easily via amdcccle.

µChameleon voltage meter

uChameleon
In this project we are going to make the uChameleon into a voltage meter capable of measuring 0-5V with high accuracy.

First we need to open a terminal and start listening for output from the device:
cat /dev/ttyACM0

Leave it in the background and open a new terminal window where you enter the rest of the commands. If you get the following error: “bash: /dev/ttyACM0: Permission denied” then you need to set the permissions:
sudo chmod 666 /dev/ttyACM0

Check if the device is responsive by asking for the id:
echo id > /dev/ttyACM0
You should see it reply with: “id �Chameleon2”

Now connect a wire to the pins Gnd and 1. Set pin1 to be an input:
echo "pin 1 input" > /dev/ttyACM0

Now you can use the wires to measure voltage:
echo "adc 1" > /dev/ttyACM0
Will give back a value between 0…4096 representing 0…5V.

Once this works correctly, we can move on to make it output the measurement continuously. To achieve this we need the ability to run code on the device. This is possible using the simple programming language which is defined in the manual. The device has two tables which contain the executable code. The first table (reset) is executed after reset, and the second table (background) is executed 20 times per second, if enabled. We are only going to use the background table for now:
echo "onevent background" > /dev/ttyACM0
echo "adc 1" > /dev/ttyACM0
echo "print ?" > /dev/ttyACM0
echo "endevent" > /dev/ttyACM0

Now you should be able to start the background loop by entering:
echo "background on" > /dev/ttyACM0
You should see the measurement update in real time in the second terminal window.

µChameleon 2

uchameleon
The uChameleon 2 is a very cool little I/O device with digital and analog inputs and outputs. It is very easy to use because it connects via USB, but is detected as a serial port by the operating system, so no drivers are necessary. uChameleon is controlled by sending messages to this virtual serial port, so you don’t need any specialized interfacing software either!

The documentation on the other hand is not cool. The manual is an ok starting point, but it has some errors, and it does not contain everything one would expect. The manufacturer’s support forums has few posts, and many questions are left unanswered, so i did not even bother registering there. Google was not helpful either, so i had to spend some time reverse engineering it to find out the details.


The newest versions of Ubuntu and Mint do not automatically configure access privileges for the virtual serial port, so you need to do it manually:
sudo chmod 666 /dev/ttyACM0

To be able to read output from the device, you need to open a second terminal and listen with the command:
cat /dev/ttyACM0

At least the ADC ports 1-8 are open collector type, while the manual gave me the impression all ports are common collector. There is also no active current limiting going on, it is just a resistor and the mentioned 20mA is just the resulting current at maximum? operating voltage.

The manual knows it is possible to reset the device by software. Too bad it forgets to tell you the actual command:
echo reset > /dev/ttyACM0

uChameleon remembers defined event handlers across resets. To reset an event handler you must define it as empty.


See how to make your uChameleon into a voltage meter
coming: how to make the uChameleon control a vacuum tube water heater system.

400W tri-spectrum LED module

My previous attempts at LED lighting have been constrained by the availability of affordable components. Now as the price of special emitters have come down i decided to make a LED module using the most optimal wavelengths.

Since i am building this for my LED lighting driver the construction is very similar to my previous modules. It has 2 x 100W actinic emitters and 2x 100W 660nm emitters connected in series for a total of 400W rated power (114V/3.2A=365W actual).



The 8cm 12V PAPST fans and the wires are mounted using heat stabilized zip ties. The three aluminum pieces are attached using M4 screws and the LEDs are attached using M3 screws and thermal adhesive. Both the fans and the LEDs have polarity protection using diodes.


The actinic emitters have a 60:40 ratio of 445nm:cool-white for maximized vegetative growth and the deep 660nm red is optimal for fruit production.

Transport basket for ATV


An old basket will get a new speed filled life on the nose of the ATV 🙂
I had previously used bungee cords to fasten it, but now let’s try something proper.


The basket is bolted to a sheet of plywood. The plywood has four feet which fasten it to the ATV. The feet are made from hard plastic.

The front feet have a pin going through them. It is used to lock the transport basket to the ATV:s cage. The rear feet have a L shape so no pin is needed.

750W Modular LED Light


This is my 750W Modular LED Lighting driver. It is built almost entirely from repurposed parts. Only the LED emitters are brand new.

The front panel has all the necessary connections for the fans and the LED modules. It also contains the Mains switch, a fuse, and a LED that lights up when the DC rail is functional.

It is a very simple and reliable design, built around a beefy 1000KVA transformer. This makes it possible to add modules up to a total of 900W if so desired. An oversized bridge rectifier and capacitor powers the DC rail. It has a total of three output lines for powering the LED modules. The lines are linearly regulated using the LM350k, transistors, resistors and diodes. Each line is designed to work with three EPISTAR (or similar) LED chips connected in series.

Module 1 (1.5-1.8A)
1x 50W cool white
1x 50W actinic (15K + 455nm)
1x 50W warm white

Module 2 (3.0-3.2A)
2x 100W cool white
1x 100W warm white

Module 3 (3.0-3.5A)
1x 100W 10K
1x 100W 20K
1x 100W 30K


The 50W emitters connected in series. All high powered LEDs are actually built using several smaller LEDs integrated into the chip. This makes it possible to have two different wavelengths in one chip like the actinic LED.


Module 2 & Module 1 nursing some Naga Morich, Bolivian Rainbow, red Fatalii and Aji Cristal chilis.


Module 3, Module 1 and Module 2 in action!


Varikonniemi LED 110W (90V/1.3A) vs. Philips High-intensity Fluorescent PL-L 110W.


The spectral response can be tailored to every situation as needed. Normal white LEDs are actually ~455nm (violet) diodes with added fluorescent pigments. The amount (and composition?) of the pigments define how warm the color temperature gets.

Different plants prefer different spectral compositions in different stages of life. As a rule of thumb can be said that they like cool white light in the spring (vegetative stage) and warm white light in the fall (fruiting stage).


A: LED protection relay. If the power supply to the fans fail, this prevents the LED modules from burning up.
B: 1000KVA transformer. Pri: 220V, Sec: 86V.
C: 220V Radial fan.
D: Base for the wall mounted PSU.
E: Wall mounted 12V/2A PSU.
F: Regulation module. Line1 1.5A, Line2 3.1A, Line4 3.1A.
G: 10A Bridge rectifier.
H: 250V DC rail capacitor.
I: DC capacitor’s drain circuit (&indicative LED).
J: Coil.

I will update this post with the schematics of the build etc. later.

HASHSTATION ONE

HASHSTATION ONE is the third Bitcoin miner produced by me, and the first dedicated mining unit. It has a server class motherboard with support for up to six pci-e x16 lanes. The hashing is done by four AMD Radeon HD 7950 GPU:s. The processor is an Intel Core i5-3570K and it has 16GB of RAM. A Seasonic X 1250W power supply provides rock-solid line regulation and unmatched reliability.

All components are at stock speed, which means that HASHSTATION ONE is capable of up to 2 Gh/s ! (0.1 BTC/24h with current difficulty)

Using this dedicated miner is very simple: just connect the power cord and turn the miner on. It will automatically connect to the internet via 3G and start mining. Your shares will be paid to your Bitcoin wallet, or alternatively as EUR to your bank account once a month.

HowTo setup your own mining rig:

1: install ubuntu 12.04
2: install latest AMD catalyst driver
3: run 'sudo aticonfig --adapter=all --initial' twice, then reboot
4: install latest cgminer
5: start cgminer, connect to stratum+tcp://mining.eligius.st:3334 and use your bitcoin address as username with any password

2013-8-22
My HASHSTATION ONE was dismantled because of the skyrocketing Bitcoin difficulty. The power supply and two graphics cards were sold, while the rest of the components continue with Litecoin mining. Bitcoin mining is now unprofitable with anything but ASICs.

Liposomal Vitamin C

Vitamin C (L-ascorbic acid) is probably the most important of all vitamins.

I personally think it is somewhat of a miracle drug. The overwhelming majority of species of animals (but not humans or guinea pigs) and plants synthesise their own vitamin C. An adult goat will manufacture more than 13g of vitamin C per day in normal health, and levels manyfold higher when faced with stress.

WHAT YOU NEED:
Ultrasonic cleaner – one suitable for the job should cost no more than 50 euros.
Soy lecithin granules – cheap & easily found.
Vitamin C – l-ascorbic acid (or sodium ascorbate).

DIY:
1) Pour 3 TBsp lecithin into 250ml of water and soak at room temperature for 30 minutes.

2) Blend the soaked lecithin for a few minutes turning it into an emulsion.

3) Dissolve 1 TBsp (about 7 grams) of Vitamin C crystals in 250ml of COOL water. Keep stirring until all the crystals have dissolved.

4.) Slowly pour the dissolved vitamin C into the lecithin emulsion while mixing continuously.

5.) Pour the blended emulsion into the ultrasonic cleaner. Set the timer for 30 minutes and keep stirring every few minutes.

The finished Liposomal Vitamin C should look something like this: