1. Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.
    Dismiss Notice

Any Arduino fans out there?

Discussion in 'Arduino' started by Leftyretro, Nov 22, 2008.

  1. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    I started out a couple of years ago with the Picaxe series. I still think that they are still a very viable product line with very low cost of entry and the basic programming language can be good for someone starting out with zero programming experiance.

    However a week ago I received a Arduino clone kit. Freeduino Serial v2.0 board KIT Arduino Diecimila Compatible

    There are models avalible that use a built in USB interface that also powers the board for a little more money. Unlike the Picaxe the Arduino uses C as it's primary programming language

    Great price and it built quickly and works like a charm. The best thing about the Arduino series is that it totally based on open source, both it's hardware and software. No vendor lock in or dependency. It seems to have a large international following with an active forum site and many vendors supporting the series.

    Now I know there are lots here that are bare to the metal assembly language/raw chip fans, but from my point of view the Arduino system seems to cover more bases and provide more support then anything else I've found.

    A hobbyist dream and I recommend it highly. Any comments?

    Lefty
     
  2. blueroomelectronics

    blueroomelectronics Well-Known Member

    Joined:
    Jan 21, 2007
    Messages:
    12,536
    Likes:
    170
    Location:
    Toronto, Canada
    You're still stuck with a single MCU with a bootloader. IMO a simple programmer offers much more flexability.
     
  3. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    Presently the Ardino IDE system only supports some AVR chips but does support the mega8, mega168, mega328 and with patches the 40 pin 64k progam memory mega644.

    There is also procedures to turn a standard Ardino board into a programmer to load the bootloader into blank AVR chips. There is also a procedure to burn a program into a blank AVR without using a bootloader if desired.

    In theory the Ardino IDE system with it's GCC compiler and other support software could be ported to work with most any MCU instruction set if the open source development team took that effort on. There was some talk on their forum of what it would take to port the IDE to the 32 bit ARM series!

    Lefty
     
  4. dave

    Dave New Member

    Joined:
    Jan 12, 1997
    Messages:
    -
    Likes:
    0


     
  5. blueroomelectronics

    blueroomelectronics Well-Known Member

    Joined:
    Jan 21, 2007
    Messages:
    12,536
    Likes:
    170
    Location:
    Toronto, Canada

    I assume GCC is a C compiler? The PIC has plenty including C18SE from Microchip. C is not exactly a beginners language. IMO BASIC is, and Swordfish BASIC is really easy to get a grasp of.
     
  6. BeeBop

    BeeBop Active Member

    Joined:
    Dec 22, 2005
    Messages:
    1,281
    Likes:
    23
    Location:
    Vancouver Canada
    Yes, but usually it is written gcc. It stands for gnu c compiler. :)

    C18, and quite a few others are based on gcc.:D
     
  7. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    Yes I believe it's the open source compiler used in the linux system. I failed to mention that the Arduino IDE is already available and works cross platforms for Windows, Apple and Linux. I'm not aware of any other MPU IDE development system that does that presently in all three platforms.

    The user isn't exposed to the complexity of the full GCC compiler/assembler/linker/down load procedure unless they wish to dig down to that level with command line statements. With the IDE the user can write simple C programs (there called sketches) and functions that the IDE wraps into to complete the compile and download functions. All in all there is tons of complexity under the hood but the user is normally insulted from it. And of course all the IDE and support software is free and open sourced.

    Arduino - FAQ

    Lefty
     
    Last edited: Nov 22, 2008
  8. Mike - K8LH

    Mike - K8LH Well-Known Member

    Joined:
    Jan 22, 2005
    Messages:
    3,642
    Likes:
    109
    Location:
    Michigan, USA
    I must say it looks interesting but I'm having trouble finding anything as simple and fundamental as an IDE reference and/or tutorial...

    Are there any snapshots of what the IDE even looks like (in Windows environment)?

    Mike
     
    Last edited: Nov 22, 2008
  9. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    Found these screen shots of installation and set-up showing a few of the IDE at the end:

    Arduino - Windows
     
  10. Mike - K8LH

    Mike - K8LH Well-Known Member

    Joined:
    Jan 22, 2005
    Messages:
    3,642
    Likes:
    109
    Location:
    Michigan, USA
    Thank you.

    It seems I may have to spend a couple days browsing to find more info'.

    Mike
     
  11. 3v0

    3v0 Coop Build Coordinator Forum Supporter

    Joined:
    Jul 14, 2006
    Messages:
    9,404
    Likes:
    227
    Location:
    OKLAHOMA USA
    I do not see where the Ardino hardware is much more then a USB Bitwacker.

    These days the better uC's are a system on a chip. Slap one in a BB, add sensors, switches, dispay and you are ready to run.

    One thing that is good about Ardino is that add on IO boards. Sort of like what Nigel uses.

    On the other hand Lada Ada and Peter H Anderson are using it. What am I missing.

    Could be that someone has taken the time to glue it all together. Sort of like most compiler verndors do for you.

    3v0
     
  12. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California

    Yes, nothing really unique about the Ardino hardware, pretty standard stuff. The real strength is the use and support of open source software that is multi-platform. It has a very active users group and lots of built-in and user contributed library functions. The IDE is presently at version 12 so this is a mature software package and they seem to actively add features and correct bugs.

    Lefty
     
  13. 3v0

    3v0 Coop Build Coordinator Forum Supporter

    Joined:
    Jul 14, 2006
    Messages:
    9,404
    Likes:
    227
    Location:
    OKLAHOMA USA
    Unless I missed it I do not see an ICD, rom monitor or any other form of run control. If tha is the case they missed the point.
     
  14. Mike - K8LH

    Mike - K8LH Well-Known Member

    Joined:
    Jan 22, 2005
    Messages:
    3,642
    Likes:
    109
    Location:
    Michigan, USA
    You guys are confirming my quick-n-dirty assessment. Someone came up with a reasonably simple cross platform IDE with C libraries supporting a small set of AVR chips with firmware loader on a few very nice multi-purpose development boards. I suspect someone could do the same thing with PIC microprocessors.

    I'm kinda' lookin' at this as a way to get into AVR programming on the cheap. I'd love to get one of these $19.95 boards and take advantage of the IDE and loader capability for standard assembler and C programming. But since that's outside my meager budget I wonder if some kind soul here stateside might consider posting me an ATMega168 with firmware burned in to build my own development board?

    Mike
     
  15. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    Not sure I understand your question. The Arduino IDE runs on a PC or Mac, it is used to write C programs, compile and download to the AVR chip via the bootloader routine that is already burned into the AVR chip. There is no other monitor routine resident in the AVR chip.

    When one resets the AVR chip (or initial power up) the bootloader checks to see if the IDE is ready to download a new program, if so the IDE downloads the program and then resets the AVR chip. If the IDE does not have a new program ready to download then the bootloader routine just jumps to any previously downloaded program that might reside in the AVR chip.

    Does that make it more to the point?

    By coincidence I came across a Arduino user program today ( bitlash online ) that does load a program into the AVR (via the Arduino IDE) that turns the AVR into a small C language interpreter, getting it's commands from it's serial port. This would indeed make the AVR a standalone monitor. I ran it and it works pretty cool. I used a PC serial terminal program to command the AVR. Not a lot of program space left for user macros, etc on a mega168 but a mega328 would work better. It has a limit on number of variables allowed but has access to all the AVR I/O pins.

    I have been amazed at the large number of creative contributed programs that people have written for the Arduino.

    Lefty
     
  16. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California

    Hi Mike;

    Here is the cheapest way I've found to get a preloaded mega168.

    Adafruit Industries, Unique & fun DIY electronics and kits

    Of course you would need a RS232/TTL convertor chip to then be able to talk on a PC comm port.

    Lefty
     
  17. futz

    futz Active Member

    Joined:
    Sep 15, 2007
    Messages:
    2,043
    Likes:
    24
    Location:
    Vancouver, B.C.
    For Canadians you can avoid the customs wait (usually about a week) by buying some Arduino products at HVWTech. HVW doesn't have everything though. Cables, for instance... :(
     
  18. BeeBop

    BeeBop Active Member

    Joined:
    Dec 22, 2005
    Messages:
    1,281
    Likes:
    23
    Location:
    Vancouver Canada
    And if you are close to Vancouver, the last time I dropped into Lee's Electronics on Main St. (in Vancouver) he was trying to push one off on me.:p

    Seems they are using them at Emily Carr for the Art/Electronics courses.
     
  19. 3v0

    3v0 Coop Build Coordinator Forum Supporter

    Joined:
    Jul 14, 2006
    Messages:
    9,404
    Likes:
    227
    Location:
    OKLAHOMA USA
    Lefty,
    Bootloaders are great to update firmware but are a poor choice for developing software. No debugger.

    3v0
     
  20. Leftyretro

    Leftyretro New Member

    Joined:
    Mar 11, 2007
    Messages:
    1,420
    Likes:
    13
    Location:
    Hercules, California
    While I'm not real experianced with software I understand what you are saying. There are two nice to have features missing in the Arduino system, a simulator and a debugger. The only method they offer on debugging is a #define debug where you can place lots of print() statements in the code for run time and after debugging just #undefine debug and recompile and all the print() statements will be removed, at least that is how I think it works.

    Are there high level languages IDEs that provide simulation and/or debugging or is that mainly a assembly language feature?

    Lefty
     
  21. 3v0

    3v0 Coop Build Coordinator Forum Supporter

    Joined:
    Jul 14, 2006
    Messages:
    9,404
    Likes:
    227
    Location:
    OKLAHOMA USA
    The short answer is yes.

    A real time debugger is a partnership between the debugger program, the language system tool chain, and debug hardware (often a monitor on the target chip). With in circuit debug there is a communication link such as JTAG or PIC's ICSP/ICD connection.

    The situation is similar with the simulator but obviously the connection is at the software level.

    By language system tool chain I mean the compiler-assembler and linker. It does the book keeping needed to track symbols and the mapping between high level and asm/machine code. All this info is rolled into a output file with debug info such as coff, elf, dwarf etc.

    The micochip MPLAB IDE has a debugger which works with the similator or a number of hardware debuggers including ICD2/3, PICkit2/3 and RealICE.

    The debuggers I have worked with are independant of the language system. If the language system vendor does his job any compiled program can be debugged at the source level.

    GCC works with GDB (debugger) for source level debugging if all the connections have been put in place.

    With the introduction of JTAG run time control debug hardware went for 1000's to 100's now 10's of dollars. People wanted and needed and purchased it when it was expensive.

    3v0

     

Share This Page