Howto listen mp3 in the bathroom ?

I was looking for a simple way to listen some good music while I’m not in my living room (hum, I’m mean in the bathroom). There is a lot of small MP3 players right now, the only issue is that most of them cost a lot of money if you want to put a great amount of mp3 on..

Another way, perhaps look at wifi powered mp3 player like the one made by Roku. But you know, this cost a little money (around 200$), just a bit too much for the bathroom ;)

So, I decided to look at FM transmitters, but I read on most websites that they don’t perform really well. Ok, let’s go for a DIY way, after a little search on eBay, I found a small (really small) FM transmitter pair for 15$ from Sure Electronics.

http://jkx.larsen-b.com/photos/Electronic/DSC02440.sized.jpg

Hum, let’s give it a try:

  • plug a 12v PSU
  • solder a long (70cm) wire antenna
  • solder a stereo jack (and plug it to the soundcard output)
http://jkx.larsen-b.com/photos/Electronic/DSC02444.sized.jpg

And this little stuff, is really working great !! I haven’t test the range right now, I have a clear listen all around my home.

/Enjoy Neighborhood

Howto to spam-protect your python-based blog with bayesian filter.

As severall people, I run into issue with some spammer using my comment system to spam, and post backlinks. (Even using some funny stuffs)

I ‘m already using a good email spam filter: SpamBayes, so I decided to test bayesian filtering for the spam on this blog too.

I decided to give Reverend a try:

from reverend.thomas import Bayes

SPAM_DB='spam.bayes'
guesser = Bayes()

# load the spam DB
try:
    guesser.load(SPAM_DB)
except IOError:
    print "Creating a new spam filter database"
    guesser.save(SPAM_DB)

def train_spam(text):
    guesser.train('spam',text)
    guesser.save(SPAM_DB)

def train_ham(text):
    guesser.train('ham',text)
    guesser.save(SPAM_DB)

# try to guess the spam / ham ratio of a text
def guess(text):
    spam = 0
    ham = 0
    value = guesser.guess(text)
    for o in value:
        if o[0] == 'ham': ham = o[1]
        if o[0] == 'spam': spam = o[1]
    return (ham,spam)

Small, and really simple module no ? The next step, simply add a ‘spam’ and ‘ham’ attributes on your comment post. And add two methods to train the comment as a spam or a ham.. And of course, only display comments which have a good ratio ( >1) ham/spam. This took me about 1 hour to implement…

After a week, of train, this is working very fine, not a single false positive, and it filter every spam since the first trains. As I get around 20 spams post per day, this is quite a good news ;)

Enjoy Bayesian ?

Howto transform a NetGear WG311 into a Atheros Mini-PCI wireless card

I was looking for a atheros mini-pci for a while. I want to remove the broadcom from my laptop. You can find some mini-pci wireless card in special shop, but they’re a little pricey.

A week ago, a friend give me a WG311 (FS version I think). After 1 min, I decide to remove the metal stuff of this PCI card. And, I discover this:

http://jkx.larsen-b.com/photos/Electronic/DSC02437.sized.jpg

This looks like a Atheros mini-pci no ? Ok, it’s time to unsolder no ?

http://jkx.larsen-b.com/photos/Electronic/DSC02438.sized.jpg

Take 2 seconds, a good iron and that’s it. You have now, a nice Atheros mini-pci.

http://jkx.larsen-b.com/photos/Electronic/DSC02439.sized.jpg

The only issue: This card has only one antenna connector, but this don’t really matter in fact, I think.

Bye ..

Firefox 2.0 on Debian

As everybody knows the mozilla team just released the latest version of Firefox (ver: 2.0). This will take a little time until, it will fall in the Debian. But you can find an optimized build for here called Swiftfox in debian package. So let’s go ;)

And last, but not least the optimized version, go quite really fast ;)

Enjoy

IV-18 VFD vacuum Russian Clock video (part 3)

Here a little video of my clock. In fact, I decided to replace the video on dailymotion ( it offers better quality than youtube)

IV-18 VFD vacuum Russian Clock (part 2)

In the previous article, I have study the way to power this large VFD, now we gonna take a look closer at the logic itself. We need to drive a lot of bits (8+9) at ~40v. After a little googling, I discover that Allegro still sell some VFD drivers, but they are really hard to buy, and only provide a small amout of outputs (in DIP package).

Ok .. so I decided to use a Maxim VFD driver: the MAX6921:

  • 20 outputs
  • 4 wire serial-interface
  • supply voltage: 8v / 76v
  • 40mA output

The main issue is that it only exist in a SO package, so I need to use a little adapter to use MAX6921 on a veroboard .. (I bought this at my local store, but they cost twice the price of the MAX)

The next step, is the clock itself. For my nixie clock, I tested several stuff like 50hz (mainlines) sync, or external oscillator but this isn’t accurate enought. This time, I decided to use a plain old DS32kHz crystal oscillator. I’m pretty sure this won’t loose a second in a week ;)

To finish the clock, I need a micro-controller, as I need a really little amout of IO (2 for buttons, 4 for the VFD driver, and 1 for the oscillator), I decided a ATtiny2313 could do the job perfectly and give me the enought room for other stuff (like a LDR for automatic dimming)

