endless effing junk software from Atmel and everyone else

Go To Last Post
22 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Today I tried to load the latest changes in an assembler application program into my Mega168 AVR. Like I have done a hundred times before in the past few months using Studio 4.

It didn't work. I got an error saying that the Studio program could not connect with the programmer. This is a Pololu standard ISP programmer that has a USB to serial port function and a serial port-to-AVR programmer. It has *usually* before in the past. Like all USB junk, it fails about one in ten times of ordinary usage. Usually I pull the cable out of the USB port on my PC and plug it back in. Then it *usually* works.

Imagine that your car worked like this: the automaker announces that they have a new 'engine' that makes the car go ten times faster. You don't really need the speed, but what the hell... However, there is a catch. In one out every five or six times that you try to start the car, it just won't start. For no discernible reason at all. But if you just get out, take off the left rear tire, and then put it back on, it will probably work now. Again, for no discernible reason at all.

Nobody would accept this situation from an automobile, but it's standard operating procedure for an AVR programmer. WHY?? WHY can't Atmel just fix this so that it 'just effing works'? Why is it so difficult for Atmel to make JFW quality software. JFW of course means ..just effing work... Your car is JFW; your computer mouse is JFW, your AVR programmer is a lot simpler technically than a car or a mouse, but it has never been JFW status software. JFW has many names, some people call it 'six-sigma', some dare call it 'quality', some don't believe that the computer/electronics industry will ever be able to deliver JFW for any product.

So, anyway, since I (like MANY people on Earth) don't have internet access at home, I went to the local library, plugged in my flash disk doo-dad, and downloaded all 750 MEGAbytes of the new (but in now way improved) Atmel Studio 6. Then I started the loader on my home PC, and waited a whole G-D hour for it to load .NET SQL and a million other pieces of junk software that I had no idea that were absolutely necessary to load a hundred bytes of code into a Mega168. When Studio 6 finally finished loading, I tried to load MY assembler code into it an *hopefully somehow* get the source code into hex code and then into the Mega168.

No such luck. All the effing documentation either has to be downloaded from the Atmel website, or, it is a .mshc file. Now I use this PC for writing and loading source code into an AVR chip. Why would a PC used for this purpose need, want, or have internet access? Internet is very expensive here. Many of us just go to the local library to access it for free. So if idiots would make a 750 MEGA-effing-byte program that just compiles C source (and not as good as the MOSDOS Turbo-C at 50K bytes) and dumps it into a $2 microchip, then WHY would they not include a 20K file (in plain text ASCII if you please) that explains how to use it? Like they did ten years ago with Studio version 1?

Every year, every revision this whole situation just gets worse. I'm at the point where I wish that I could just get a cheap computer with Windows 98 that actually runs all the programs without BS that I used to run without BS when my home PC was running Windows 98. But I need a flash drive interface, so I guess I should be asking for Windows 2000.

The idea that every PC should run every program written for every PC Windows version at least 90% of the time is just crazy. I want one dedicated PC (or Raspberry or whatever) that I can bang out source code in AVR assembler, assemble it, and stuff it into an AVR chip. And I want it to work 100 effing percent of the time! I don't care if it uses an 'obsolete' DB9 or DB25 or 1940's phone plug connector. I just want it to work all the time.

I want a JFW-quality computer-to-AVR programming interface. I don't want another 200 versions of the AVR. I'm willing to use Mega168/328 forever.

I would also like peace-on-earth and goodwill-to-all-men. But like quality software from Atmel, it is just dreaming the impossible dream....

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Today's software really expects high speed connectivity. Apple is even worse in this regard. You have to go way out of your way to get the next major rev of the MacOS not online.

While this emphasis on connectivity may push network improvements, 2/3 of Oregon's area (and maybe 1/3 of its population) has no effective connectivity other than satellite or dialup in which 56Kbaud is too fast.

I share Simonetta's pain. I occasionally have to work for extended periods in places with very limited connectivity. This obsession with bloated and ineffective software (oh, it will be better on the next update) is really hurtful. And, in the long run, I really believe that it is counterproductive to our whole society.

Unfortunately, there is little that we can do to change this juggernaut.

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
...but it's standard operating procedure for an AVR programmer.
Not for ANY of the 3 programmers that I use, not once. Maybe a MKII ISP or Dragon will work better for you while using AS6.

1) Studio 4.18 build 716 (SP3)
2) WinAvr 20100110
3) PN, all on Doze XP... For Now
A) Avr Dragon ver. 1
B) Avr MKII ISP, 2009 model
C) MKII JTAGICE ver. 1

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

To be honest, I never realised a permanent high speed internet link is something expensive and uncommon in the US, or at least parts of it. Over here it's cheap as chips; I pay €25 a month for a 8 MB ADSL link and can choose from multiple providers. Of course, you cannot compare The Netherlands with the USA, sizewise :)

