Go Down

Topic: Looking for a more inexpensive microcontroller for my project. (Read 1 time) previous topic - next topic

adrian_h

Apr 10, 2013, 11:52 pm Last Edit: Apr 11, 2013, 12:00 am by adrian_h Reason: 1
I stumbled upon the Arduino Pro Mini and thought that this would be a great little guy to use for my project.  But I see that it is now retired (https://www.sparkfun.com/products/9218). I was looking at comments and found that some have stated that it is unreliable, possibly due to the crystal.  However, these comments are 2-3 years old.

Does anyone know if this is the reason why it was retired?  Were they made more reliable later prior to retirement?  Does anyone have more recent info on this?  If this isn't reliable, is there an more inexpensive board out there that I could use for my project.

I require 2 analog ins, 5-7 digital outs (4 for an H-bridge, the rest for LEDs).  I ran across the ATtinys but I'm not sure they have enough memory (haven't looked into it far enough and am having trouble figuring out the download procedure).

Thanks.


Adrian
I'm a programmer dammit, not an engineer! :D
Like this post?  Please give me some karma for it.  Thanks! :)

HazardsMind

You can get an Arduino Nano or even the Micro on EBay for $12 - $20.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

PeterH


I require 2 analog ins, 5-7 digital outs (4 for an H-bridge, the rest for LEDs).


The Baby Orangutan is tiny, cheap, and has an integral dual H-bridge driver that's good for about 1 Amp per channel.
I only provide help via the forum - please do not contact me for private consultancy.

cwhummel

#3
Apr 11, 2013, 12:32 am Last Edit: Apr 11, 2013, 12:37 am by cwhummel Reason: 1
If you look in the very first line of the pro mini description on sparkfun, they link to a $10 replacement.

https://www.sparkfun.com/products/11113
"Beer is proof that god loves us and wants us happy" - a popular misquote of Benjamin Franklin, but true nonetheless.

CrossRoads

Gravitech still carries them too
http://www.gravitech.us/arpromi5v.html
http://www.gravitech.us/arpromi3.html
Not unreliable at all. I have about 10 of them running, turned on en masse 3 times a week for a couple of hours at a time.

Want to go smaller?
https://solarbotics.com/product/kardw/

Make your own board?
http://www.nkcelectronics.com/arduino-runtime-board-rev-b.html

Or surface mount?
http://www.crossroadsfencing.com/BobuinoRev17/ $3 a bare board, includes US mail (to US address)



Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

Chagrin

I require 2 analog ins, 5-7 digital outs (4 for an H-bridge, the rest for LEDs).  I ran across the ATtinys but I'm not sure they have enough memory (haven't looked into it far enough and am having trouble figuring out the download procedure).


It's worth it to learn how to use a bare chip like the ATTinys. As far as enough memory goes you just have to look at the size of your compiled script to know what you need. But if you think you still need the full 32K you can just buy a bare ATMega328P-PU for under $3; programming it is the same as with the Micro.

adrian_h



I require 2 analog ins, 5-7 digital outs (4 for an H-bridge, the rest for LEDs).


The Baby Orangutan is tiny, cheap, and has an integral dual H-bridge driver that's good for about 1 Amp per channel.

Thanks Peter, but looking for something around the $10 mark.


If you look in the very first line of the pro mini description on sparkfun, they link to a $10 replacement.

https://www.sparkfun.com/products/11113

Doh, not sure how I missed that. :/  Thanks cwhummel.

Crossroads, lets not get crazy now. :D  Great info though.  Thanks.

Chagrin, yeah, I'm getting interested in trying out bare chips.  Since these projects are probably going to be battery operated, I probably won't need any voltage regulator so long as I don't go above the specified voltage, right?  But I will have to somehow indicate or shut off the system when the voltage has dropped below the spec.  Is there a circuit to redirect the power to stop powering the chip and just flash an LED or chirp a speaker?
I'm a programmer dammit, not an engineer! :D
Like this post?  Please give me some karma for it.  Thanks! :)

adrian_h


You can get an Arduino Nano or even the Micro on EBay for $12 - $20.


Good to know.  But I see that I can buy the newer Pro Mini for around $10 near me.  Thanks.
I'm a programmer dammit, not an engineer! :D
Like this post?  Please give me some karma for it.  Thanks! :)

PeterH


Thanks Peter, but looking for something around the $10 mark.


Including the H-bridges? Getting a board with integral devices usually ends up much cheaper (and simpler) than buying the devices separately.
I only provide help via the forum - please do not contact me for private consultancy.

