Kanojo Blog Blog-Blog


Raid system – 8TB home storage, on budget!

With the advent of higher definition Television, growing demand for high quality lossless audio as well as general madness the need for a reliable as well as flexible and large home storage solution grew rapidly for me. Just hammering more disks into your home router / server just won't nail it over the long term. So i've set out to build a cheap (per TB), (hopefully) longlasting as well as reasonably reliable home storage system for the enthusiast (read: "tinkering geek"). This was achieved using a custom made case for the parts as well as a lucky find for the adapter card. Read on for more...


PicPost: Headphones Amplifier

Since a long time i wanted to check out DIY Amplifier design and building (see http://ideas.kanojo.de/ for a rough timeline oO). As a first-tryer i opted for a Headphones amp as a friend is a real HighEnd-Headphones fanatic and well ... it's simpler and cheaper - you don't need large capacitors, big heatsinks, uber-powersupplies ... all nice n tiny.

The Amplifier itself is a TexasInstruments TPA1517NE Class-AB Amplifier that is driven at a voltage of 18V (to be able to supply a reasonable signal for high-impedance (600ohms) headphones. The Schematic is almost the application note except for enlarged output capacitors to lower the cutoff frequency of the output-filter. Both powersupply and amp reside on on PCB.

The casing is made from 15mm Multiplex, routered at the edges. The volume-control knob is also routered from the same 15mm MPX material. The edges are routered along with 45*

Buuut, as this is a picpost, here they come:


New HiFirama, Black Beauty

Yay for another cool HiFi Project - a mini-monitor using the MarkAudio "cheapo Series", CHR-70 which benifits from the design- and production experience MarkAudio has from it's larger brothers but is made with budget considerations in mind - so in short it's a modern, well-designed and manufactured "mid-budget" speaker which performs just great! The cases are Teak-veneered MDF, the design is a GHP ("Geschlossen mit HochPass" -> Closed with HighPass Cap) design from a HiFi-Forum (german board) member which was influenced by the "GHP" concept of a german HiFi-magazine...


Nicely lit DIY Figure-Display-Cabinets

A common problem with most of the figure display case solutions out there is lighting - how do you put enough (and nice) light in your display so the figures look good but the whole place doesn't get filled by bulky bulbs, PSUs, cables and the like.  We like to show a method of building cheap yet good looking lighting for custom glass displays as well as the common and popular IKEA DETOLF using inexpensive led-strips.

Also, as we (and probably many many others) like to use plain glass shelfs (as they're easy to mount and look good) to display figures there is the very common problem of dust and dirty laying down on the figures. The other thing we propose here is a nice method to build sturdy yet good looking glass cover you can simply place on the shelf over the figures (a box with two open sides: backside and bottom).

For building and setup instructions for those two cool concepts, please look inside :).


Backlit Couch/Coffee-Table

Have you ever wanted a cool couch- or coffee-table? Something you're friends will be like "wow", that blends nicely into your existing room and that makes a nice comfy atmosphere?  Too bad something like that isn't available readily made at IKEA or the like ... but hey, we can tinker it together ourselves!

That's what we thought when we started to plan that table. Another nice thing about it: It's extensible, you can always mod in a LED matrix and a matrix-cabinet and start displaying pixel art, a ticker or whatever you feel like ... but first you need the basic hardware, and thats what this post is about!


Free/Open Wireless Sync your iPhone with Linux!

While using 3.x on my iPhone free (as in self-hosted and "free as in free speech") syncing was a bit of tinkering here and there but worked. With iOS 4 Apple introduced a new scheme for the Calendar (which used to be a nicely and sanely formatted sqlite file), so all the sync-tools aren't really working anymore. Iphonesync (required J/B Phones and synced to e.g. Funambol) can still read notes(?) and addresses but can't sync the calendar anymore. So i was looking for another option to sync this thingy - and found one (or two) ...


Deer me, Deer you, Bookstand-Deer!

And off we go for another nice DIY tinkering howto. Again we needed a birthday present for a friend of ours, which is a deliberate Otaku and IRC-Nerd on #satf, rizon. Those folks happen to have a bot that can draw ASCII-Art pictures mainly of deers - that look just like the bookholder deer below.

As you can imagine our friend was flabbergasted (i somehow like that word) to the last. Read on for more details on how to build it!


AmiAmi.com RSS

Maybe some of you like figures (as in figmas, nendos, etc.) and know www.AmiAmi.com - which is a great shop. It just poses one problem - it offers no RSS feed that allows you to stay up to date to whether items get available, get into preorder or are restocked. So you may miss the item you want due to the completely crazy japanese habit of buying everything that was just restocked out in mere hours.

As we have also been disstatisfied with that we wrote a parser for AmiAmi that creates a RSS feed. You may also subscribe it, it's update twice a day at 16:00 and 04:00 Europe/Berlin time every day. You can find it on:


Maybe it'll help you harvesting the Otaku loot you want :P.


Robust HTML Parsing (in Ruby)?

Have you ever wanted to parse information from some rather complex or totally broken (in terms of html standards compliance) website? Maybe you tried fighting that problem with regular expressions or DOM or SAX XML parser. If you did you probably ran into some problems: Maybe there were too many similar matches for your regex as there are repeating similar patterns in the website or your XML parser went crazy with invalid formatted or non-xhtml-compliant content?

I wanted to parse a website that had no RSS feed for changes and create a RSS feed. I first tried around with various of the ideas mentioned above but as the website is kind of "irregular" (every item is a slight bit different) and W3 validator shows over 11k of errors (in 1.1 transitional) i had quite some problems.

Until i found Rubies Hpricot, a HTML parser that lets you realize robust HTML parsing of fucked up formatted and non-standard-compliant content at ease.


The pain of being independent

I've spend a whole lot of the time of the last few days tinkering on various parts of my root server. With the time passing you get used to the comfort of various (web based) tools such as GMail, Google-Calendar, Google Reader, etc. You may notice that you just read the word "Google" quite often, so what pops into your mind? Right, privacy. Google kind of mines quite some of your data. Ever checked the Ads google shows you on various sites (given you don't use a capable Ad Blocker)? Sometimes it gets quite creepy. That data is quite valueable for profiling your behavior, and that profile is (not related to your persona, but in general) sold to marketing monkeys.

So, that's why you might want to rebuild all those Tools you're used to in a trusted environment - your own server. You don't want your mail stored in some possible hostile environment on a untrusted machine that could leak your valuable data. Turns out its not that easy sometimes. I've only worked on getting a capable Web Mailer and Feed Reader to run smoothly. What surprised me here - and why I'm writing about this - is that it was exceptionally hard - or rather time-intensive - for something sounding as easy as this.


I first targeted the Reader, looked around Freshmeat and SourceForge where you expect to find decent free software for that task. I've found quite a few not-so-simple-looking projects, including Tiny Tiny RSS. Turned out TinyTiny RSS is almost there, but needs PostgreSQL. So  i set up PostgreSQL, installed TTRSS and set it up. Imported GoogleReaders OPML, and zup. worked. Problem's all the feeds are in one big Table - resulting in the whole thing beeing painfully slow. So up for 7-8 Hours of harcore Postgres performance tuning, trying to hack memcached into ttrss, etc. Speedup of almost 100%, yet it was not close to beeing usable. Turns out the developer didn't intent the project for archiving articles for having a searchable archive. So up for something different, Gregarius, which the TTRSS dev recommended. This worked quite out of the box, except for 3-4 Hours of tinkering and writing small plugins to get the whole thing to work properly. But it does - and has almost all the feature one expects.

The harder part came now, Webmail. I first tried to hack the roughly-set-up RoundCube that still was on my server. After short testing and many functions that just did not work due to unknown reasons i knew i needed something different - and started toying around with Horde and its webmailer Imp(4) in the Horde Webmail Edition pack. Horde feels somehow "unix style"-ish, like ... building a highly reusable backend, letting other projects include/work ontop of that backend, etc. - but let me say one thing: This beast is so darn hard to set up. I've got it working - more or less - after hours and hours of doc reading, tinkering around with mysql tables and databases and reading Horde source due to its ... slightly lacking ... documentation on some points. Still, it was so unstable and lacked features too. So i finally decided Horde/IMP was a bit too much to go with. After searching around its a lets-get-back-to-Roundcube.


Just that this didn't make things better, well... a bit at least. It takes tinkering, fixing old plugins to work with the current version, finding out why the hell buttons are greyed out that shouldn't be and getting a "well, reset the database (again)" from the developers. All of that fun. As of now i at least managed to get everything except for Filter-Rules and sa-learning ham to work. Phew!

Okay, so why am i writing all this? you may ask yourself. Well, i've gone through some PITA for beeing independent. It really takes some work to get everything to run smoothly if you're used to professional systems that are customly coded (such as the google stuff) and backed by real money its still some hackish tinkering to get the Free Software tools that we're given by the community (which i'm not ranting against by the way, all that code out there is really beautiful in fact) to the same level. I also want to encourage everyone out there not to give away their data but to build something on their own, keeping their data. As computer users used to for a good reason for a long long time.