When I downloaded AS6 I was stunned to find it was 750mb and I already have .NET. I guess the switch to Visual Studio caused the massive bloat.

I found my JTAGiceMKII to be quite reliable really; it definitely is not a unreliable piece of crap.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
This is a Pololu standard ISP programmer
So why are you blaming Atmel? :roll:

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Compared to Western Europe, major parts of the US is like a third world country when it comes to technological infrastructure.

Sid

Life... is a state of mind

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well...

I have AS4 on my desktop and AS6 on my laptop.
My Atmel AVR ISP mkII works flawlessly with both computers.

When I use to run an STK500 through a USB to Serial converter it would "usually" work, (which means that sometimes it failed..., but I attribute that to the USB to Serial bridge and its driver.)

I think purchasing an AVR ISP mkII would be worth it, given your frustration with your present setup.

JC

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There is a lot of folks living out in the country that dont have cable or dsl because its just too many miles of wire. They get sat tv, but they are still using modems and plain old telephone service.

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Simonetta, what OS are you using now? If it's 98SE I would consider XP, just to get a better USB setup.

My setup is similar to yours, but the only time I use AS4 is to simulate code. I use UltraEdit for all my editing, which has hot keys the run AVRassembler2 and the DOS STK500.exe for programming. Documentation consists of datasheets for whatever AVR I'm working with and things like the instruction set and assembler guide. This laptop never sees the internet. For debugging there's serial debug ports and terminal software.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There was an article in the local Silicon Vally paper today (or was it a few days back.)

The short of it is that we actually have two choices. AT&T or Comcast. Either way moderate speeds are about 125USD a month, requiring the full package phone/cable/tv. It is all about the content. According to the article corporate network providers cost about 400USD a month. (think of the billions some companies around here earn.)

Most places have what are "legal monopolies." It cost so much to get approval from the local governments that usually only one company bothers. The rest then rent space on it. NIMBYs do not like holes dug to pull fiber and complain about the poles and the towers. This is a free market at its best. (think of the taxes we save.)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well, I suppose that part of the problem is that you have your desktop programmers that don't much understand microcontrollers, or HW interfacing, so they end up writing crappy software that doesn't do what an embedded engineer wants, and has all sorts of problems talking to actual devices. And then you have your microcontroller engineers, who have pretty much lost track of the "advanced software concepts" needed to make an effective desktop program, and they write software that had a lousy UI, doesn't work across multiple versions of the operating system, and fails to use the sorts of features that make modern desktop software fast. Not that they don't try anyway, causing bugs in the process...

That leaves a rather small contingent of candidate developers, and they'd rather work on neat stuff at a startup that Will Make Them Rich than at one of the feuding microcontroller companies developing free software... (Though I wonder how the founders at Hi-Tech (acquired by Microchip) and CodeWarrior (acquired by Freescale) and Keil (acquired by ARM) ended up doing...)

What I really don't understand is why Atmel doesn't open up the debug protocols and etc so that the community at large can take a shot at things.

Your hypothetical "Atmel Development Server" is probably possible, but you won't like it. It'd probably be just a windows or linux box that someone pre-configured with a remote desktop of some kind. You won't like how much it costs up front. You won't like how much it costs to maintain. You won't like that you can't maintain it yourself. You won't like that it's idea of a window doesn't look like your current operating system, or that it has a file structure that is generations old (ever try to use a windows program from before the "My Documents" era? ick.) You won't like that you have to buy another one for the new processor family. You won't like that it's too locked down for you to do you own maintenance, but not locked down enough to keep out assorted malware.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
To be honest, I never realised a permanent high speed internet link is something expensive and uncommon in the US, or at least parts of it.
Ideally that should change per the American Recovery and Reinvestment Act (2009) and the Rural Utilities Service (Dept. of Ag.). What I've seen: 1. WildBlue Ka-band, 2. ads in rural areas for terrestrial-based ISP (IIRC look like UHF antennas).
jayjay1974 wrote:
Of course, you cannot compare The Netherlands with the USA, sizewise :)
True but a comparison should still be made.

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jporter wrote:
... requiring the full package phone/cable/tv.
That's odd. Here one can get ISP without phone/TV though you'll still get the nearly weekly ads via USPS for the full package.

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
major parts of the US is like a third world country when it comes to technological infrastructure.
I believe there is a cow in cold Winsconsin moaning about having to use dial up, I thought is was a lot of bull, but it must be true then. :mrgreen:

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I thought I had a hard time making do with 2-3Mbps ADSL for about £6/month (call that US$9). Most parts of the UK benefit from fibre and get 30-50Mbps. Sadly we live in a rural village in the boonies so ADSl will be coming up a copper phone cable for a few years to come.

