Loading...
  Show Posts
Pages: [1] 2 3 ... 32
1  Using Arduino / Project Guidance / Re: Is there another way to upload code to arduino? on: May 18, 2013, 01:44:00 pm
You could give the end users access to the .hex file and point them in the direction of XLoader

http://russemotto.com/xloader/

which will hide the command line-iness of having to use avrdude directly, unfortunately it's Windows only.

Good luck!
2  Using Arduino / General Electronics / Re: USB D+/D- Resistors on: May 18, 2013, 11:14:09 am
Thank you all for the answers!
Yes I should have provided additional information on the schematic..
Both D+ and D- are wired from a Micro USB connector to an FTDI chip (FT230XQ) through a 27 (Ohm?) resistor. They go into USBDM (D+) and USBDP (D-) of the FTDI.

So.. could it be 27 Ohm?

The spec sheet for the FT230X (http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT230X.pdf) calls for 27 Ohm resistors on D- and D+ (as well as 47 pF caps to ground).

So as retrolefty says...yes....

Good luck!
3  Using Arduino / Microcontrollers / Re: How to prevent someone from copying my firmware by dumping out hex from flash? on: May 16, 2013, 11:35:21 am
Yes. You set the fuse lock bits to read only. See

http://forum.arduino.cc/index.php?topic=93907.0

for details.

