Arduino experience

I thought I'd try an Arduino, and 20 hours in I *really* miss picaxe.

The debugging on Arduino is through serial output. My download cable didn't work, I've wasted hours on it. The external crystal is a hassle. The libraries just aren't as well documented. I'm using a Leostick and you can hear crickets chirping on that forum.

It makes me realise just how good the picaxe is, and how quickly and easily I can get a project running.

The shields in Arduino are a good idea, but it's expensive to do small projects. I'd rather plug a 20X2 into a board with some ebay motor drivers than mess around with expensive shields. So for $20 between picaxe and ebay I can have a small robot working.

Trying to debug the Arduino has led me to use a picaxe as a serial monitor. It's so fast and easy to do with the picaxe, maybe 10 minutes and I can debug - but I still don't know what's going on inside the Arduino.

Anyhoo, my 2c.

Hey - when is my AXE231 going to be in stock?? I'm waiting on it to finish a project.
 

tony_g

Senior Member
i have also been almost tempted to buy one to try out, but after reading around on various tutorials i could find it just seems like to do even a simple task which would only take a few lines of picaxe code such as blinking an led on and off every second requires a bit more code and certain structure.

im sure one day i will have to give it a go as i will eventually need to do something that reaches the current limits of the picaxe but im sure thats at least a good few years away from that happening lol,and even by then chances would be that there would be newer improved variants that will keep me happily going with picaxe.

its a great little chip and software for the not so programmer language savvy user like me and im glad i have found uses for it to stop killing my brain cells in front of the tv as i get older lol.
 

rob235

New Member
I'm in the middle of my first Arduino project and while I found the structure of the code annoying at first, once you get into it, the structure is good. The floating point math is great! And some the library's make things easy. But I don't like the editor mainly because there isn't a simulator and debugging is hard. I have an LCD Hooked up so I can watch variables!

But in terms of integrating a chip onto a project, pic axe wins.
 

nick12ab

Senior Member
The debugging on Arduino is through serial output. My download cable didn't work, I've wasted hours on it.
The serial used by Arduino is inverted compared to RS232 and the serial used for downloading programs onto the PICAXE. A small bit of stripboard fitted with a download socket and a MAX232 can be used if you want to use the PICAXE download circuit - or you can use a 4069 inverter instead as long as you use the PICAXE download circuit resistors before the input.

The external crystal is a hassle.
That means that some little insignificant thing like a small power supply brown out won't cause it to revert to the internal oscillator like on PICAXE. Usage of the internal oscillator is possible but not as easy as on PICAXE and you need to reprogram the ATmega IC (but you can do that with another Arduino).

The libraries just aren't as well documented.
Totally agree. And the upgrade to Arduino IDE 1.0 required a lot of changes to libraries and code to get them to work again.

The shields in Arduino are a good idea, but it's expensive to do small projects. I'd rather plug a 20X2 into a board with some ebay motor drivers than mess around with expensive shields. So for $20 between picaxe and ebay I can have a small robot working.
Have to agree there. I've never bought the shields, or the "Arduino with shield base" - only the bare chip which is much cheaper. However since the Arduino bootloader is open source, they cannot rely on sales of pre-programmed chips and they have to have the shield system as their featured product. They do sell the chips individually themselves though.

I thought I'd try an Arduino, and 20 hours in I *really* miss picaxe.
Whenever I want to do a project and a PICAXE can do just as good a job as an Arduino, I always choose the PICAXE simply because PICAXE is much easier to write code for; PICAXEs in many different sizes (8,14,18,20,28,40) are readily available and the programming cable is really simple - no inverter required.

Writing Arduino code is much harder than PICAXE and I find that every time I want to do something I have to go on to the website to find out how to use a certain command and what the command is. Plus not being able to reset the non-customizable timer is also inconvenient. On the plus side, you can use mathematics and bit-masking in if statements and there are proper functions.
 

g6ejd

Senior Member
The Arduino does have a soft serial library that allows inversion of the data and control lines, so can interface like the PICAXE.

I agree the PICAXE is far more efficient and much quicker for development and it is far more flexible.

For time critical or faster operation, Arduino is the better choice, I'm thinking sub millisecond timing / interactions can be done easily with the Arduino.

What I have found is the Arduino code to do something simple approaches 25-30K, especially when libraries are added, the equivalent PICAXE code is more compact, but add the interpreter to the overhead count and they are not that far apart

They both have their applications and the overlap is not that great.

On balance I'd choose a PICAXE any day.
 

mrburnette

Senior Member
<...>
The debugging on Arduino is through serial output. My download cable didn't work, I've wasted hours on it. The external crystal is a hassle. The libraries just aren't as well documented. I'm using a Leostick and you can hear crickets chirping on that forum.

It makes me realise just how good the picaxe is, and how quickly and easily I can get a project running.

The shields in Arduino are a good idea, but it's expensive to do small projects. I'd rather plug a 20X2 into a board with some ebay motor drivers than mess around with expensive shields. So for $20 between picaxe and ebay I can have a small robot working.

Trying to debug the Arduino has led me to use a picaxe as a serial monitor
. It's so fast and easy to do with the picaxe, maybe 10 minutes and I can debug - but I still don't know what's going on inside the Arduino.
<...>
WTF? You were NOT using an Arduino - but rather a clone. You are bashing a product based on your own shortcomings by going to the cheap side. And most everything you have stated is tainted with errors.

