Go to content Go to menu

Today’s BLOG entry is about a simple hack that can make your life easier when working with serial USB devices under Linux (Ubuntu/Debian). Every time a device is attached, an automatically generated device name is assigned to it by the OS (e.g. /dev/ttyUSB1). When you work a lot with embedded devices, using their serial USB devices for developing and testing, it could be a real pain to always change their names in a terminal program or some config files. Especially when using multiple devices concurrent, connecting and disconnecting them in different order, creates a device name lottery and very quickly you no longer know which device is connected to which device name.

[Read more…]

Resolving product shortcomings

Tuesday, November 10, 2020

power-guard-safe.jpg Recently I bought a document safe. This was necessary because some types of documents need to be kept safe even during still ongoing COVID-19 home office. I choose a model with a security grade necessary to legally comply required by the type of documents I work with. And I choose one with a digital keypad so I don’t have to have a physical key but a numeric code. From the time it was ordered, it took about a week to be delivered and some effort (weighs around 50kg) to get it into place. After I put in a fresh 9V battery, set up a security code, and put in some documents, I was done - I thought ….

[Read more…]

HDD Rescue Adventures

Friday, September 11, 2020

hdd-rescue-s.jpg As everybody knows “Make Backups (more than one!!) of your data!!” nowadays is as important as gaining enough sleep or eating healthy. But sometimes you are completely unprepared. This is exactly what happened to me a few days ago. A hard disk with very important source code for a project I’m currently working on suddenly stops working and the last backup was … some weeks ago.

So what to do? Besides calling me self a jackass I had to find a way to get back the data. After researching prices of some professional data rescue companies I came to the conclusion that trying to recover the data myself (and rewriting the lost source code in case my rescue attempt fails) would be cheaper and faster (project deadline is approaching with rapid steps).

 
 
 
 
 
 

[Read more…]

Recently, for a project, I needed to work with ns2 (1), (2). Adding own protocols to ns2 requires to compile it from the sources instead of just installing it via apt-get.

It has a lot of dependencies (e.g. tcl/tk) which where already installed on my system. According to here there is a all-in-one package of ns2 including ALL its dependencies. As my machine is always near to 100% full and I already have installed its dependencies for other projects I just downloaded ns2 source without dependencies. Downloading the sources and the well known stanza ‘configure / make / make install’ should be enough - I though.

But alas - configure didn’t find required dependencies. OK - so fix some paths to keep configure happy. But now lots of compile time errors occurred. I’m running on Ubuntu Linux 16.04 LTS 64bit and a lot of include files and libraries are not there where ns2’s configure script expects it to find. It also seems that ns2’s dependencies installed via apt-get have been compiled with different compile time options as ns2 expects. Google did not help much and so I decided to fix things so that I can successfully compile ns2 an start hacking new protocols.

This post shows the steps and also provides the patches.

Step 1: Install prerequisites (from package repository)

sudo apt-get install \
   tcl8.6 libtcl8.6 tcl8.6-dev \
   tk8.6 tk8.6-dev \
   libotcl1 libotcl1-dev \
   tclcl libtclcl1 tclcl-dev

Step 2: Get the sources (ns2 without dependencies)

wget \
    https://sourceforge.net/projects/nsnam/files/ns-2/2.35/ns-src-2.35.tar.gz/download \
    -O ./ns-2.35.tgz
tar xvf ./ns-2.35.tgz

Step 3: Apply the patches

The patches can be downloaded here ns-2.35-ubuntu-16.04-64bit.patch.

patch \
    -d ./ns-2.35 \
    -p2 \
    < ./ns-2.35-ubuntu-16.04-64bit.patch

Step 4: configure / make / make install

cd ./ns-2.35
./configure \
    --with-tcl-ver=8.6 \
    --with-tk-ver=8.6
make

Now you should have a ns binary in ns2 source folder. To ensure that ns2 compiled correctly, run validate to perform tests (warning: this takes long)

Step 5: Start hacking

For more infos about ns2 and ns2 development see the following links

This steps were tested with Ubuntu 16.04 LTS 64bit and it might be that they wont work with other versions or distributions. But they may help to fix problems there too.

Walkera + Arduino = Walkino

Thursday, December 22, 2016

walkino-1.png During the last few blog posts about hacking Walkera quadcopter receivers I sought an easy way of programming them. Currently the easiest way of programming a microcontroller is by using the Arduino IDE. In this post I describe the integration of Walkera RC receiver board into the Arduino IDE.

This will also be the last post of this series as I have achieved (almost) all goals. Future ideas meight be to port the MultiWii firmware to Walkera boards or to use the boards for something completely different. In 2016 we had the idea to use a QR-Ladybird RX2634H board as a secure fitness tracker and made a submission to austrian support program NetIdee. See a short video about it on youtube (in german). Unfortunately it was rejected.

 
 
[Read more…]