Posts
2024-03-30-Sa | Repairing a Document Shredder
Repair
Motor shaft coupling and cordless drill power for the Olympia PS 16 document shredder

After just two days and, well, approx. 1500 shredded pages, my inexpensive Olympia PS 16 document shredder broke down. I've opened it up, found the issue and replaced the motor and broken gearbox with a cordless drill. It's a simple hack that will work on most of these shredders and save the machines from landfill. Along the way I've taken the opportunity to try out options for connecting motors to axles.

Read More >>

2024-03-24-So | SSH Botnet Honeypot - Pt.4 - Improving the Honeypot
Security
Improving the Honeypot by patching the source code of the OpenSSH server

With the honeypot set up we can see the successful login attempts, but not much is happening appart from strange SSH-Keys being added. This is likely due to the honeypot being detected as such by the malware. The honeypot is not covert enough and is lacking features to log the passwords and commands that were attemped. In the following we'll enhance it.

Read More >>

2024-03-24-So | SSH Botnet Honeypot - Pt.3 - Analysis
Security
Analysing the results from the Honeypot

Let's see what the cat dragged in. With the Honeypot Qemu machine working we can analyse the logs.

Read More >>

2024-03-24-So | SSH Botnet Honeypot - Pt.2 - Setting up a Honeypot
Security
Setting up a Qemu honeypot machine

After detecting failed login attempts at my SSH server let's setup a fake SSH server (a honeypot) and see what these bot are upto.

Read More >>

2024-03-24-So | SSH Botnet Honeypot - Pt.1 - Brute-Force Attacks
Security
There have been a number of failed login attempts at my SSH server

My SSH-Server has been receiving a lot of failed login attempts. Let's see where they come from and what traces the log files contain.

Read More >>

2024-03-16-Sa | Zephyr RTOS - Pt.2 - Conan
Programming
Packaging with the Conan Package Manager

To speed up future development we can adapt the build process and introduce a package manager.

Read More >>

2024-03-10-So | Zephyr RTOS - Pt.1 - Esp32-Cam
Programming
Building Zephyr for the Esp32-Cam

The Esp32-Cam board is very cheap board with a dual-core ARM chip that is officially supported by the Zephyr Project. We'll flash and test it with the Arduino code provided with the Esp32-Cam SDK and then setup and build a flash image with Zephyr.

Read More >>

2024-03-02-Sa | Fixing an Auto-Feed Scanner
Repair
Fujitsu fi-5110c

My Fujitsu fi-5110c auto-feed scanner broke down due to age-old feed rollers that have become sticky. The feed rollers had passed a threshhold of stickiness that prevent papers from passing through the feed mechanics.

Read More >>

2024-02-18-So | Plant Soil Moisture Sensor
Electronics
Building a small IoT device to monitor the soil moisture of our plants

Monitoring Soil Moisture with a Wemos D1 Mini, MCP3008 and cheap soil moisture probe. Some years ago I bought roughly a dozen cheap plant soil moisture probes. In the following I'll describe how to connect them to a Wemos D1 Mini Dev-Board with an mcp3008 Analog-Digital-Conveter and how to send messages with the readings to your Telegram chat client.

Read More >>

2024-02-18-So | 3D Scanners
Technology
Choosing the right depth camera for 3D Scanning

There is a lot to consider when buying a 3D scanner. I'll compare some use-cases, cameras and technologies in order to make the right choice.

Read More >>

2024-02-10-Sa | CustomOS - Pt.9 - Enhancements
Programming
Writing a Custom Operating System (CustomOS)

Some thoughts on enhancements: Better Graphics Drivers, font improvements, running user-space applications.

Read More >>

2024-02-04-So | CustomOS - Pt.8 - Adding a graphical terminal
Programming
Writing a Custom Operating System (CustomOS)

After trying out Rust and some experiments interfacing it with C we can move forward with the implementation of the graphical terminal.

Read More >>

2024-01-28-So | CustomOS - Pt.7 - Interfacing with Rust
Programming
Writing a Custom Operating System (CustomOS)

To further enhance the CustomOS we need a shell. We can write it in the Rust programming language. Here are the first steps to get started.

Read More >>

2024-01-27-Sa | CustomOS - Pt.6 - Adding a graphics
Programming
Writing a Custom Operating System (CustomOS)

Pure text-based input/output gets boring fast. This time around we'll add graphics.

Read More >>

