4 in 1 MDRD Table

March 8, 2012 § Leave a comment

In Radiology it’s necessary to check for proper renal function before administering ionidated contrast to a patient. In order to do so one should use the glomerular filtration rate. This value is not easily measured, but luckily nephrologists already came up with a very reasonable approximation: The MDRD formula. In order to use this formula, all you need to know is the patients age [years], serum creatinine level [mg/dl] and – that may seem racist – whether the patient is of african origin (has dark/black skin) or not. The latter is important (say nephrologists) because african people tend to have higher serum creatinine levels.

Anyway… if you have these values you can use your own math skills, or use calculators like mdrd.com. Or you could use my table. There are plenty MDRD tables out there – most available as “gift” from pharma industry guys. The nice feature about my table is that you just need one table for all four combinations of sex and skin color. If you are interested in the math behind it, or in the spreadsheet original – just leave me a comment. Click the link to download the pdf: mdrd-table

MDRD table image


Geiger Counter + Display

January 15, 2012 § 2 Comments

Geiger Board Backside

Backside of Geiger Counter board

I finally managed to hook up a cheap Nokia display to my Geiger counter. I built that Geiger Counter myself @28C3. Kits are still available from MightyOhm – good stuff.

This week I got this nice little display from here (thanks Lenni). It’s easily controlled – there is even an Arduino Tutorial. Interestingly its a graphic display – so there are plenty of logging options – in theory. Because the Geiger Counter runs with a ATtiny2313 – which has 2k of Flash. And most of that Flash is already used by Geiger Counting code. So the Ardunio Tutorials Character Set takes about 350 % of the ATtinys Flash.

I created my own tiny font (5×3 pixels = 15 bit ~ 2 bytes per character). Well – the “M” is not really well depicted in 5×3 pixels – as you can see in the images: first line says: “26 CPM S”. All the serial output code was kicked – and display code fitted in. Luckily there are also plenty of unused pins on the ATtiny. I reused ISP pins and the unused pins – so the display is connected to just Port B which makes things even easier. After some solder work the display was nicely connected.

Geiger counter with display

Geiger counter with working display

The output was buggy first – I finally found out, that the moving average buffer some got corrupted in the upper bytes – reducing it’s size to 30 bytes = 30 seconds resolved that issue.

Code is available at github.


  • Calibrate the thing – hopefully I can convice my medical physicist to help me…
  • Correct for Dead time
  • enable PWM for backlight – in order to dim backlight and safe energy
  • switch/dim backlight via button
  • log max values
  • Graphs!

python-occ packages for Ubuntu

July 29, 2011 § Leave a comment

Because openscadpy is suffering from old libraries, used for rendering and visualization (opencsg and cgal), I decided to give openscadpy a complete rewrite. In Python. Using Opencascade. PythonOCC therefore, because it’s the official python-binding of OpenCascade.
Unfortunately there was no current pythonocc package available for Ubuntu.
It is now.

openscadpy released

July 29, 2011 § Leave a comment

OpenSCAD is a very powerful script based 3d modeling software. It’s used mainly for creating input for the various 3d printers out there. Some examples can be found at Thingyverse.
One of the strange things about it is its strange language. Recursion seems impossible, variables cannot change, but aren’t real consts either. Parts of the syntax is really cumbersome.
So I released openscadpy it’s python embedded in openscad. So Python is the official language of openscadpy, and so all Python extesions are availabe.
Furthermore, instead of
difference(){ sphere(5) cube(3) }
you can just write
sphere(5) – cube(3)

Besides, the syntax tries to stay as close to openscad, as possible.

broken/ fixed extruder

January 10, 2011 § 2 Comments

Because of inproper and to quick assembly I broke my old PTFE Thermal barrier.

It happend when the print head scrubbed over the new printed layer of PLA do to inproper alignement of the print bed vs. axes. You see – lot’s of inproper building. I fixed the extruder yesterday and also fixed the hot end like I should have done in the first place.

After some quick recalibration of the new Z-height I already did a new successful print test. Because I also changed the tiny gear (which’s original quality was very bad) I now have a continuous working extruder with quite better print quality. I think

it’s time to start printing some Hacklab Reprap parts and fine tune the print quality on the way.

27C3: Tim beim Lego-Robo-Sumo

December 31, 2010 § Leave a comment

Tim kam mit zum 4. Tag des 27C3. Statt Elektrobasteleien oder Schlossöffnen hat sich Tim natürlich gleich auf die Lego-Ecke gestürzt und mal eben in Rekordzeit einen Mitstreiter fürs Lego-Robo-Sumo gebaut.

Das Resultat hieß Rumpsplumps, war flink wie ein Wiesel – leider nicht ganz so clever (was aber evtl. durchaus ein Vorteil war) – und hat sich ganz sehr gut geschlagen:

So landete Tim im vorderen Mittelfeld des Turniers. Für’s erste Mal und dafür, dass Tim wohl der jüngste Teilnehmer war, ein hervorragendes Ergebnis!

Zum Schluss gabs noch die “Alle gegen Alle”-Runde. Leider habe ich nur das Video vom ersten Versuch – die ging nach kurzer Zeit nix mehr. Aber beim zweiten Versuch räumte Rumpsplumps zusammen mit [Name vergessen] das Feld ab, sodaß Rumplplumps hier einen halben 1. Platz bekam!

Die Programme wurden, da nur Linux-Rechner vor Ort waren in C geschrieben und mit BrickOS hochgeladen. Angeblich gibts auch Python und andere Sprachports für BrickOS. Ich will mal nachsehen, ob sich das nicht evtl. mit Etoys o.ä. verheiraten läßt…

Max rocks

December 19, 2010 § Leave a comment

Found a video of Max dancing to the tunes of OKA at Toronto Buskerfest 2010: