Show Posts
Pages: 1 [2] 3 4 5
16  Forum 2005-2010 (read only) / Troubleshooting / Re: Solid Tx/Rx LEDs on: March 30, 2008, 02:50:39 am
It's probably because the tx and rx leds are connected to +5v instead of usbvcc, meaning that the ft232 is powered by them when running from external power.

Perhaps mention this in the bugs & suggestions forum.
17  Forum 2005-2010 (read only) / Development / Re: making pcbs on: March 28, 2008, 07:11:21 am <-- howto completely regenerate HCl+H2O2 etchant simply by bubbling air through it.
18  Forum 2005-2010 (read only) / Development / Re: 22 mhz on an atmega168 on: April 03, 2008, 01:04:11 am
It should be fine at 22MHz, but you don't get to bitch if it breaks because that's beyond spec smiley-wink

I've heard of them being pushed as far as they'd go.. apparently that one started getting corrupty around 35MHz
19  Forum 2005-2010 (read only) / Development / Re: from protoype to product on: April 01, 2008, 07:45:59 pm
See for how to program using the ft232 chip's bitbang mode smiley-wink

You can also use your computer's parallel port very easily.
20  Forum 2005-2010 (read only) / Development / Re: Arduino Diecimila gridded ground plane + EMC on: March 31, 2008, 05:37:58 pm
One thing I noticed is that orphans are enabled for the ground plane. Usually that's a bad idea from an EMR perspective because unconnected pads act as passive radiators and capacitor plates rather than ground.
21  Forum 2005-2010 (read only) / Development / Re: Arduino Diecimila gridded ground plane + EMC on: March 28, 2008, 06:38:14 am
This is the easiest way to attach a polygon to a power net because once named it will not let you rename the polygon to anything else.

Not so: select name tool, click on part of the border of a poly as if it was a normal track and viola, renamed poly smiley