2024-01-14-So | Android Server - Pt.2 - Installing Server Software
Computers
Rooting an Android Device and using it as a low-cost low-power Linux home server

With an Android device running an aftermarket operating system and root capabilities we can configure it as a low-cost low-power Linux home server.

Read More >>

2024-01-13-Sa | Android Server - Pt.1 - Installing Lineage OS and gaining root
Computers
Rooting an Android Device and using it as a low-cost low-power Linux home server

Using a rooted Android device is an option for a small home server that is low-cost, low-power and low-maintainance. For this we need to replace the stock operating system with a new one and gain root access.

Read More >>

2023-11-25-Sa | Decoding Command and Conquer replays
GameMods
Some tricks in dealing with binary formats and decoding Replays from C&C Generals ZH

As with other strategy games that invole building a base, also in C&C Generals ZH, the order the player builds objects is vital to succeed in the game. In order to analyse build sequences we need to parse the replay file format of the game.

Read More >>

2023-11-24-Fr | Useful A.I. Tricks
Technology
Some useful tricks and implementations from field of A.I.

I've been using Stable Diffusion a lot lately for image generation and inspiration. It can generate images by textural description and generates images that have been previously unseen. Naturally you wonder how that works. This has led me down a path of recapitulating tricks from the A.I field that I've come across over the years.

Read More >>

2023-10-22-So | Railroad Signal Tower
Technology
The Railroad Signal Tower at the Nürnberg Train Station

A visit to the Signal Tower at the Nürnberg main train station. The Nürnberg train station, due to its location in Europe, is one of the most frequented train stations. It has three different generations of railroad signalling systems from relay-based electro-mechanical to fully digital. I've collected what I recall from memory with images found on various pages across the internet.

Read More >>

2023-10-15-So | Sims 4 Custom Content Furniture
GameMods
Custom content for the game Sims 4

Using the approach I've described previously to create 3D models we can also create custom content for the game Sims 4

Read More >>

2023-09-23-Sa | 3D Modeling
3DModeling
Creating 3D Meshes, creating textures, applying, viewing and using them

The creation of 3D models purely with Open-Source-Software is challenging. In the following I'll decribe my workflow for creating meshes (in OpenScad), creating textures (in Gimp), applying them (in Blender), viewing them (in Open3D View) and using them in Game Engine (in Ursina)

Read More >>

2023-09-03-So | Positions of Stars
Astronomy
Calculating the position of stars

When looking up at the sky we see that the stars move. If we want to point a telecope at a star we find that it not only moves out of the field of view, but is in a different location every night. How can we calculate where a star is from our observation point?

Read More >>

2023-09-02-Sa | Photovoltaic System
Electronics
Setting up a custom photovoltaic system

The initial setup of my solar power system is about 2 years ago. It’s an island system with a battery that does not feed into the grid and is completly off-grid capabale.

Read More >>

2023-08-16-Mi | CustomOS - Pt.5 - Basic Disk Input/Output
Programming
Writing a Custom Operating System (CustomOS)

Reading and writing to a disk for data persistency is a prerequisite for most applications. I'll be working on basic functionality to store data by reading and writing to disk.

Read More >>

2023-06-18-So | LQFP-48 Soldering
Electronics
On soldering STM32 LQFP-48-chips for BluePill Dev-Boards

BluePill development boards are common in hobbyist projects. Unfortunately online shops have been flooded with cheap knock-offs and it has become increasingly difficult to source genuine parts. I've tried to replace the fake Stm32 chip on a knock-off development board with a genuine part. That ultimately failed, but I'll share my experiences.

Read More >>

2023-06-13-Di | Atari ST Mega Keyboard and Mouse Adapter
RetroComp
Connecting modern peripherals to the Atari ST

The keyboard and mouse of my 30 year old Mega ST seems to still function, but the keyboard has been dropped many times and it’s bound to break. I found a project [1] on the internet to build an adapter in order to connect a modern mouse and keyboard to the Atari and I’m trying to recreate it.

Read More >>

2022-04-26-Di | Git-Annex
Technology
Sychronizing files to/from Android with git-annex

Git-Annex is an extension for Git that I'm testing to synchronize files between my Android Devices and computers.

Read More >>

2022-03-19-Sa | Encrypted Media Streaming with the Chromium web browser
Technology
How encrypted media with DRM is handled in the Chromium web browser

