C'est la Migration...

Ils ne sont pas partis sans moi, non...

Mais je viens de déplacer les blogs sur un nouveau serveur. Tout devrait être "comme avant" (c'était mieux avant)°, mais n'hésitez pas à signaler tout bug/problème qui peut être lié à cette opération.

Merci pour votre compréhension,

Take care

I have moved the blogs from the old server to this new one. Everything should be fine (it should even be better!), but if you find a bug, please tell me in the comments so I can fix it.


Take care

Wiki wiki wiki

I have some projects in progress, and I decided I needed a clean way to store details about them, about interesting stuff (whatever the topic), and also, that friend could contribute when they work on the same thing. So I've set up my own Wiki. Right now, it's kinda empty, but it will grow... !

So, there might be less projects presented here, but they'll be more detailled there, and they'll be updated too (while it's not really the case here...). As a way to interact, I've also set up a bug tracker, which can be used to report bug, but also to make suggestions. Each (interesting)° project on the wiki will have its peer on the bug-tracker...

I might also make a post here from time to time, if the project is reaaaaalllly cooool or interesting...

(As a friend always says) Take care ;)


Here's one of my latest litlle projects... It started from... well I had 3W RGB Leds (from DX.com), some TLC5940 and plenty of little MSP430. I thought I'd do something cool with all that stuff, and I remembered of a really cool project featured on HackADay: ACRIS. I didn't want to make something as complicated, but the main idea is the same.

I also bought some MAX485, and one USB > RS485 dongle, so the boards can be chained on long lengths without much problems. Aaaaannnnd here it is :

Well, not much to say about it. There's a python Script on the computer that manages the colors. The board hosts one MSP430G2231 (or MSP430G2211) and one TLC5940 which outputs are configured so you can draw 100 mA on 5 outputs.

Since the µC is cheap and small, the TLC5940 management is bit-banged, and the TImerA is used for the Serial communication. I hoped I'd be able to use the Timer to drive the TLC5940 but my first tries were unsuccessfull and bitbanging works quite well =)

Serial communication is Half-Duplex (using a software UART, it's easier this way). It's not a real problem since the board acts as a slave and the RS485 communication is half-duplex with one MAX485. I tried t o keep most of the processing load on the computer so the communication protocol is pretty rough... See main.h for more infos, and open the source of the Python file to find out how to use it.



It's not perfect but it's a cool quick project (from idea to the populated board, it took me one afternoon, and two days to complete the code)  and I finally used some of those tiny MSP430s I had laying around. They're really neat, even if the ones I have are quite limited, I think the bigger ones can be really cool =)

Code, Schematics, ... can be found here: SVN TLCDrive485

Multiple NICs with only one real NIC...


I've been searching for this all night long, so here it is.

I wanted to be able to have two network interfaces on my Debian Server. One is real, the actual NIC, the other has to be virtual then. An alias would not be suitable since I need to be able to use two gateways, and specify which eth* to use in a script.

My network configuration is a little bit complex, since I have two Internet access (two ADSL modems) on the same subnet, and I want to be able to cross-check the two Internet connexions (link1 tests link2 accessiblity, and link2 tests link1)

In the process, I managed to make my server unavailable... so don't do this when using an SSH session... don't mess with the network settings...

Well, the solution:

ip link add link eth0 address 00:11:22:33:44:55 eth1 type macvlan

Or in the /etc/network/interfaces file:

# The loopback network interface
auto lo eth0 eth1
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
#iface eth0 inet dhcp
iface eth0 inet static

iface eth1 inet static
        pre-up ip link add link eth0 address 00:11:22:33:44:55 eth1 type macvlan
        post-down ip link del eth1


It seems I'm getting DUP! answers when I ping any IP on the network, so that's still an issue to be dealt with, but I'm happy to have found this "trick"...

Nevermind, this morning, I reconnected to the server and installed this "cloning", I don't get any dup... So it should come from my VBox debian.

Cia ;)


EDIT: Just occured to me, it's easier to force a route than setting all this stuff since it only concerns one external IP... Neverming, it was kinda fun ^^

Attiny85 - VUSB ... TRIACs...


Today I wanted to try etching PCBs with hydrogen peroxide and chloridric acid, both of which can be found in local stores...


I had a small board to make, to be able to control the power of my Internet Boxes to reset them when they hang (which happens when I need them not to), so I printed it, and tried to etch it.

The proportions I used were: 50% water, 25% HCl, 25% H2O2. Poured in this order in the container. HANDLE WITH CARE if you cant to try that.


I have to say I am impressed by the result: Fast, precise, clean. Since the board came out clean, I populated and programmed it.

I used this opportunity to try Micronucleus (a small USB bootloader for Attiny85), and after a little work to have it compile, it just work, that's very cool.


Here's the picture of the board:


Picture of the Board

Since I already had the code on hand, I tried to flash it (using the bootloader), worked first try =D

Left to do: Computer script to ping and reset the board when needed...


If you want the schematics and sourcecode, I can release them, just ask.

Cia ;)

Cross compilation - APC.io

Today's topic is the cross-compilation of a custom application which uses libusb-0.1 and libmicrohttpd for Apricot-r3 running on my APC.io board. I couldn't find any clear explanation on how to do it, so I though I'd write it down after success.

The host running the cross-compiler is my trusty laptop running Archlinux x64 up-to-date.
The method should also be the same with any other lib you may need and should work for the RaspberryPi running Raspbian but I haven't tried it yet.

Lire la suite de Cross compilation - APC.io

Sparkfun BusPirate case

Hi everyone,

As you might have guessed from my last post, I'm into 3D printing theses days. And I didn't know what to print today, so I thought about my old friend, my BusPirate. I have the Sparkfun flavour of the BusPirate (which is v3.5 if I remember well). It is a little bit trimmed on the edges since I had a previous attempt with a case from Thingiverse (but which wasn't for SF Buspirate so it didn't fit in the end :/), but works well.

And I decided I'd make it a nice case, just to protect it when I carry it around. Dimensions are half measured / half guessed since I don't have any calipers on hand, just a regular ruler. The case doesn't need any glue or screw, just press the two parts and it'll stay closed. I did'nt need any fancy stuff like mounting holes so there aren't any. it is also quite smaller than the case you could find on thingiverse (for the Sparkfun BP).

I designed it with Catia V5 (that I have access to from school), so I just upload the STL files. If anyone want the CATParts, just ask, I'll send them to you.

Download Here

The picture is not really good and the surface isn't either (I know I need to reapply kapton tape on the heatbed but tonight I was a bit lazy so it's as it is.)



Slic3r and Locale

After searching for the third time, here's the fix for using Slic3r on a non-english (French in my case) system, and making it work.
The problem lies in the decimal separator, in French it's a comma while in English it's a dot, and Printrun expects dots...

Chmod +w and add at the beginning of the file (on Archlinux) /usr/share/perl5/vendor_perl/Slic3r/GUI.pm
use POSIX qw(locale_h);
setlocale(LC_ALL, "en_US.UTF-8");
Now it should work !

Gotta print now !

page 1 sur 3 suivante »