Ask a littleBits engineer

Hello! I’m Sean and I am an engineer at littleBits. If you are having trouble with your Arduino bit you can throw your questions here and I will try to answer them for you as quickly as possible!

Awesome! Thanks for your help! If I don’t resolve this issue I am having with a specific program I am writing, I will definitely contact you before the end of the day! Well I’ll give you the heads up! I am controlling a PC fan with the Arduino Bit from an outside battery source through a Darlignton transistor circuit. I want to use a littleBits button from the wireless receiver to activate analog pin 0 and send an on signal through digital pin 10 to a Darlignton transistor of the PC Fan circuit. I am also using a temperature sensor to turn on the fan when it reaches a certain temperature. Basically, there will be two options to turn on the fan; either automatically through the temperature sensor or manually from an analog input. I programmed the arduino bit to activate the fan through an if statement, but I cannot figure out how to program it to turn on manually through a button connected to a channel of the wireless transmitter. I’ll keep you updated if I cannot accomplish the task. Additionally, can I use the digital Pins as a 5 Volt source and ground?

Such as:
void setup() {
pinMode(11, INPUT_PULLUP); //Activtes the internal input resistors of pin 11, which sets the pin to 5 Volts
pinMode(13, OUTPUT); //Sets Digital pin to Ground
}

Hi Mr. Steam, thank you for posting!

If you are having trouble with the manual button later, please post the portion of your code for the manually activation of your fan so we can have a look at it. I noticed that you said you are using an analog input for the manual control. If you are using that port as a simple high/low detection, you can set that pin to be an input GPIO which simplifies control on that end.

Onto the second part of your question: You can use the GPIO pins on the microcontroller to sink and source current. However, the GPIO pins have maximum operating currents and on this microcontroller the maximum current is 40mA so you must be careful to not exceed that current. If you are considering attaching your computer fan, you may want to be careful because I believe most computer fans will exceed that. Also, using the internal pull-up may be too weak to use as a source since it is between 20kOhm and 50kOhm. I would recommend setting it as an output and setting it to high.

Thank You! The program works!! I just used the button program from the website to add on to my program. It works for what I am using it for! I’ll upload the project on the website soon! Thanks Sean!

Hi, also have a similar question, but I’m a newbie.
I intend to use arduino kit to operate small devices without external power source except arduinio’s.

  1. from what pins can i draw current and how much?
    if I want to take current from all output pins at once is it possible?(is there little bit to do it?)

2.does the motor in arduino kit, runs on external battery or just from arduino’s output sources?

3.how to safely draw power not to exceed maximum recommended?
again is there little bit for protection?

thankx

jossie.

Hi Sean,

I’m not having trouble, just a question. I’ve repeated the “Hold an On/Off state” demo, and I was wondering. How come having the momentary button in place doesn’t disconnect the power from the Arduino module?

Hi Jossie,

Pins d1, d10, d11, and d12 are directly connected GPIO pins which are rated to safely draw 40mA each. The d5 and d9 pins can provide about 100mA of current.

The Arduino kit can run on the included 9V battery or an external 9V AC power adapter.

Outputs d5 and d9 are buffered so if you draw more current than it can handle you may get a voltage sag but it is hard to electronically break anything. You do have to be more careful on the other outputs pins but most of our bits provide electrical isolation which should protect your Arduino bit.

If you describe what you are trying to do I would be happy to give you recommendations and advice on current characteristics.We do not currently have a bit for protection but most of our bits have built-in protection via electrical isolation. I hope this helps!

-Sean

1 Like

Hi Sean, excited about the Arduino module. On the blink sketch I’m not getting blinking on the 09 bargraph. sketch code includes:

int led = 13;

should I modify that?

Hi dcdenison,

If you are using the blink sketch provided on the Arduino website then you will need to modify the led variable to correspond to the pin you would like to blink. On the littleBits Arduino bit this should be set to either 1, 5, or 9 depending on the output bitsnap you have the LED attached to.

Additionally, we provide our own blink sketch on the littleBits website along with step-by-step tutorial which should work on pin 5 without having to modify the sketch in any way.

Let us know if you have any other questions!

-Sean

blinking right now!

thanks. I had a feeling that the sketch on the arduino site was not perfectly matched to the littleBits module.

thanks again for the help.

Thankx for the very detailed and swift response.
I answered most of my questions, one question I was not clear enough

what I want to do is control engine /servo through arduino with a single power source
( I don’t want two power sources, one for arduino and one for the engine).

so I thought of

