What Linux tools to use?

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

What tools (editor, compiler, programmer, and programming hardware) do Linux users use?

I've just switched to 64-bit Ubuntu 7.10. I've read that Anjuta is a good editor/IDE and that the gcc compiler is popular if not entirely necessary, but I don't know about the rest.

Thanks!

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

For AVRs there isn't a choice is there? It's GCC or nothing. (obviously the editor is completely your own choice). avrdude would be the obvious choice for programming software and most people find the Atmel programmers (STK500, Dragon, AVRISPmkII, JTAGICEmkII, etc.) to be the most easy to use and reliable.

Cliff

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

Editor: Eclipse with CDT plugging for heavy coding (going to try Anjuta soon as it's included in the next release of Gnome/Ubuntu). VIM for quick edits.

Compiler etc: avg gcc toolchain

Programmer: dfu-programmer for day-to-day (I'm using usb devices only). Reboot to windows and Avr Studio for programming fuses.

Programming hardware: none for day-to-day (thanks to usb dfu). Reboot to windows and the avr jtagice MKII for fuses.

Others: python atop libusb 0.1 (for quick host-side apps), gnu make

PS, I found 64-bit Linux to be a hassle for a desktop because there are still things that are hard to get in 64 bit (like Adobe flash). I found myself running a 32bit browser, and after a few other hassles switched to 32bit on the desktop and 64bit on the server.

-Brad

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

No need to reboot to Windows if it's just for the JTAG ICE mkII. AVRDUDE
can handle it fine.

While I'm not strictly a Linux user (I'm rather FreeBSD-minded), I eventually
became one since it's the standard OS at work. On both these Unixes, I'm
doing all my development work mostly under Emacs, which integrates well enough
(for me) with GDB so I think that's what most folks would consider an IDE.

Jörg Wunsch

Please don't send me PMs, use email if you want to approach me personally.

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

I've tried out Code Blocks http://www.codeblocks.org/
Seems like it has potentials.
And i like the idea that it is the same on Win/Linux

It's not as "Heavy" as eclipse

/Bingo

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

Last time I checked AVRDUDE didn't support the AT90USB162 that I am using, and I haven't had time to work on adding the support myself.

-Brad

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

> ...and I haven't had time to work on adding the support myself.

I guess it takes less time adding it than one reboot into Windows. ;-)

Jörg Wunsch

Please don't send me PMs, use email if you want to approach me personally.

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

dl8dtl wrote:
> ...and I haven't had time to work on adding the support myself.

I guess it takes less time adding it than one reboot into Windows. ;-)

Heh, ok I'll look into it the next time I need to setup some new MCUs.

-Brad

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

Bingo600 wrote:
I've tried out Code Blocks http://www.codeblocks.org/
Seems like it has potentials.
And i like the idea that it is the same on Win/Linux

I've been trying this for the last few days, and it is pretty impressive. It has the best symbol lookup engine than any open source editor I've tried. It even has project/build configuration for avr-gcc.

My only compliant so far is that scrolling in code windows feels slightly sluggish under Linux. But I'm using a fairly old machine.

-Brad

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

I just revisited this thread and wanted to check out Code Blocks. Unfortunately, I'm not able to get to their website. Can someone confirm that it is still up or maybe just having technical issues today?

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

Works fine for me... the website that is, have not tried it yet. Going to download it now....

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

Ok, I finally got to it. For some reason I couldn't get to it from work. My question now is, do folks prefer Code::Blocks to Eclipse and why?

Thanks!

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

I've found Eclipse to be rather unintuitive for the little I had to look at.. I haven't tried Code::Blocks but it seems to look more like IAR in some ways...

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

Well, I got Code::Blocks up and running and so far I like it. Now that that's out of the way, what can I use (GUI tool preferably) to upload to my AVR? I have an AVRISP MKII.

Edit::
I have checked out AVR dude and have difficuly keeping all of the command line arguements straight.

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

avrdude IS the main Linux tool for device programming. In the past there have been attempts to put a GUI command line building front end on it but these are no longer maintained but surely you just need to read then manual and determine once the command options to be used and from then on you either stick that in a shell script or, better yet, as a rule in your Makefile. If you are using an Mfile generated Makefile for the AVR project you'll probably find that it already has a "program:" rule so that "make program" can be used to program the code into the AVR. Though you will have to find and edit your options into the:

#---------------- Programming Options (avrdude) ----------------

section of the makefile.

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