If you move a corner of a poly, it'll "undraw" it so you can see its borders more clearly.
22  Forum 2005-2010 (read only) / Development / Re: Video out directly from a arduino chip...? on: March 28, 2008, 06:34:36 am has PAL being generated by a pic16F84. (site seems to be down atm, use

Has many interesting ideas, like using shift right instruction directly on a port to keep the speed up, and having blank areas at top and bottom of screen, during which game logic etc is done.

pic16f84a@20Mhz only does 5Mips whereas arduino@16Mhz does 16Mips, so may be a shade easier smiley-wink

as westfw says, still won't be able to do it in C, simply not enough overhead for anything but hand-crafted assembler.
23  Forum 2005-2010 (read only) / Development / Re: On board voltage regulator max. current? on: March 28, 2008, 07:19:14 am tells you exactly how to work it out. It's written about power mosfets but the principle is exactly the same for voltage regulators, transistors, motor driver chips etc.

Note that quoted current ratings are calculated from "perfect" conditions: ie, active heatsink that keeps case at 25c regardless of load, minimum possible voltage differential, and some magic whoknowswhat that stops the leads melting (to-220 leads melt at around 75A).

As you've just found out, the vreg can handle 800mA, but only barely in a particular set of circumstances.
24  Forum 2005-2010 (read only) / Development / Re: Smaller ATmega 168 Chip? on: March 28, 2008, 07:03:11 am
1 more question, do you happen to know a small motor driver chip. i am using a TC4424 to amplify the signal from the arduino enough to run a motor but it is fairly big and i would want a small one. is that possible?

Depends how small, and how big a motor you want to drive. If you want to drive justabout anything, you'll want a couple of ir2184s or similar and some insane n-channel mosfets like the fdb6670al, which should be good to 20A or so while still being able to fit 2 to 4 full motor channels on something the size of the arduino.

For smaller stuff, just search chipmakers' sites for motor driver chips. try to find the parametric search so you can ask for what you need. You will be amazed at how much power a tiny little chip can control these days, especially since they got mosfets below 10mOhm at Vgs=4.5v.

Only problem with tiny motor drivers is that they're all surface mount, and surface mount motor drivers can easily desolder themselves and cause a huge mess. Make sure it has plenty of headroom, and I suggest some mechanical mounting for it too smiley-wink
25  Forum 2005-2010 (read only) / Development / Re: Build-in battery charger? on: March 28, 2008, 06:50:37 am
re: battery voltages 4-7v

check out the max710 from maxim. It's a high efficiency boost + LDO regulator. It accepts 1.8 to 11 volts, and gives 5v @ 250mA (vin=1.8v), or 5v@500mA (vin>=3.6v). Can also supply 3.3v if you want.

The booster kicks in if Vin is less than about 6.5v, and the LDO ensures that little to no noise gets into your application, and can be more efficient than a buck in some circumstances.

Would be *perfect* for powering from a 4 cell nimh or nicad battery, whose voltage ranges from 4v to as much as 8v.

Looks like it would work great in combination with max712 too... sounds like a good project to design properly actually.
26  Forum 2005-2010 (read only) / Bugs & Suggestions / diecimila headers are not on 2.54mm grid on: March 27, 2008, 09:01:48 am
Arduino Diecimila port B and D headers (digital I/Os) are not on the standard 2.54mm grid, so shields can't be made with prototype board and similar.

Also, see the AVR-USB project for a way to hook up the ft232r so it can bootstrap the atmega in bit-bang mode which would be awesome for arduino.. I'd love to swap the crystal on mine for a 20MHz, but I don't think the ft232r supports (19200*20/16)=24Kbaud, and don't have anything else to program it with.
27  Forum 2005-2010 (read only) / Bugs & Suggestions / Re: Diecimila resets easily when controlling a mot on: March 28, 2008, 06:10:06 am
The latest Arduino boards come with 22uF caps

Those would be C6 and C7 on the Diecimila schematic? They're only in the dc input circuit. When running from usb power, only C1 and C4 provide filtering for a total of 200nF. This means plugging is very easy on the usb port's fuses and I actually like it that way.

Keep high and low power electronics properly isolated, filtered and snubbed, plain and simple. One board being more susceptible to noise than another is irrelevant to me, as long as the required noise level for a fault is reasonably overt which in this case it is.
28  Forum 2005-2010 (read only) / Interfacing / Re: One Arduino multiple motors on: December 04, 2008, 07:18:27 am
I used a 4514 4-to-16 line decoder chip to expand a single timer to control 16 servos from my handyboard, no reason you can't use the exact same method on the arduino.

See for schematic and write-up.

Not sure how you'd hook this into the servo library, as I program my arduino with avr-gcc and avr-libc rather than using the IDE.
29  Forum 2005-2010 (read only) / Interfacing / Re: nuelectronics ethernet shield: request webpage on: May 13, 2008, 06:57:25 pm
You're gonna have a problem sending out requests.

Most packets sent over the internet are 1500 bytes. The atmega168 on your arduino has 1024 bytes of ram. When the requests are smaller than 1024 bytes it's not a problem, but packets from webservers will easily be bigger than this amount and you'll have to be extremely crafty with your ram usage. Not to mention that you also need ram to store arp tables, tcp sequence numbers, the stack, and any variables your program uses..

Basically, if you manage to do this, you'll be processing the packets as they come in without storing them and you will have rewritten most of the source that nuelectronics provides with the shield.

Maybe that's why they didn't provide any functions for making outgoing requests?

See for a tcp/ip stack that has most of the above but is still small enough to fit on a microcontroller (although not the arduino's atmega168)
30  Forum 2005-2010 (read only) / Interfacing / Re: nuelectronics ethernet shield: request webpage on: May 10, 2008, 06:38:54 am
you'll need to write some code to talk http

A http request basically looks like:

// declare variables
int conn; char lastc, c;
// connect to host:port, port is 80 for http
conn = connectTo(host, 80);
// request url
fprintf(conn, "GET %s HTTP/1.1\nHost: %s\nConnection: close\n\n", url, host);
// skip header, 10 and 13 are newline characters and header ends after two consecutive newlines
for (lastc = 0; (c != 10 && c != 13) || (lastc != 10 && lastc != 13); lastc = c; c = getc(conn));
// now do something useful with the remaining data

Pages: 1 [2] 3 4 5