Chagrin


Chagrin, yeah, I'm getting interested in trying out bare chips.  Since these projects are probably going to be battery operated, I probably won't need any voltage regulator so long as I don't go above the specified voltage, right?  But I will have to somehow indicate or shut off the system when the voltage has dropped below the spec.  Is there a circuit to redirect the power to stop powering the chip and just flash an LED or chirp a speaker?


If your battery is of appropriate voltage then no, you don't need a regulator.

The AVR chip itself can monitor its own battery voltage. You have to set the analogReference to INTERNAL (which is 1.1V) or use an external voltage reference such as a TL341 and then measure the battery voltage against that. Once your chip recognizes that the battery is low you can set it into a sleep mode, waking it periodically to blink your LED, etc. and that will be much simpler and more efficient than any external monitoring circuit.

adrian_h



The AVR chip itself can monitor its own battery voltage. You have to set the analogReference to INTERNAL (which is 1.1V) or use an external voltage reference such as a TL341 and then measure the battery voltage against that. Once your chip recognizes that the battery is low you can set it into a sleep mode, waking it periodically to blink your LED, etc. and that will be much simpler and more efficient than any external monitoring circuit.

Isn't 1.1 V too low a voltage?  Doesn't that mean that if the voltage goes above 1.1V that the value returned will just be maxed out at 1023?
I'm a programmer dammit, not an engineer! :D
Like this post?  Please give me some karma for it.  Thanks! :)

Chagrin




The AVR chip itself can monitor its own battery voltage. You have to set the analogReference to INTERNAL (which is 1.1V) or use an external voltage reference such as a TL341 and then measure the battery voltage against that. Once your chip recognizes that the battery is low you can set it into a sleep mode, waking it periodically to blink your LED, etc. and that will be much simpler and more efficient than any external monitoring circuit.

Isn't 1.1 V too low a voltage?  Doesn't that mean that if the voltage goes above 1.1V that the value returned will just be maxed out at 1023?

Yes, that's correct; you would need to use a voltage divider to keep it under whatever your reference voltage is. Well, point being that you have to compare the battery voltage against some known reference. Leaving it as analogReference(DEFAULT) would be comparing it to itself.

retrolefty





The AVR chip itself can monitor its own battery voltage. You have to set the analogReference to INTERNAL (which is 1.1V) or use an external voltage reference such as a TL341 and then measure the battery voltage against that. Once your chip recognizes that the battery is low you can set it into a sleep mode, waking it periodically to blink your LED, etc. and that will be much simpler and more efficient than any external monitoring circuit.

Isn't 1.1 V too low a voltage?  Doesn't that mean that if the voltage goes above 1.1V that the value returned will just be maxed out at 1023?

Yes, that's correct; you would need to use a voltage divider to keep it under whatever your reference voltage is. Well, point being that you have to compare the battery voltage against some known reference. Leaving it as analogReference(DEFAULT) would be comparing it to itself.


There are a couple of different methods to allow a arduino to 'measure' it's own Vcc voltage. Perhaps the easiest is to just wire the shield's 3.3vdc pin to a unused analog input pin and use the resulting reading as a compensation value to compute what the internal Vcc reference (actually Avcc) must be.

Another method is to select the analog input mux to read it's internal 1.1vdc band-gap voltage directly and then 'reverse calculate' what the Avcc voltage must be.

Lefty

adrian_h

So, as long as the voltage is higher than 1.1V, even if the rest of the system has dropped below 5V or 3.3V (depending on hardware), it will get an accurate reading for 1.1V?  Does the chip have an on board voltage regulator to ensure an accurate 1.1V over a range of voltages so it can be done just using the bare chip?
I'm a programmer dammit, not an engineer! :D
Like this post?  Please give me some karma for it.  Thanks! :)

retrolefty


So, as long as the voltage is higher than 1.1V, even if the rest of the system has dropped below 5V or 3.3V (depending on hardware), it will get an accurate reading for 1.1V?  Does the chip have an on board voltage regulator to ensure an accurate 1.1V over a range of voltages so it can be done just using the bare chip?


The band-gap voltage can be considered a 'regulated' source not effected by Vcc variation. However while it's a pretty constant value for any specific AVR chip the actual value of the band-gap is subject to a device tolerance specification. So one does have to derive what their specific band-gap voltage is if they are going to use it for 'calibration' purposes.

Lefty

Go Up