a) supply both power and control motor via gpio
power->arduino->software logic->gpio->motor.(will the gpio have enough current to drive it?)

b) another thought split the single power source to both arduino and motor.
power —>arduino
|—>motor
and use output from arduino gpio just to control switch that will release/close power to motor.

will I able to do two options little bits?

best regards

jossie.

Hi Jossie,

If you are looking to control the servo that comes with the Arduino Starter Bundle you can get everything up and running easily with just the power we provide in the bundle. If you are looking to control a different servo you would either require a separate servo controller or program the servo control in the Arduino bit. You would also have to check the specs of the servo to make sure its current draw is not too high (i.e. above 500mA).

-Sean

1 Like

HI Sean,

I am hoping to use the arduino module with 80 students from the end of july so I am scoping out what is possible. right now, I have a problem that could be a show-stopper for me if not resolved.

I have one arduino-at-heart module and I want to use the Mozzi sound Synthesis Library with it.

sensorium.github.io/Mozzi/

I installed Mozzi and loaded several example files but there is a nasty foreground sound that is louder than the sounds the examples are supposed to make.

it sounds like this: youtu.be/YTzCtqCspv8

I am using the first of the mozzi example sketches for this but, along with the high, ping sound, there’s this low squarey descending tone that should not be happening.

any clues as to where I should start finding out what’s wrong?
would someone be able to try this on thier own board and confirm whether this is just on my one or not? I ‘think’ it might’ve been okay last night but it makes this kind of sound with any Mozzi sketch i try now.

Mozzi has amazing potential for sound synthesis, especially with the synth kit, so I want to get it working ready for my class next semester.

sorry for the cryptic links. they are blocked otherwise

thanks,

Rod.

Oh, OK. I get it. Looking at the circuit diagram for the button, VCC and GND pass straight through the component and a third line, SIG is switched. Dumb question.

Hi Rod,

We’re happy to hear that you are interested in using the module as a teaching tool! I’m sorry to hear that you are having trouble with the Mozzi library. I am not familiar with the Mozzi library but I was able to replicate the sound you posted in the video.

It sounds like that this might actually be an aliasing issue which can be experienced at higher frequencies. I noticed that by decreasing the frequency, the sound went away. I found some documentation on the Mozzi website that discusses these potential issues. I’d recommend trying to find some Mozzi users that have experienced these issues. I hope it works out for you!

Is it possible to use little bits in conjunction with Arduino as a MIDI controller for software such as Logic, Ableton, garageband or even DJ software like Serato? The demos I have seen show sending MIDI signals to the Littlebits synth components, but I’m not sure if you can send MIDI signals to the computer from LittleBits.

Hi Artistiq,

Our current version of Synth Kit modules do not support MIDI and they are actually completely analog.

As far as using MIDI for your Arduino bit, the easiest way to implement it would be to send MIDI via serial and then on your computer use a serial to MIDI bridge that your DAW would interface with. I have posted a couple of bridge examples below that you can check out and see if they will work for what you have in mind.

https://projectgus.github.io/hairless-midiserial/
http://www.spikenzielabs.com/SpikenzieLabs/Serial_MIDI.html
http://www.stephenhobley.com/blog/2010/02/15/serial-port-midi-relay/

-Sean

Great. Thanks for the quick response and the resources. I’ll check them out.

Hi Sean,

I have a problem with mac and littleBits arduino module.
Using MacBook Pro OS10.8.5.
I set a right port “/dev/tty.usbmodem1411”
and Writing to the microcomputer board is successful.
There was an error Start Processing, After running the sketch.
”Error opening serial port/dev/cu.Bluetooth-Modem:Port busy"
What’s happening?
How can I fixed it?
First time I used Leonardo and littleBits arduino module.
I have ever used Arduino Uno without any problems.

Hi little_izzy,

It sounds like the Arduino IDE is trying to program to your bluetooth port if you receive that message. There may be an issue with the sketch you uploaded that is locking out the bootloader. Please see [the resetting instructions provided here][1] and see if this fixes your issue. If not let me know!

EDIT: If you are trying to use the “analog_pong_processing” sketch or another sketch that uses the serial port you have to make sure you select the correct serial port. Look for a piece of code that looks like the following:

  myPort = new Serial(this, Serial.list()[0], 9600);

and change the [0] to the index of the serial port you used to program your Arduino. If you are unsure just count up until it works (e.g. try [1] then run it, [2] then run it, [3] then run it, etc.).

-Sean

[1]: Arduino Troubleshooting