Now this is going to sound really stupid, but do I use terminal to run avrdude on Ubuntu? I've used the command prompt before on Windows and am not sure if it would be sort of the same thing.

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

javafiend wrote:
Now this is going to sound really stupid, but do I use terminal to run avrdude on Ubuntu? I've used the command prompt before on Windows and am not sure if it would be sort of the same thing.
To answer you on the same level of cleverness: What do you do on Linux if you want all tools to have a GUI? It does not hurt to use a command line :)
If you look into the history M$ tries to copy Unix command line but never achieved it. Like make, gcc, gdb - avrdude is a command line program.

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

You access Ubuntu's command line by clicking the "Start Menu", going to the Accessories sub menu, and clicking on "Terminal".

If you need a more extensive tutorial on how to use bash (the most popular command line shell for Linux - basically think of it as an alternative to MS DOS's command.com), then this may not be the best place for it.

However, if you've managed to get Code::Blocks configured to invoke a makefile and compile your AVR applications, then as Cliff says, it ought to be possible to also put rules in the makefile for invoking avrdude too. Once it's all set up, it would be a simple matter of point-and-click every time you want to start the programming process.

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

Editor: gvim with ctags and cscope,
compiler: gcc (alternatives not exist),
programmer: avrdude,
programming hardware: AVRISP, dragon, JTAG clone, parallel port programmer.

Additionally some small programs in AWK written for automation of generating tables of char from strings, calculating stack usage, calculating CRC of program data etc.

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

I edit with Kate, I program with AVRdude.

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

The WinAVR Makefile template has provisions for programming with avrdude (make program) IIRC the only thing I had to change was the port the programmer is connected to.

for example this works for me with my STK500 connected via a USB-Serial adapter.

AVRDUDE_PORT = /dev/ttyUSB0

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

Awesome, thanks for the replies. I'm fairly new to Linux, been using it for about three months, and am still getting used to it. I managed to install avrdude with apt-get and that felt like quite an accomplishment. Now that I know I can use terminal like I used my command prompt in Windows, I feel I might be able to figure out some of it.

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

I've been having some difficulty programming my AVR with AVRdude. I continually get a timeout error. I want to make sure it's not just bad command line arguements. Is there a GUI Linux programmer like avrdude-gui that I can use to at least help format my command line commands? That's about all I used avrdude-gui for in Windows for anyway was composing the command line.

Thanks!

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

You could try KontrollerLab.

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

The command line for avrdude is pretty straight forward... crash course:

Get the help output (short):

avrdude -h

Read the manual (long):

man avrdude

Simple code to say "hello, what's happening" to the chip. This is for an ATmega8 using STK500 at /dev/ttyS0:

avrdude -p m8 -c STK500 -P /dev/ttyS0 -v

If you don't get information from the chip using that command then you either:
1. Have the wrong serial port selected (/dev/ttyS0 needs to be something else).
2. You don't have permission to access that serial port (try using super-user priviledges for your distro. Usually either "sudo" or "su" before the command)
3. Have the wrong programmer selected.

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

Ah, ya know, I've seen a couple of posts that mention setting up "udev" and they seem to deal with permissions. I'll try running my command with sudo and see if that helps because I'm pretty clueless about setting up udev.

@barney_1: Thanks for the crash course and cluing me in on using sudo.

@zetsubou: I'll check out KontrollerLab as soon as I get a chance.

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

@barney_1: Your code snippet really helped! I modified it to look like this just to verify that it would communicate.

sudo avrdude -p m8 -c avrispmkII -P usb -v

It worked. So I went back to find the differences in my original line and after replacing avrisp2 with avrispmkII and adding the port (probably the most important part) it worked. Now to just go through and troubleshoot my code.

Thanks a ton! Now I can happily return to fiddling with my AVR knowing that I am the only defective tool in my collection :lol: .

IDE - Eclipse w/AVR Eclipse plugin
Programmer - AVRISP MKII
OS - Ubuntu (Intrepid) Linux

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

Going back to the original post......

Today I decided to bite the bullet and start using Emacs. Well it has taken me the afternoon but I'm hooked.

I had it on a separate laptop next to my PC with Google handy.

I loaded Emacs on the laptop and followed the tutorial. When I got stuck I googled it on my other PC.

I'm really happy with the environment - I can boot to a console on my old laptop, open create source files, compile code and flash my Mega32 via my STK500.

It really is worth the time it takes to learn Emacs - it is so good having everything in one screen at your fingertips

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

Here is a thread about Linux & AVR & Codeblocks

https://www.avrfreaks.net/index.p...

/Bingo