Good luck!
4  Using Arduino / General Electronics / Re: Using a single power source for Arduino and stepper on: May 15, 2013, 10:15:16 pm
If you use some kind of voltage regulator to turn the 24V source into something more paletable for the Nano (either 9-12V to VIN or 5V to +5V) along with a smoothing cap (I usually use 100uF but only because I have a bucket of them, not because that's the best value) you'll be fine(*).

I have a Nano connected to 3 stepper drivers this same way and it's been running fine for months now.

(*) "Fine" being defined as being sure you follow reasonable precautions to keep the raw 24V source away from anything 5V etc.

Good luck!
5  Using Arduino / Motors, Mechanics, and Power / Re: High accuracy pan tilt turret on: May 15, 2013, 10:04:24 pm
Quote
How accurate are microstepped motors

Definitely not 1/128th of a step accurate. I'd be very suprised to find anything that can realistically guarantee locked positioning greater than 1/8th of a step. Microstepping is about reducing harmonics and smoothing the motion, not about increasing accuracy.

If this were my project I'd probably still use a stepper because they're easy to control but I'd use a gearbox or pulleys etc. to multiply the rotational accuracy, not by directly attaching the stepper shaft to the device.

Good luck!

[edit - fixed obvious misspellings]
6  Development / Other Hardware Development / Re: discussion on supporting the TI CC3000 WiFi module on: May 15, 2013, 08:40:04 pm
I just got a CC3000EM prototype board. I'm going to try connecting it to an Arduino over SPI via a TXB0104 level translator, then starting a library for it (unless I can find someone else already working on one).

I'll post further updates in the Networking forum, but if anyone has any immediate questions please let me know.
7  Using Arduino / Networking, Protocols, and Devices / Re: iphone + arduino + wifi shield on: May 15, 2013, 11:16:58 am
I want to do the same thing... use my iphone to control a servo using an arduino. However I was looking at trying to do it using HTTP or a telnet server. Which one do you think will work better. I have test programs of each method but there are bugs in them and so they don't work. Any Advice?


Well..."better" really depends.

Telnet is a simpler protocol to code for the server, since you don't have the overhead of HTTP headers etc. It's basically the same as using the Arduino IDE serial monitor. On the other hand telnet is more difficult to support on your client end (an iPhone) because it's not native and you'll have to do everything with typing on a tiny virtual keyboard.

HTTP is more work on the server side because there's more parsing to do, but it's nicer on the iPhone side because the client is built in (Safari) and you can easily make a UI with buttons and sliders etc. out of HTML elements, no custom client coding required.

As far as debugging advice -- I'd separate the communication code from the action code and make sure the two pieces work. For example, get the servo working how you want via the serial monitor. Next, get the communication between the iphone and Arduino working, again using the serial monitor to verify (e.g. click a form on your iPhone, have the Arduino serial print out "I saw the form click!", etc.). Then combine and enjoy.

Good luck!
8  Using Arduino / Networking, Protocols, and Devices / Re: iphone + arduino + wifi shield on: May 13, 2013, 01:40:26 am
Quote
I c ...thanks a lot.  how do you think the OSC protocal? Is better than TCP in this case?

It looks like it's an older protocol - Wikipedia says its data wrapped in SLIP wrapped in UDP... I haven't seen SLIP since about 1998....

My $0.02 is: I sure it's a fine protocol if you're already doing MIDI-ish things and can find libraries that you like, go for it. If not, then there's no way it would be worth your time to write your parser for it. It would be orders of magnitude simpler to do something like make the Arduino be a basic web server and interpret URLs e.g. "http://192.168.1.109/?servo=2&angle=135" and have the client issue plain old HTTP requests.
9  Using Arduino / Networking, Protocols, and Devices / Re: FT230XS as cheap replacement to FT232RL? on: May 10, 2013, 09:42:09 pm
Quote
Looking further, the Optiboot bootloader seems to be distributable, given attribution, could you not just use that?

You can definitely use OptiBoot for commercial work with a ATMega328; a lot of projects have done that. The Arduino team itself actually used to maintain their own bootloader (with the Duemilanove & older boards) and switched to OptiBoot with the Uno.

I don't think you'd be able to use OptiBoot directly as a bootloader on an ATMega32u4. It programs the user memory from the hardware serial UART; at a bare minimum you'd have to patch it to read data from a USB virtual serial port etc. That may be possible, but is outside my area of expertise....

Quote
While I was able to successfully get my project to work by loading the UNO bootloader when I used the ftdi module, I have not yet finished laying out my recent rev with a 32u4, so dont know if this would work yet.

For personal projects or non-commercial devices yes you should absolutely be able to do this on your own; you can download the Leonardo bootloader hex file from github and there's plenty of posts in the Microcontrollers section of this forum of people using blank ATMega32U4s for Leonardo clones, exactly as you describe. I just don't believe you can legally sell your own stuff with the Caterina (Leonardo) booatloader and the Arduino team's USB vendor ID & product ID.

Quote
The FT230X says that the IO pins are 3v3, but 5V tolerant.  Looking at the datasheet, it doesn't say if the TXD/RXD are, only CBUS and DBUS...can you safely interface the RX pin to a 5V uC?

No problems at all so far. I copied the datasheet's "6.2 Self Powered Configuration" and "7.5 LED interface" schematics for the FT230x support components, and the Uno's connection -- 1K resistors on RX & TX between FT230x and ATMega328, reset connected with with a) 100nf cap to the FT230x's CTS, b) 10K pullup, and c) reversed diode to +5v.

I apologize for hijacking this thread and like I said before I'm not 100% certain on this. If anyone knows for sure I'd love to hear it!
10  Using Arduino / Networking, Protocols, and Devices / Re: FT230XS as cheap replacement to FT232RL? on: May 10, 2013, 01:02:42 am
There's three pieces to this puzzle. I believe you're only taking about one of them.

First, there's the USB vendor ID & product ID. When you plug a USB device into your computer it sends the VID/PID; your computer uses this to figure out what driver to load etc. The old boards used the FTDI chip and FTDI's license says it's OK for you to use their chips (and thus their Vendor ID) in your stuff. Your device can be anything, but ultimately your computer is going to load a FTDI driver to communicate with it. The new boards (Uno, Leonardo, etc.) do their own USB thing, so the Arduino team got their own Vendor ID. They've said it's not permitted to use their VID in your commercial product: http://learn.adafruit.com/arduino-tips-tricks-and-techniques/arduino-uno-faq (see "How does the new '8u2 affect Arduino-derivatives").