As for the original post. An AVRISPmkII does not fail once in every ten attempts. It works every time, all the time. If hassle is a big factor in your life surely it's got to be worth paying $34? Atmel hardware with Atmel software is very nice to work with and while I was a major critic of the AS5 debacle I think AS6 is now a very nice tool to use even if it does take me the best part of an hour to download a copy.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There is room for improvement in AS6 too, though.

One "feature" that is particularly annoying is the excessive mouse use required to transfer your program to the device. 2-3 keypresses should be enough.

Instead it is Alt+T arrow arrow Enter Tab Tab Enter and then move the cursor, click here, move the cursor, click there and so on and so on.

Sheer stupidity.

Sid

Life... is a state of mind

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

As far as I know, Simonetta only uses ASM and is fairly reluctant to use even the preprocessor.

So he can probably use the Atmel Assembler of any vintage on any old operating system.

Likewise, his 'programmers' all behave as COM devices that use STK500v2 protocol.

So there is no need to use any AS4 or AS6. There are certainly many third party 'programming' software that communicate directly with the COM port. e.g. avrdude.

Having said that, most users would like to have robust software and hardware that works. AS4 + AvrAsm2 + Atmel programmer is a proven combination.

AS6 must be a nightmare for residents of third world countries. I don't think it is as forgiving of STK500 clones as AS4.

Yes. I get 2-8Mbits via my ADSL and I live in the countryside. It is still a pain to download.

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Simonetta wrote:
Like all USB junk, it fails about one in ten times of ordinary usage. Usually I pull the cable out of the USB port on my PC and plug it back in. Then it *usually* works.

I use my (over 10 years old) STK500 with the cheapest USB-RS232 dongle or the AVRISPmkII and both works perfectly the whole day.
No need for plug out.
Since I have it not plugged out for month, maybe its sessile now. :)

For developing I use AS4.18 some times.
But mostly I use a batch which compile (WINAVR) and program (STK500.EXE) with only a single key press.

Peter

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The Gardener wrote:

One "feature" that is particularly annoying is the excessive mouse use required to transfer your program to the device. 2-3 keypresses should be enough.

Instead it is Alt+T arrow arrow Enter Tab Tab Enter and then move the cursor, click here, move the cursor, click there and so on and so on.


I was hung up on that too, until I was taught that "Start without debugging" in the Debug menu downloads the app to flash and then free-runs it.

So, now you go into the Tools menu, and select Options. Then in the tree control Evironment, Keyboard. In the list box, locate the item Debug.StartWithoutDebugging . Set a keyboard shortcut (e.g. Ctrl+Alt+F5 is free, and at least for me is memnonic enough) and Apply. You now have a one keystroke-combo way of flashing your AVR.

You're welcome. :)

EDIT: If one prefers clicking to keyborad keys a button can be added (to any toolbar you wish) to do the same. (Tools, Customie, Commands tab, Toolbar radio button, select a toobar, click Add Command, select the Debug category, select the command Start Without Debugging. OK your way out of the dialogues.)

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here

No guarantees, but if we don't report problems they won't get much of  a chance to be fixed! Details/discussions at link given just above.

 

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

Last Edited: Thu. Sep 6, 2012 - 12:31 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

With an Arduino hardware, you often want to just 'compile and go'. Adding the 'avrdude -c arduino' command to the 'After Build' jobs means you never wear out your fingers.

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

JohanEkdahl wrote:
The Gardener wrote:

One "feature" that is particularly annoying is the excessive mouse use required to transfer your program to the device. 2-3 keypresses should be enough.

Instead it is Alt+T arrow arrow Enter Tab Tab Enter and then move the cursor, click here, move the cursor, click there and so on and so on.


I was hung up on that too, until I was taught that "Start without debugging" in the Debug menu downloads the app to flash and then free-runs it.

I tried that a while ago, but there was problems with it. I think the programming button was missing or something.

Anyway, I'll try again now that I have your specific instructions. Thanks!

Either way, I think Atmel (and Microsoft) should educate their GUI developers about the availability of keyboard shortcuts and why they are a good thing.

Demanding 8+ keystrokes for a task a person may want to carry out several times a minute is just plain stupid. Demanding mouse use is worse.

Sid

Life... is a state of mind

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If OS's are a problem for anyone, I'm fairly certain that avrdude has been ported to linux (or maybe started there, ported to WinDoze)...

I usually don't have any problems with any USB device in windows, but for every 100 problems I've had in windows and USB, I've definitely had 1 or fewer in linux. Just a choice of how much do you want to pay (in time, patience, and sometimes frustration, not moolah) for OS software that 'JFW' once you get it setup...