Welcome to Daniels blog

Select one of the following projects or scroll down to the newest posts.


a raspberry pi home robot

>> visit robert project page

Cobra robot

industry robot projects and restoration

>> see all cobra roboto posts


a holographic desktop assistant

>> visit the holoGaito project page


a GO game playing robot ... using a raspberry pi, opencv and gnugo

>> visit the iGoBot project page

Vacuum Forming: My first experiences with GaitoFace

Yesterday I had my first experiences with vacuum forming. For the project "GaitoFace" I need a head, which can be projected from the inside with a beamer.

The fact that the material has to be smooth and semitransparent doesn't work so well with the 3d printer. But for the necessary form you can use the 3D printer perfectly.

First I created the 3D model in OpenScad:

Since the head should be life-size, the object hardly fits into the installation space of the Ultimaker 2:

Here the foil made of translucent polypropylene is already clamped into the aluminium frame:

The 3D model on the box that is already connected to the vacuum cleaner:

The foil is heated to 170 degrees in the oven and then quickly press the box:

Worked out great - I now have a thin film in the desired shape:

iGoBot - a GO game playing robot ... using a raspberry pi, opencv and gnugo


The primary facts of iGoBot

Design the base and the mechanics

Shortening of the Ikea "Lack" table legs:

Mounting the X and Y axes at the base:

Training the image recognition

IGoBot uses OpenCV and Hair Cascades to detect the Go stones placed on the board.

I had to take several hundred individual photos of black and white Go stones for reference.

Some of the black stone training images:

Some of the white stone training images:

After training, the system reliably detects black and white Go stones.

Here is an example of white stone detection:

The recognition on the Raspberry Pi in Python:

 A first test for the "stones on board" recognition and translation into coordinates:

The stone dispenser

The stone dispenser is driven by a servo. The two primary parts are 3D printed. The CAD files can be found here.

The electronics

The first arrangement of the electronic components

A first, very wild test of the wiring

The illuminated button for interaction with the player

The way iGoBot plays:



Roobert V2 - first impressions

Here are some first impressions of the second version of Roobert - a home robot project.

You can download all CAD files and source code on github.

Head and arms of Roobert V2 assembled:

The new face frame with more sensor spaces:

Backside of the new head:

Side of the new head:

The new arm with 5 servo axis (instead of 3 at Roobert V1):

Building a home robot: Part 7 - the front RGB LED display

(see all parts of "building a home robot")

A Raspberry Pi touchscreen is used to show Rooberts face. So it can´t be used to show status information like battery state or the “feelings” of its python finite state machine.

Fortunately the body front was still missing – so this seemed to be a good place to mount additional optical output.

I tried several small LCD- and OLED Displays, but they didn’t please me.

In the end I used an 8x8 Neopixel array, a 24 Neopixel ring and a 1 Neopixel lighted big button.

In the beginning the 8x8 pixel array was too bright to see the 8x8 pixel as one image. After attaching a 3d printed cover it looked like quadratic pixels.

The python code can read a GIF file and display it on the 8x8 pixel display. When in idle mode, Roobert shows a beating heart GIF.

The outer ring of Neopixels shows the battery state when driving around and the buttons Neopixel glows up when it seems to be a good idea to press it now.

(see all parts of "building a home robot")