So, here the final schematic:

http://jkx.larsen-b.com/photos/VFDProjects/iv_18_u.sized.png

The full schematic

It’s the first time I used the ATtiny2313, but AVR-GCC is a great tools so.. To program this little stuff, I used the in-circuit programming, check out tuxgraphics doc for more infos about the whole stuff.

That’s fine, but does it look great ? ;)

Hum, yeah ! ;)

Here the (quite) finished product

http://jkx.larsen-b.com/photos/VFDProjects/dsc02406.sized.jpg

And if you look closer at the VFD:

http://jkx.larsen-b.com/photos/VFDProjects/DSC02324.sized.jpg
And the finished product :

Download

You will find a complete archive file here, it contains:

  • All the sources need to program the ATtiny
  • All the schematics to build you own ;)

/Enjoy

IV-18 VFD vacuum Russian Clock (part 1)

After my nixie clock, I decided to build a new one based on a old VFD vacuum tube. In fact, the brother of a friend (which live in Ukrainia) give me a bag of tubes. Beside I already have a little set of this kind, I discover the IV-18. This one, is really big, and perfect for a clock.

Here a little pic of this big guy:

http://jkx.larsen-b.com/photos/VFDProjects/DSC02312.sized.jpg

As you can see this is quite large, and really nice looking. I spent a little time to figure out, how to make it working (reading russian isn’t really easy). After sending a mail to the NeonNixie group, Chris help me to fix my issue.

So here the IV-18 pinouts:

http://jkx.larsen-b.com/photos/VFDProjects/iv_18_pinouts.png

And the values:

  • power supply for a digit : 20v-30v (if not muxed)
  • power supply in muxed (for the 9 digit): 50v-70v
  • the filament: 4.3v-5v at 100mA

The first step was to build the PSU

Power Supply

I want to build a small clock which feet in a small box without the use of a wallmart (external) transformer. So I went to my junk box, and found a small 2x6v – 350mA transformer. Hum, after a little test, I found that using this with a voltage doubler, I can get around 40v. Beside I should use 50v in muxed, I discover that 40v is far enought, and It will save the VFD life. (even if this kind of VFD should live at least 10 years without issue)

That fine.. but I need some 5v too. My first thought was to simply plug a 7805 in the middle of the voltage doubler… That works fine, except the 7805 is really hot, and need a large heatsink. So I decided to use a switching PSU based on a LM2575.

Here the final power supply. (as you can see, I added a diode the filament PSU to avoid it to glow too much)

http://jkx.larsen-b.com/photos/VFDProjects/iv_18_psu.sized.png

Here’s a pic:

http://jkx.larsen-b.com/photos/VFDProjects/DSC02402.sized.jpg

You can see

  • the transformer
  • the two caps and diodes from the doubler
  • the LM2575 and its parts
  • the ATtiny2313 (micro-controller used to do the logic)
  • the DS32kHz (32.768kHz Temperature-Compensated Crystal Oscillator)
  • and the little plug I used to do the in-circuit programming.

Warning don’t miss the next post !! (more pictures)

Check out the next article for the finished product :)

How to spam a blog with Plone for Free :(

Since a while I have a lot of spam comments on this blog. This method is a bit funny this time. A spammer (a guy or a bot) create a lot of account on Plone websites. And in his personnal page (for this account) he put a redirect to a viagra vendor..

Little example of link:

Update: Hum a little variant now, I get the same w/ bloglines ..

http://www.kaotonik.net/zope/thk/portal_memberdata/portraits/mv#viagra

http://www.bloglines.com/blog/harrison

This is a kind of free hosting ;) So the next stuff is to post a link on blogs to this page. Now why are he doing this kind of hack ? I guess this avoid to be blacklisted by some antispam rules on certain blog software and allow to play with the Google Rank …

Buy on eBay ? (Led and LC Meter)

Ok, like a lot of people in the DIY world, I used to look on eBay . Today I bought some really nice high power led

http://www.sure-electronics.net/englishsite/led/full70.jpg

I hope I will have better success than my previous buy. In fact, I bought a LC Meter from PalmElectronics on their eBay Webstore. Fine .. except that 2 days after eBay delete their account, because of fraud. And guess what, I never receive a mail, or anything. Of course they already have my money :(

After sending a mail to the eBay, the answer is really strange.. you have to wait (60 days) to open a action through PayPal.. Ok fine.

Moral: Never buy stuff from some untrusted seller.. to avoid to get it in ass :(

Update: I received all my ebay stuffs.. even PalmElectronics send my LC-Meter that pretty kool no ;) I can now start to build my MoodLamp ;)

Howto change the sound in a video (divx)

This afternoon, I compiled some video with Kino. This stuff works quite good. The main issue I had is that I want to have a nice music in background. I spend a little time, with transcode but I soon figured that FFmpeg can do that easily.

ffmpeg -i my_music.mp3 -i in_video.avi -vcodec copy  ouput.avi

You can ever rework on the video after w/ Kino to produce a fade out.

Enjoy video editing on Linux :)