Game of Life on a Raspberry Pi (and a LED board)… in Haskell


This is a quick post about, re-purposing my Raspberry Pi + Peggy2 art installation, which already re-purposes a 8-9 years old Peggy2 LED board, to play Conway’s Game of Life.

Read more of this post

RC Car Electronics


This, to some extent, is a continuation of this post, where I replaced the motors and some gears to fix one of my son’s RC cars.

I remove the electronics and replace them completely, including the remote for which I now use a freshly made wireless Wii Nunchuck.

The results are far from impressive in terms of manoeuvrability, but it was really fun to build and I think the handling can still be improved by tweaking the mix between the 2 joystick axes.

Read more of this post

Electronic Art


 

I had been wanting to do this for such a long time…

Read more of this post

Wii Motion plus Gyros on RaspberryPi


Here’s a really quick post about the Wii Motion Plus (again !) and how to make it work with the Raspberry Pi…

I’ve connected this nice little device to an Arduino (obviously ! 🙂 ), to a IOIO board, a FEZ Domino and even to an obscure TI Arm board, the LM3S8962 using CooCox… so it was only right that I connect it to my “new” Raspberry Pi board.

Connecting the Wii Motion Plus to the Raspberry Pi board

Connecting the Wii Motion Plus to the Raspberry Pi board

Read more of this post

Electronic Anti-roll system for tractor (or how to connect IOIO to a Basic Atom


“Tractor”, what tractor… ? That’s what you must be wondering right now, as I don’t often blog about tractors… especially full scale agricultural ones…

This is a slightly different post for me, in that it’s about some help I gave to 2 guys in Germany, working on a hydraulic anti-roll system for a tractor.
Wow… I never though I would be working on “revolutionising the agriculture” as they’ve put it… 🙂

Basic Atom Pro M40 - IOIO - and the ICONIA A500 Android tablet

Read more of this post

Android IOIO Wii Motion Plus – Gyroscopes


First of all, the more I work with Android, the more I love it … ! It’s so cool to have both Linux and Java and everything is so open and hackable … !

Wii Motion Plus connected to the IOIO board and then to the Android phone

Read more of this post

Android IOIO Wii Nunchuck


I’ve already written a post about how to connect the Wii Nunchuck to the Lego NXT using LeJOS, and there is also information on my blog about how to do the same thing with an Arduino (though I can’t find it right now, so no easy link…).

It’s only fair that I explore the same thing with an Android phone and the IOIO board.

Read more of this post

WiiMote IR Camera with Lego NXT Brick – LeJOS


This previous post talks about how to connect a IR Camera from a WiiMote to an Arduino.

There’s also this one, talking about how to connect it to the .NET micro framework, FEZ Domino board (which also has hardware details on how to extract the mentionned camera and solder it on its own little board…).

It’s therefore time I wrote a quick post, on how to interface this wonderful camera with a Lego NXT Brick, programmed in Java thanks to LeJOS !

WiiMote IR Camera and Lego NXT - LeJOS

Read more of this post

WiiMote IR Camera with Arduino


This post shows how to extract the IR Camera from the WiiMote and connect it to a .NET micro framework board (FEZ Domino in my case).

The present blog is simply a porting of the C# code to Arduino code, in case anybody is interested…

It’s a very basic file, really showing just the minimum necessary to get it working.


#include <Wire.h>

const byte ADDR_SENSOR = 0xB0 >> 1;
byte buff[2];
byte recvBuff[13];

int x, y, s;

void setup(){
Serial.begin(115200);
Wire.begin();

send(0x30, 0x01 );
send( 0x30, 0x08 );
send( 0x06, 0x90 );
send( 0x08, 0xC0 );
send( 0x1A, 0x40 );
send( 0x33, 0x03 );
send( 0x30, 0x08 );

delay(100);
}

void loop(){
readData();
Serial.print(x); Serial.print(" / "); Serial.print(y); Serial.print(" / "); Serial.println(s);
delay(300);
}

void readData()
{
send( 0x36 );
Wire.requestFrom(ADDR_SENSOR, (byte)13);
for(byte i=0; i<13; i++) recvBuff[i] = Wire.receive();

// have no idea why the 1st BLOB start at 1 not 0....
byte offset = 1;
x = recvBuff[offset];
y = recvBuff[offset + 1];
int extra = recvBuff[offset + 2];
x += (extra & 0x30) << 4;
y += (extra & 0xC0) << 2;
s = (extra & 0x0F);
}

void send(byte val){
Wire.beginTransmission(ADDR_SENSOR);
Wire.send(val);
Wire.endTransmission();
delay(10);
}

void send(byte val1, byte val2){
Wire.beginTransmission(ADDR_SENSOR);
buff[0] = val1; buff[1] = val2;
Wire.send(buff, 2);
Wire.endTransmission();
delay(10);
}

Tiger 1 BB airsoft RC Tank – V2


It’s all about the same project as here, BUT with a different technology: instead of using the FEZ Domino (.NET micro framework based) board, I’ll be using the Lego NXT controller and an Arduino board for low level interaction with the electronics.

NXT + Arduino internals

Read more of this post