Show Posts
Pages: 1 2 3 [4]
46  Using Arduino / Project Guidance / Re: Workshop issues with minimal £4 stripboard Arduino? on: June 26, 2012, 04:02:39 am
@florinc, there was a video link in the first post which gives you an idea of what that device is. You guessed it, a Shrimped Laptop (eleven years old)...

CrossRoads, yup, it's time to experiment. Everything seems to work superficially, but we'll find out more and iterate as people build them into their own projects.
47  Using Arduino / Project Guidance / Re: Workshop issues with minimal £4 stripboard Arduino? on: June 25, 2012, 05:09:31 pm
so whats the point of "shrimping" ones laptop?

Ideally, the laptop's OS is indeed interacting with the Shrimpduino, although some might just use the laptop to do the programming and experimentation to build standalone devices.  Examples of behaviours actively combining the laptop and the arduino which could be fun for different people...

  • Animation using 5 frames of a scanimation with replaceable printouts - a servo moving the transparency an exact amount to create a zero energy display of something - you have mail, days since last checked facebook, tomorrow's weather, an animal motion (Moire animated illusion like )
  • System which skips tracks when you throw something at the laptop, or similar designed interaction (accelerometer + Rhythmbox/MPD)
  • LCD which displays the current score from Court One at wimbledon (a friend of mine is obsessed with this and can't stop checking her phone)
  • Servo-actuated Popup-book mechanisms which trigger, for example, a spider with red LED eyes to leap from behind the screen when someone touches trackpad/keyboard (a donor's kids are threatening to come along and build this one)
  • Proximity detection system which unlocks the laptop when you walk away from it using ultrasonics to judge your presence
  • Keylogger which causes every key typed to be illuminated as a single letter on the back of the laptop [logkeys + HL1606] (using the LED array demonstrated in the video in the first post)
  • Etch-a-sketch dials for painfully-complicated vector authoring in GIMP
  • System requiring you to elevate your heartrate every 2 hours, else locks the desktop
  • Dedicated control for something important to the user, e.g. a flag mechanism for switching between preferred keyboard/interface languages user-sessions of boyfriend vs girlfriend
  • Plenty more...

The ideal thing is that these are ultra-personalised, with behaviours which suit just you, and it's hard to anticipate what these might be until we run the workshops. These are just examples which are variously crazy or experimental. Technology empowerment is the central concept. Make it do what YOU want. Along the way, we want the Laptop to develop a personality and value of its own, beyond its scrap value, by designing behaviours where its CPU speed and memory size are irrelevant to what it's achieving compared to the relevance and expressivity brought to it by the designer/inventor/engineer.

Simply using the laptops as a teaching studio and providing for machines we can loan or gift to learners is relevant where they don't have access to a computer, or at least don't have access to a hackable one, but still want to experiment with coding. This is surprisingly common.

What would you build?
48  Using Arduino / Project Guidance / Re: Workshop issues with minimal £4 stripboard Arduino? on: June 25, 2012, 04:07:29 pm
Thanks for the diagram, CrossRoads. Really useful for discussion.

Although the two caps on the power lines look like they're in parallel (equivalent to a larger capacitor), I guess the main thing is that they are near the respective pins, hence they are actually doing a different job.

Is it reasonable to squash them into a single cap, assuming that cap is on the path between the pins and the power source. I'm thinking to just run some lines over the top of the ATMEGA from VCC and GND to connect AVCC and AGND, given that VCC and GND are already 'protected' from source variation by a decoupling capacitor. I'm aiming at the fewer tracks and complexity the better, but don't want to make unacceptable/idiot compromises.

I was a bit confused by the line starting...
"100uF, maybe get by with" I didn't know what part of the circuit it referred to. I wonder if some words went missing on this line when posting.
49  Using Arduino / Project Guidance / Re: Workshop issues with minimal £4 stripboard Arduino? on: June 24, 2012, 07:50:52 pm
Thanks, Crossroads.

I did wonder whether wiring to ARef was an 'override' of the default voltage and whether GND just made its way through the chip internally. For Analog input sketches (which I haven't tried yet with this board) I would have had a nasty surprise.

I'm not sure what you're saying about Arduino D14-19 (which is I think the alter-ego of the Analog pins). Are you saying I can at least use them as digitals without ATMEGA PINs 20/21/22 being connected, or is there an interaction with the Analog reference pins even then?

So far I haven't needed to modify the signature information within the IDE to program these chips. I have seen similar instructions when you need to _flash_ the chips, but once the bootloader's on there (I use Optiloader for this), it seems to behave fairly well just treating it as an Uno. Maybe I will uncover some nastiness later when I start using different parts of the board because the signature's wrong. I'll keep an eye out and I have your instructions to follow up on just in case there are weird results.

Thanks for all the suggestions so far, everyone. Really valuable.
50  Using Arduino / Project Guidance / Re: Workshop issues with minimal £4 stripboard Arduino? on: June 24, 2012, 06:28:34 pm
Thanks, Florinc.

I missed out the ground wire to the reset button too smiley-sad

I've attached a more accurate diagram to reflect your change and the ground wire, with extra information on the resistors, capacitors and resonator and a layout which still leaves room for female headers if people need them for any reason, although you can compress this layout to lose extra lines if necessary in various ways, depending on the physical size of things like the button.
51  Using Arduino / Project Guidance / Workshopping £1.40 Arduino-Compatible (£3.05 including USB!) on: June 24, 2012, 05:27:59 pm
I've been experimenting with a minimal-bill-of-materials USB-connected Arduino Compatible, which currently looks like the attached, (Fritzing diagram off the top of my head, hopefully no errors). We're using Chinese CP2102 boards in the place of the FTDI ones, and ATMEGA328-PUs from Mouser in the place of the full fledged ATMEGA328P-PUs Pico-Power chips. At the moment it looks like we can churn these out for about £3.05 in parts, including built-in USB connectivity.

The configuration seems to work, but I thought others with more experience might be able to warn me in advance of the issues I'm likely to hit when workshopping with people using such a stripped-down board, an alternative USB to TTL and no Picopower.

We have a bunch of official Arduinos which will be used for learning and prototyping, but when people want to build their own circuits and take them away as part of their Shrimped laptops, we'll walk them through a breadboard version of their circuit and then take away the £4 version on stripboard (identically laid out).

For an idea of what a shrimped laptop looks like, take a look at this video of an 11 year old Compaq Presario 700, running Lubuntu, and with some bespoke Python and Arduino code which wires the soundcard through Gstreamer into some HL1606 strips.

The aim is to run workshops where local kids in Morecambe get a freecycle laptop, then shrimp them to something personalised and desirable using linux, recycled bits, toys etc. Then they can take it home and use it as a hacking machine, something like the logic of the Raspberry PI, but using old lappies instead. Hence the importance of low cost for these 'kits'.

Welcome your observations on the Shrimpduino and anything else about the workshopping approach so we're as prepared as we can be for the first ones to be a success.
52  Using Arduino / Interfacing w/ Software on the Computer / Firmata problem with analogRead in Processing Library on: February 27, 2011, 12:40:42 pm
I've set up an accelerometer sensor circuit which works perfectly well when spitting analog values out to Serial (as observed with the Serial Monitor). The output looks like this as expected...

X: 521   Y: 503   Z: 601
X: 522   Y: 503   Z: 601
X: 522   Y: 502   Z: 601
X: 522   Y: 503   Z: 600

However, the moment I try to use Firmata to do the same thing (in order to establish a reliable protocol and with analogRead being called on demand) I get silly values, for example zeroes or values in the 400s which seem to wander a few points.

The buggy output looks like this...
0 0 413
0 0 413
0 0 412
0 0 413

I tried various values for baud rate although I'm pretty sure the default of 57600 is the one in use from looking at the source code for StandardFirmata.

I'm guessing there's either a substantial bug in the latest Firmata around the serial handshake or there's an interaction with the use of the digital pins to act as ground, power and self-test for the ADXL 335. Alternatively I'm totally confused as to the way the Arduino object in Processing's firmata support serves up typed values.

It's weird that essentially identical programs against the same circuit don't do the same thing. Does anyone know of other things to try? Is there a bombproof version of Firmata which I can get back to?

For the simple version I have code like this...
This Code reads data from the  ADXL335 axis accelerometer
int groundpin = 18;             // analog input pin 4 -- ground
int powerpin = 19;              // analog input pin 5 -- voltage
int xpin = 3;                  // x-axis of the accelerometer
int ypin = 2;                  // y-axis
int zpin = 1;                  // z-axis

void setup()
  // initialize the serial communications:
  // Power and ground the necessary pins. Providing power to both
  // the analog and digital pins allow me to just use the breakout
  // board and not have to use the normal 5V and GND pins
  pinMode(groundpin, OUTPUT);
  pinMode(powerpin, OUTPUT);
  digitalWrite(groundpin, LOW);
  digitalWrite(powerpin, HIGH);

void loop()
  // print values that are recieved from the sensors and put a tab between
  // the values
  Serial.print("X: ");
  Serial.print("Y: ");
  Serial.print("Z: ");

For the Firmata version I have code like this running against various versions including OldStandardFirmata and StandardFirmata as distributed with Arduino 0022 and including the latest Firmata 2.2 downloaded from - all with the same results...

import cc.arduino.Arduino;
import processing.core.PApplet;

public class TestFirmataAdxl335 extends PApplet{

Arduino arduino;

int groundpin = 18;             // analog input pin 4 -- ground
int powerpin = 19;              // analog input pin 5 -- voltage

public void setup(){

//configure arduino
arduino = new Arduino(this, Arduino.list()[0], 57600);

arduino.pinMode(groundpin, Arduino.OUTPUT);
arduino.pinMode(powerpin, Arduino.OUTPUT);
arduino.digitalWrite(groundpin, Arduino.LOW);
arduino.digitalWrite(powerpin, Arduino.HIGH);


public void draw() {
int xPin=3,yPin=2,zPin=1;
System.out.print(arduino.analogRead(xPin) + " " + arduino.analogRead(yPin) + " " + arduino.analogRead(zPin));


Pages: 1 2 3 [4]