On-demand streaming services use methods to protect their content. These methods are intended to allow subscribers to view, but not download and distribute the content. For this the transfer of media data is encrypted and elaborate key exchange mechanisms are used to transfer the required information for decryption to the player software.

Read More >>

2022-02-17-Do | Atari ST and SD cards for storage
RetroComp
Storage adapters for the Atari ST Mega

There have been some advancements in storage device emulation for vintage Atari computers. We can now build SD-Card adapters that connect to the Atari's ACSI port rather easily.

Read More >>

2022-02-13-Sa | Particle-Simulation for Disease Spread
Programming
Investigating Particle Simulations for Disease Spread with WebAssembly

Particle Simulation is an interesting field with numerous applications. In the following we'll look at a very basic particle simulation that can be used as a code basis for future simulations in other fields such as robot localisation.

Read More >>

2021-12-21-Di | CustomOS - Pt.4 - Adding Interrupts
Programming
Writing a Custom Operating System (CustomOS)

So far we've read the state of the keyboard by actively polling it. A better method of reacting to keyboard events is by using interrupts.

Read More >>

2021-12-16-Do | CustomOS - Pt.3 - Keyboard input with active polling
Programming
Writing a Custom Operating System (CustomOS)

For a Custom OS to be any kind of useful we need some means of interaction with the user. One way to interact with our custom OS is keyboard input. With the ability to print text on screen and get keyboard input from the user we can already build simple dialog systems.

Read More >>

2021-12-15-Mi | CustomOS - Pt.2 - BuildAndBootAKernel
Programming
Writing a Custom Operating System (CustomOS)

Last time around we built the cross-compiler. With it we can now compile the barebones tutorial from the osdev-Forums. We can then boot this custom kernel safely in QEmu, a hypervisor, that emulates a computer CPU.

Read More >>

2021-12-11-Sa | CustomOS - Pt.1 - The Cross-Compiler
Programming
Writing a Custom Operating System (CustomOS)

Inspired by the osdev-forums and the likes of TempleOS, as a challenge and to learn more about modern computer architectures, I'll give writing a tiny custom operating system from scratch a try. I'll be documenting the process in this multi-part series.

Read More >>

2020-08-06-Do | Android App WeightPlot
MobileApp
We've released our App!

In a joint effort and over the course of a year ingofritsch.at and I have built and released a smart phone app.
The QT/QML based native app with a custom chart component runs on Android and iOS, is designed to be minimalistic and is meant for tracking personal weight information on-device without cloud storage for data privacy.



Read More >>

2018-09-05-Mi | Building A Cocktail Machine
Electronics
A quick build of a cocktail machine using aluminium profiles, stepper motors, 3D printer/CNC stepper motor controls and an android tablet

Read More >>

2018-07-12-Do | CNC Milling with the ShapeOko 2
Electronics
Building a CNC milling machine, starting from scratch and then moving to a mechanics kit

CNC (=computerized numerical control) milling is the process of removing material by using a rotary cutter that is positioned by a computer. I have been constructing my own CNC milling machines and after many attemps with various levels of success, I switched to a commercial mechanics kit that I then modified for my purposes.

Read More >>

2018-07-09-Mo | Modifying the DirtDevil Spider M607
Electronics
NodeMCU-controlled DirtDevil Spider M607 with a 4-cell Li-Ion battery pack

The DirtDevil Spider M607 is a cheap entry-level vacuum robot. It does not feature optical mapping, but rather randomly moves around until it hits an obstacle and then turns to avoid it. This works reasonably well, but I purchased the robot in order to modify it.

Read More >>

2018-06-29-Fr | Wireless WiFi Speaker with Linux and PulseAudio on Raspberry Pi
Electronics
Building a Wireless WiFi speaker that can receive sound from your Linux Desktop with a single board computer, WiFi dongle and USB sound card

A small speaker and a small single board computer with some Linux software is all that is required to build a WiFi speaker. With it you will be able to listen to music within WiFi range and optionally control music with your smartphone.

Read More >>

2018-03-01-Do | Running the Atari ST Mega from the 1980s early 90s in 2017
RetroComp
Bringing the Atari ST Mega to 2017

The Atari ST Mega home computer was produced from 1985 to 1994. It uses the Motorola 68k line of chips as its main processor with a 16 bit data bus. The Atari ST Mega that I have came with an Atari Megafile hard disk and Atari SM124 monochrome monitor. In the following I describe the modifications I have made to make the computer useable in the 21st century.