- The Arduino GUI has a serial monitor for debugging
- Arduino libraries are documented fairly well
- Clone products sometimes have special libraries
- Real Ardunos use standard USB cables... cheap

Do the Open Source Hardware project right and buy a true Arduino. Buy a book. Study. Learn. But please don"t post about what you do not understand. The PICAXE is a great product and does not require members to bash other good products to demonstrate the positive of PICAXE.

- Ray
 
Hi Ray,

Fair point, I should have focused on the strengths of the Picaxe instead of having a dig at Arduino.

For compatibles - I haven't had a lot of trouble with Picaxe compatibles. The closed ecosystem discourages innovation and diversity, but things just work.

Documentation - the 3 picaxe PDF's are like a bible and I have them open all the time. The Basic Circuits doc is genius for a beginner. It's unmatched.

Debugging - instant access to the variables - genius. No need to write to serial.

Price - Picaxe is super cheap for what you get.

I've also done extensive work with the IOIO dev system using the VB4Android library. It's also super fast and easy, great step-through debugger, auto completion, just works. Here's my little project I did...

Now I need to do a fairly large project with Arduino , I've even ordered "original" boards to work with as well as the Leostick - which wasn't much fun. So I'm digging, reading, learning - I'm up to my 3rd Arduino book now. But I just haven't found the same joy and ease of use as with Picaxe and IOIO. Primarily the debugger feels like a step backwards. I guess also as you drop to lower level systems things get much faster, but debugging gets harder. I'd place Arduino as a step above C and a step below an interpreter like Picaxe or IOIO. So faster and clumsier.

Anyhoo - that's my experience.
 

MFB

Senior Member
headingwest. You state above "I guess also as you drop to lower level systems things get much faster, but debugging gets harder" I can't believe this is an inherent limitation of compilers. Does anyone have comments about using the latest Basic compliers and IDEs?
 

matherp

Senior Member
MFB

I use Swordfish when things get too hard for Picaxe - floating point etc. I've developed a bootstrap loader on the PIC chips used for the 20X2 and 28X2 using the same pins as the picaxe. This allows me to substitute the raw pic chip directly in circuit and program it using the same interface as the picaxe. Often I get the basic code working on picaxe and then port it to swordfish to up the speed - works well for me.

Swordfish integrates with the Microchip MPLAB development environment allowing debugging using the Microchip tools but personally I find a few "serouts" normally suffice.
 

mrburnette

Senior Member
@headingwest:
Documentation - the 3 picaxe PDF's are like a bible and I have them open all the time. The Basic Circuits doc is genius for a beginner. It's unmatched.
Yes, a very good compilation; exactly what one would expect from a mature product that has it roots in the Public School Systems. I have not seen anything similar (for free) from the Arduino community, but that does not mean that the information is not available, it is not available in one, two, or three PDF. And, even many PICAXER's rely upon Westly's wonderful, specific PDF documentation to actually get things working.

As a single example of tracking down an Arduino topic (often useful for PICAXE, too), simply start here: InterfacingWithHardware
then select your interest, for example, LCD's, drill down a level to select OLED or LCD, SerialLCDLibrarySuite
and you are at in the mist of an overload of specific information, tutorials, sample code, and schematics. If I were interested in building a Video Keyboard to TV, I could select the TVout link and have that information at my fingertips.

YES, this is different than PICAXE but really not so if you consider that most projects will require 2 of the PDF PICAXE manuals, a forum search, and likely a reference or two to Westly's specific PDF. Everyone wants to say it is Apples & Oranges, but it really is Apples & Apples, just different varieties of apples.

The Arduino is a C++ backend. The Arduino flavor is added as .H header files and specific libraries, most C++. If the author wants, s/he can drop into pure C/C++ at any time, for example by including Streams.h, I can immediately start using the "<<" and ">>" I/O stream operator. I really DO NOT need to know how the .h file performs the magic as the syntax is well documented. However, there is still no getting around having to "play" a bit with an example sketch just to get wet. It is no different with PICAXE except that the library has already been compiled and loaded into the PIC as unchangeable firmware.

There is no doubt in my mind that one can get a project started faster with PICAXE. But the point of a project is to implement a set of goals to a satisfactory completion. Ah, now the limitations of the fixed-firmware often surface... but not always.

- Ray
 

mrburnette

Senior Member
MFB

I use Swordfish when things get too hard for Picaxe - floating point etc. I've developed a bootstrap loader on the PIC chips used for the 20X2 and 28X2 using the same pins as the picaxe. This allows me to substitute the raw pic chip directly in circuit and program it using the same interface as the picaxe. Often I get the basic code working on picaxe and then port it to swordfish to up the speed - works well for me.

Swordfish integrates with the Microchip MPLAB development environment allowing debugging using the Microchip tools but personally I find a few "serouts" normally suffice.
That is clever. On the "A" side of life, I just use a 328P-PU and burn the compiled code without a bootloader if I'm going to be using a dedicated chip. I can always re-flash with the ISP if I desire... I have a clamp-on clothespin type of adapter that connects to the dedicated-arduino-burner, with ZIF. In your case as in mine, the "pinout" and signal names are identical which really helps... I also have made little labels (Adafruit has the template for free) which affix to the top of the chip with the magic pin names... works great with double stick tape!

I own the Oshamsoft series of PIC/AVR compiler and libraries. The software-only simulations are OK, but certainly the PE simulator for PICAXE is more convenient for simple things and is adequate for most folks in the hobby/student areas.


- Ray
 
Top