i love the fact that Lilypad can run on 3.7V LiPo battery instead of 5V. the only drawback is making physical connections to the pins using aligator clips. i've toyed with the idea of using straight and right angle headers to make easier connections, but dont want to do it without looking into other ideas that i might like better.
has anybody tried or does anybody have an opinion on another type of connection to make to the lilypad's pins?
hey fornzix. since the LilyPad is made for wearables, it's not ideal for breadboarding & more traditional electronic tinkering. If what you're looking for is a general purpose Arduino that can run on 3.7 volts, it's not hard to make your own
Check out Ladyada's fantastic tutorials & her breaduino kit. To make the breaduino run on (almost) the same voltage range as the LilyPad, just leave out the voltage regulator components & connect power directly to VCC on the microcontroller. You'll want to carefully look at the ATmega168 data sheet & Ladyada's schematics to get this right. Note that if you do this, you'll only be able to power your breaduino w/ a max of 6 volts--anything more will kill it.
Nice, I just had 2 arrive - I'll solder on some bb connectors fornzix and make it fit a bread board, if it's destroyed it doesn't matter cause I wasn't planning on wearing it.
If it works, I'll post pix. I'd rather use these than make the kits which cost just as much and take up time. It's a shame there isn't a square lillypad, with legs.
If it is sewn into clothing, what are people using as connectors? surely they're not walking around dangling a bunch of alligator clips.
Output from the slave to the serial monitor, will look like this:-
x is 0
x is 1
x is 2
...
x is 255
x is 0
...
etc etc
In the picture, the "Slave" is the lilypad connected to the USB adaptor.
So, aside from being cute and inexpensive, the lilypads are a nice solution for adding an extra hardware serial port if there is ever the need.
A serial device can be connected to the hardware serial pins on the "Master" lilypad, and hardware "serial.available" can be used to retrieve data from the buffer, and then send it on to the "Slave" via TWI.
When the "Master" sends data to the "Slave", a receiveEvent is executed, breaking out of a loop. Data can then be read using Wire.available, and then resume a loop. With software serial, a loop can't resume until data is received, so if the device being read doesn't send any, a program hangs until it does.
If I understand the literature correctly, a considerable number of Lilypads can be connected this way. I'm not sure if that has any application in the wearable arts market, but I can think of a few useful things to do with it
PS: the polarity of the bottom bread board is different to the top, follow the wires and ignore the coloring of the breadboard
// function that executes whenever data is received from master
// this function is registered as an event, see setup()
void receiveEvent(int howMany){
char c = Wire.receive();
Serial.print(c);
while(1 < Wire.available()) // loop through all but the last
{
char c = Wire.receive();
Serial.print(c);
}}
void requestEvent()
{
Wire.send("1234567890");
}
Now on requestEvent the data is sent to the I2C (AtMega --> ARM), but the other part get data and print it only one time, but keeping send data onrequestevent (AtMega <-- ARM).
So what event i must kill when i need print the data incomming to the AtMega from the ARM port?
I can't print data to serial, but the ACK from the Arduino goes to the ARM device :o
The ARM tell me the data was successfuly received in the slave device!.
But i can't print this data on the serial, only one time why?
This is pretty cool; something else I noticed (that I never thought about before) was how big the LilyPad is (I had it in my mind that it was slightly smaller). In fact, it seems like there is a ton of "empty" space on that board; if you could reduce the size of it by a 1/3, that would make for some slicker packaging for some ideas I have had in the wearable computing arena (unless there is a bunch of stuff on the other side of the board).
I have also thought about the idea of an Arduino-based I2C bus parallel processing "super-computer"; it is certainly feasible and doable (your app, and others I have seen, shows that). Basically, the idea would be a large PCB (something that could be mounted in a standard 1U case?) with nothing but a bunch of ATMega328s (smt, of course), with I2C connecting all of them (with a board sized for a 1U case, you could probably easily hit the number of slaves limit with SMT). There is, of course, this:
Which is a helluva cool device, though pricey. Just like that device, though, it would be a product searching for a need. What could you use such a system for? Hardware neural net? Ray tracing? Would I2C be a fast enough interconnect, or would something else be better? Could the I/O ports be repurposed for that (perhaps use them to access and share some 8-bit memory)?