Read More >>

2017-06-15-Do | Automatic Watering System for my Balcony
HomeImpr
An automatic watering system for my balcony

I’ve been growing herbs on my balcony in the summer. The heat causes the water to vaporate quickly meaning I have to water the growing beds every day. If I’d forget or when I’m on a business trip, the herbs would dry up. So the only solution is automatic watering.

Read More >>

2016-04-14-Do | Pcb Etching
Electronics
Experiences with PCB etching and why I avoid it whenever possible

PCB etching is the process of making your own circuit boards. There are multiple ways of achieving this. This is a description of my experiences and why I now avoid PCB etching, whenever possible.

Read More >>

2016-03-27-So | DigiSparkUSB
Electronics
Setting up the DigiSpark for easy Arduino Development

The DigiStump DigiSpark is an excellent microcontroller development board. The price of only 1-2 Euro is so low you can drop it in your designs and leave it there. […] This Guide will show you how to setup the Arduino IDE, configure it for use with the DigiSpark Board, set up the drivers, connect it and compile and program the „Echo“ Example, which enables sending data to and from the DigiSpark via USB using either Python or C++.

Read More >>

2015-02-23-Fr | Astronomy M42
Astronomy
An image of the Orion Nebula (M42) taken at the Dr. Remeis Observatory, Bamberg

The image was taken by my group during the practical exercises for the astrophysics course.

Read More >>

2016-02-16-Di | AutomatedStoveControl
Automated Stove Control
(Course work submission for the 2016 'Do it yourself' (DIY) lecture at the University of Erlangen-Nürnberg)

Cooking can be a real hassle at times. Especially, when one has a manually controlled stove. [..] Therefore, we propose the next logical step: bring the revolution to the kitchen! We start by automating the stove.

Read More >>

2015-04-06-Mo | Servo PCA9685 PWM FT232RL I2C Python Flask
Controlling servo motors using the PCA9685 PWM driver via I2C from a Python Flask Webinterface using an FTDI FT232RL in BitBang-Mode
(An easy method for controlling servo motors from your computer's USB port)

I've adapted the I2C script for reading the compass module, so that I can now use it to talk to a PCA9685 PWM driver IC. This enables me to control pulse width modulated servo motors.

Read More >>

2015-04-02-Do | HMC5883 Compass FT232RL I2C Python
Reading the HMC5883 compass module via I2C from Python using an FTDI FT232RL in BitBang-Mode
(A method for connecting a compass module to a computer via USB using only an FTDI chip, 4 wires, 2 resistors and a single Python script)

I've written code to read out the HMC5883 compass module via I2C using an FTDI FT232RL in BitBang-Mode.

Read More >>

2015-03-20-Fr | OwiDoorbell
1-Wire Doorbell and Internet

My doorbell doesn't work properly. So I set out to fix it. But then I realized I couldn't do so easily. The reason is a faulty switch outside of my appartment. I can't repair it, because there is mains current running through another switch next to it. I can't shut that off, because the fuse is located somewhere in the building and I don't know where. But I had to do something. After all I had set out to 'fix' something. So I decided to connect my doorbell to the internet.

Read More >>

2014-11-07-Fr | GasMeterWifi
Gas usage monitoring with an ESP8266

Got my hands on an ESP8266 WiFi-Module. These modules cost next to nothing (around 3 Eur from Chinese suppliers on eBay, and about 8 Eur from a German supplier, if you need them fast). I want to use them in order to monitor the gas usage for heating and water in my apartment.

Read More >>

2015-11-13-Fr | WifiCar
A WiFi controlled car with camera

I've finally gotten around to completing my WiFi controlled car. This project has been lying around for ages. I recently bought a hand-held circular saw and with it I can cut aluminum rods. That got me the motivation to finish the cars chassis.
The car connects to the local area network via WiFi. It runs two web servers, one for controlling the motors and one for viewing the web cam. After turning it on all I need to do is open the two webpages in my browser and I can control the car and see where it's going

Read More >>

2014-11-24-Mo | Astronomy
Astronomy: One of the things I was up to in 2010-13

Some time ago I had an interest in astronomy. I made an effort to take photos of some of the objects in the sky I found particularly interesting. We started with the Moon, then Saturn and Jupiter with some of its Moons. Then we tried photographing galaxies and nebula - some of the Messier objects - but this is where we reached the limitations of our set up.

Read More >>