I have the latest atom programming package, a usb-serial converter running vista32, when I make the demo program to make an led blink it takes about 15 minutes to write the program to the atompro
I have a Botboard2, the thing is powered via +5 coming off a computer power supply
any reason why it’s taking so long to program??
is there any way to run the code before writing it to the atom to test it? I must be missing something on this one.
Which USB to serial adapter do you have? There have been a lot of threads about USB to serial converters and the pain it can be to get them to work at all and sometimes the speed problems.
The one I am currently using is by BAFO (using a prolific chip set) and was recommended by Nathan at BasicMicro (Acidtech). When I first tried it, it did not work until I connected it to a powered USB hub. It works fine. Another one that I use from time to time uses a different chip set. I believe that this one was an older startech cable. I was able to speed up the processing on this one by adjusting some of the communication port settings using the Device Manager. Some of this is in the thread: lynxmotion.net/viewtopic.php?t=1324&highlight=ftdi+device+manager
What I needed to do was to start up the device manager, which you can do from the system control panel. Find the communication port that is associated with your USB to serial adapter and bring up the properties on it. I believe you go to the port settings page and click on the advanced setting button. If your driver has settings for latency and buffer size or the like you might get better results by updating these values.
The computer I’m using only has USB ports, too. I was looking for a good USB-RS232 converter as well. Did some reading and bought one made by Keyspan (USA 19HS). It works well. I also went to Fry’s and bought a (PCI) communications card (dual DB9) for about $15. Been happy ever since.
I know this has nothing to do with speeding things up, but just thought I’d throw it out there as an option.
No, the program needs to compile and downloaded to the atom. The atom is the computer running the code, without the atom, it would be like trying to run windows without the computer. I’m sure some clever software developer out there could write an emulator that could run the code on a local machine prior to downloading it to the atom, but none exists to my knowledge.
As for how long it takes to program is about 5-10 minutes which is wrong from what I hear
I’ve fiddled around with just about every setting and seems like whatever I do the speed stays about the same.
…
and this is on a notebook so a pci card isn’t an option
anywho…
*Kurte – I took a look at that post and tried some of the things in it, still no avail… I will try a Keyspan adapter later this evening and see where that gets me.
It looks like the same advanced configuration I have for my prolific based USB to serial adapter (BAFO). My receive buffer and Transmit buffer are both at HIGH on this card. Again I have had better luck though with a powered USB hub with this adapter. Not sure if you might need one as well?
Yeah it’s the exact same default dialog windoze has for every serial port, hardware or USB.
I would put the TX buffer setting on 14 or 16 though… if the program yields every time it has to wait to put more in the tx buffer then that could slow stuff up.
What you really want is the ability to change the latency settings, which I don’t believe the Belkin has exposed in their drivers.
A powered hub certainly could make a difference, especially for a laptop, although it is highly dependent on the drivers. You might also be able to change the performance by adjusting the power profile for your laptop but I don’t know just how much “real” control it will give you. It’s free to try if you are into fiddling with stuff though.
An in-expensive alternative is the FTDI evaluation USB-to-RS232 adapter. Here is a mouser link if you are in the US. We know the advanced USB setting are accessible with the FTDI drivers. ship USPS priority mail and it’s about $25 for this.
If you have a powered hub available I’d try that 1st though, especially if kurte has already made the observation that it helps with some devices.
Well’s… Yeah I’m pretty sure this notebook port is powered… I dont have a usb2 hub so that wont work for me. I suppose I will try this keyspan usb adapter and have my luck with it.
Seems kinda funny how long it takes to write my simple program its not like XAN’s uber code or anything but oh well…
It has to be something stupid I’m convinced of it!
anyone happen to know what all those advanced settings are listed in the atom pro software? for retry/write exct??
well what we mean by a powered hub is an external hub that doesn’t rely on the notebook for power. this is a walmart or office max or staples kind of thing.
just fyi, usb-to-serial adapters will never be as fast as a real serial port. this is because USB is a scheduled transaction and does not respond in real time.
I have seen threads with comments about the bap ide software settings before. Try searching for posts by Acidtech, as he would certainly be the one explaining what they mean if anybody was.
Oh, no I completely understood about the non powered notebook port bit.
I’m pretty hesitant to believe a usb-serial adapter would slow down enough to the effect of it causing a perceivable delay in programming simple code like this.
Usb transfer rates to an external hard drive are upwards of 25-30 megabytes a second so the fact that it cant program a basic chip at 115k or 57.6k a second seems kinda bunk if you ask me… my code I wrote should be blasted on that thing in less then a second… Either the usb -serial converter hardware has issues or I’m missing a couple egg’s from the full carton…
The fact that the driver I’m using was made in 2004 is also pretty stupid… and the lack of vista64 support is also kinda stupid in this day and age. “The notebook I am using is vista32”
There is a major difference in how the data is transfered over USB between different class devices. As I recall there are 4 different transfer modes and they can operate at very different speeds. A HDD is a block device, data is burst in large amounts and is most certainly running at full speed or high speed transfer rates for usb2.0. A serial port is an asynchronous device and by default it more or less gets polled at 16mS intervals as a low speed device… it is on par with something like a mouse or a keyboard. If you had access to the latency settings I keep blathering about then you could reduce the 16mS from the default to 1 or 2. As it is if the programming application sends a few bytes and waits for an acknowledgement from the BAP then even if the BAP sends the byte the instant it receives the command (and there is some delay between those events as well) it will be a minimum of 16mS before the driver on the PC knows about it. Depending on how frequently the programming software chooses to send data and check for acknowledgement byte will determine how often it sits there waiting that 16mS for a byte reply. Numerous comments in other threads about the tight timing relationship required to program the BAP suggests there is a lot of this handshaking going on when the download is occuring.
So don’t shoot yourself down… what is occuring is complicated (I am abstracting it pretty seriously just to save typing) and layered deeply away from what normal folks would have even the slightest desire to know about.
oh yeah, for real world comparison example, we had a test fixture that needed to download about a 500kb file to a flash memory device in a product. The PC they set it up with was using a USB-to-RS-232 adapter because it was a new cheap one like an e-machine or something. Even tweaking it (an FTDI based adapter so we had the latency screens) to go as fast as we could the download took just over 2 times as long as it did with a hardware RS-232 port. We eventually swapped the PC out for an older win98 one with a hardware serial port because that download was the worst time sink in the entire test process.