NOTE: This is an archive of my old blog. Go to http://gonium.net for my current website.

Sending Faxes from my Router

Posted by md on September 11, 2010

Faxes are an rather old method for communication, but in Germany they have one advantage: as opposed to emails, faxes are legally binding in the same way as letters are. So, from time to time, sending out a fax is useful. In addition, I have a telephone flatrate included in my data plan, so I don’t have to pay the postage for letters any more. The plan: use the USB port on my router to attach a modem and send out faxes using the mgetty package.

For 3 Euro I acquired an old ELSA Microlink 56k USB modem. I did some research, this modem is one of the few ones supported by the Linux usb-cdc kernel drivers. In addition it can be powered from USB only, so I don’t need another power supply. A week after winning an auction on ebay it arrived today.

My router runs OpenWRT. I installed the following packages using the opkg system:

kmod-usb2
kmod-usb-uhci
kmod-usb-net
kmod-usb-core
kmod-usb-acm
mgetty

mgetty contains a program called “sendfax”, which can be used to dial a number and send the data. The latter needs to be in G3 format. Since I write all my letters using LaTeX, I integrated a “fax” target into my Makefile for LaTeX documents. This target reads the PDF output of LaTeX and converts it to G3 using Ghostscript. The essential command is:

gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=dfaxhigh -sOutputFile=fax.g3.%d -q main.pdf

This creates a bunch of fax.g3.* files, one for each page within the PDF file. Then, I simply copy these files to my router and issue the sendfax command, for example:

sendfax #fax number# fax.g3.1 fax.g3.2

The command dials the fax number and sends the specified g3 files:

root@nibbler:~# sendfax 032121xyzxyz fax.g3.1 fax.g3.2
Trying fax device '/dev/ttyACM0'... OK.
Dialing 032121xyzxyz... OK.
sending 'fax.g3.1'...
sending 'fax.g3.2'...

If an error occurs, the command will fail and tell you about it. The mgetty package also contains various scripts for building a fax spooler, but for my personal usage, I will stick to raw sendfax. Please note that it is also possible to receive faxes, but I did not install these components so far.

No more postage for me. Yay!

Picture: CC-BY-SA-NC vtengr4047, thanks!

Meine Daten sind… wo? 1

Posted by md on October 25, 2009

datacenter

Vor gut einem Monat schrieb ich meine TK-Provider an und verlangte Auskunft über die Daten, welche die Unternehmen über mich speichern. Insbesondere war ich ja gespannt, ob die Provider mir die Daten aus der Vorratsdatenspeicherung zugänglich machen. Je nach Lesart des §19 des Bundesdatenschutzgesetzes könnte ich einen Anspruch darauf haben, auch diese Daten übermittelt zu bekommen. Wobei ich mir da allerdings nicht ganz sicher bin, denn:

(4) Die Auskunftserteilung unterbleibt, soweit
1. die Auskunft die ordnungsgemäße Erfüllung der in der Zuständigkeit der verantwortlichen Stelle liegenden Aufgaben gefährden würde,
2. die Auskunft die öffentliche Sicherheit oder Ordnung gefährden oder sonst dem Wohle des Bundes oder eines Landes Nachteile bereiten würde oder
3. die Daten oder die Tatsache ihrer Speicherung nach einer Rechtsvorschrift oder ihrem Wesen nach, insbesondere wegen der überwiegenden berechtigten Interessen eines Dritten, geheim gehalten werden müssen
und deswegen das Interesse des Betroffenen an der Auskunftserteilung zurücktreten muss.

Ich könnte mir vorstellen, dass man mir den Zugang zu diesen Daten unter Berufung auf den Punkt 3. verweigert. Aber nicht so schnell – was ist denn aus meinen Anfragen geworden?

  1. Die Blau Mobilfunk GmbH hat mein Schreiben einfach ignoriert. Ich habe einen Monat später immer noch keinerlei Antwort erhalten. Schlimmer noch, meine Aufforderung, mir keine Werbung mehr zu schicken, wurde ignoriert. Ich schicke morgen noch einmal ein Schreiben hin. Sollte auch dieses ignoriert werden, eskaliere ich das zum Hamburger Datenschutzbeauftragen.
  2. Kabel Deutschland hat innerhalb von fünf Tagen reagiert. Da scheint eine entsprechende Softwareinfrastruktur vorhanden zu sein – die Antwort ist ein Formschreiben, das leider nicht alle meine Fragen behandelt. Insbesondere an wen die Daten weitergegeben wurden und meine Frage nach den Daten aus der Vorratsdatenspeicherung wurden ignoriert. Auch hier hake ich nach.

Alles in allem also eine zwiespältige Erfahrung. Stay tuned.

Photo Credit: Marcin Wichary, “Data processing center, pt. 5″, CC-BY license. Thanks Marcin!

DCF77 Radio Receiver – Filter Signals

Posted by md on September 16, 2009

Broadcast Tower

I live close to the DCF77 radio transmitter, so my signal was always pretty strong and clear. This is of course not the case for everybody :-) Gwen Roelants did run into problems. He writes:

Although your code works (thanks for that!) it looked like it was very sensitive to how the antenna was positioned.
I found that I did receive a signal every second, but that for the longer signals, I sometimes got a short flash interrupting it, causing the library to add 2 seconds instead of one. Since I got such a flash in almost every minute it could take a very long time before a proper sync was found, and because 2 seconds were counted the time would also drift during the time no new signal could be decoded.
I found a rather simple fix for your code that greatly improved the reliability and time to find a correct signal.

I don’t have an Arduino around so I did not test it, but the proposed changes seem to be reasonable. You can find the changes in the Arduino forums. Thanks, Gwen!

The photo was CCed on flickr by Nathan Gibbs.