Second, there's the USB code. This is LUFA which, as you say, is OK to use for commercial purposes. We agree here.

Third, there's the bootloader code, which lets you upload new code to the chip via USB. For the Leonardo this is Arduino's Caterina code (https://github.com/arduino/Arduino/tree/master/hardware/arduino/bootloaders/caterina). When I looked into this last fall I couldn't find anything  official as to whether this code's OK to reuse commercially or not; I just looked again and still can't find anything definitive one way or the other. You could make a design that doesn't use a bootloader to get around this, but I like the idea of USB programmability so end users can do firmware upgrades with something simple like XLoader instead of requiring them to ship boxes back to me, or buying a hardware programmer.

Like I said earlier this is just my understanding of how this works; it would be great if I'm wrong.
11  Using Arduino / Networking, Protocols, and Devices / Re: FT230XS as cheap replacement to FT232RL? on: May 09, 2013, 10:05:32 pm
I can't speak for the OP but so far I'm sticking with the two chip solution. What you've said is completely true and will work, but I'm working toward selling my designs so I have to worry about licensing, copyright etc.

The last time I checked the base Leonardo USB code (LUFA) didn't have any usage/licensing restrictions but I've never seen a definitive answer if it's OK to use the Caterina bootloader for commercial works, and it's been discussed before that the Arduino team doesn't want others reusing their USB VID/PID. Getting my own USB vendor ID etc and having to write my own Windows INF file etc. seemed like more trouble than it was worth.

I would, however, love to be proven wrong....
 
12  Using Arduino / Networking, Protocols, and Devices / Re: FT230XS as cheap replacement to FT232RL? on: May 08, 2013, 03:46:52 pm
I've done two designs now using the FT230x and it works great. The Arduino Duemilanove design has the FT232RL's DTR connected to the ATMega's reset for reprogramming and the FT230x doesn't have that, but happily AVRDude also pulses RTS so you can connect that pin the same way and all is well.

Good luck!
13  Using Arduino / Motors, Mechanics, and Power / Re: moving a stepper in a sine wave? on: May 05, 2013, 09:19:37 pm
Check out the AccelStepper library, it will do what you want. Tweak the acceleration value until you get the effect you want.

Good luck!
14  Development / Other Hardware Development / Re: discussion on supporting the TI CC3000 WiFi module on: May 03, 2013, 06:32:27 pm
I think you're right, it does have the possibility to be a really good fit for wireless Arduino-based devices. DigiKey has the chip for $12.51 (http://www.digikey.com/product-detail/en/CC3000MODR/296-35512-1-ND/3768439), which is a lot better than official wireless board or even the WiFly adapter from SparkFun et al.

I've got the data sheet bookmarked and will hopefully get to reading it this weekend, but I glanced through it at lunch and it seems doable. The chip's 3.3V only so you'll have to level convert the SPI pins but there's several ways to do that.

You're right it doesn't have a built in webserver for HTTP, but I don't think it would be too difficult to adapt the existing Arduino libraries to do that.

You've probably seen this guy's working on a shield (http://www.evenchick.com/cc3000-shield-and-the-internet-of-things.html) but I'm not sure of the project's current status. TI's got several eval boards, I'm going to look into those as well.

Please keep us posted on any progress you make, and I'll do the same.
15  Using Arduino / General Electronics / Re: Capacitive touch x, y values on: April 30, 2013, 12:58:08 am
I don't know any way to do it directly but what you can do is make a grid of contacts like described in this document:

http://cache.freescale.com/files/sensors/doc/app_note/AN4600.pdf?fpsp=1&WT_TYPE=Application Notes&WT_VENDOR=FREESCALE&WT_FILE_FORMAT=pdf&WT_ASSET=Documentation

then you scan the sensor pins and see where both a row sensor and column sensor are active, that's your location.

The example above uses the MPR121 chip but the technique can be adapted to others.

Good luck!
Pages: [1] 2 3 ... 32