Vote for your favorite ATmega1284P pins

Potential project: I would like to consider collaborating with this forum community to design a Pro-Mini-sized board based on the SMD ATmega1284P-MU. Pro Mighty Mini. This would be smaller than the Mighty Mini and Bobuino. Just like on the Pro Micro compared to Micro, some pins will be omitted. There are plenty of cases where all is really needed beyond a Pro Mini is more memory and/or extra serial. So, serial0 and serial1 pins and the ISP pins need to be included at a minimum. What else to include, to make a good general purpose board?

My initial thought is:
PB4
PB5
PB6
PB7
PC0
PC1
PD0
PD1
PD2
PD3
PD4
PD5
PD6
PD7
PA0
PA1
PA2
PA3

Probably room for 2 more pins if the Serial0 pins on the programming header are not duplicated on the long side.

Is anybody interested?

...to design a Pro-Mini-sized board based on the SMD ATmega1284P-MU

Question: what price range?

The reason I ask is that you are talking about 8-bit technology. Once you get a totally burdened price near the $18 range, the existing Teensy is a far superior option, IMO. In the $4 range is the 32-bit 72MHz STM32F103 Maple Mini Clone!

Once you go custom in a small-form-factor, the value of existing shields is lost. The value become primarily in smaller size and added clock/flash/SRAM... the 1284P gives 2 out-of three.

"Headroom" is an issue in the lower-end products, but there are existing options. I applaude your thoughts on the 1284 mini, but for my money, the STM32 is the best bang for the buck. I've even been using ESP8266 with the RF disabled for situations where large flash and SRAM are required ... available about $3.25 USD.

Ray

That is an excellent point. Well the 1284 chip is about $5 USD in QFN package. A small run of a dozen or so should be about $10 to $12 ea. I guess that is too much isn't it?

dmjlambert:
That is an excellent point. Well the 1284 chip is about $5 USD in QFN package. A small run of a dozen or so should be about $10 to $12 ea. I guess that is too much isn't it?

Maybe.

On your side is nearly unchanged code port from UNO.
Also, it could be a fun project for yourself.
The AVR has a proven low-power lib.

But, I do not know how much excitement will be generated by an open invitation for boards.

Ray

So your idea would include a 5V regulator? I prefer to keep that separate and power projects from a 5V wallwart, or 3 AA batteries perhaps.
Extra power & grounds are always nice. ICSP header & Serial port come in handy too for bootloading and serial downloading as an option. Maybe a power LED and a couple LEDs to let you know when there is serial activity.
http://www.crossroadsfencing.com/BobuinoRev17/

I think leaving any pins off is a bad idea.

CrossRoads:
I think leaving any pins off is a bad idea.

Exactly.

About the price: I saw Mighty Mini ATMega1284p board for 23USD so the price at half sounds very good. However, in compare with other boards like mrburnette mentioned is still too much, just for 1284's fans not..

Crossroads and wickedDevice both have 1284 boards that map pins on to the standard uno shield layout.
Copy one of those... (Especially if they are the same!)

I think you should stick with the commonly used Bobuino pinout. It's widely used, and supported by most cores.

CrossRoads:
So your idea would include a 5V regulator? I prefer to keep that separate and power projects from a 5V wallwart, or 3 AA batteries perhaps.
<...>

Yuck.... wall warts are a P.I.T.A. since the long wiring adds resistance and voltage regulation becomes a function of the Arduino board's current draw. Over-voltage warts like 9V & 12V require the power regulator to be on the Arduino board and heat disciparion for linear regulators may be a real problem for "mini" boards. DC-DC converters are the best design option but do add to the overall price.

Ray

I think you should stick with the commonly used Bobuino pinout. It's widely used, and supported by most cores.

I think leaving any pins off is a bad idea.

Well, the whole point of the project would be to reduce pinout and make it the size of a Pro Mini or Pro Micro. Breaking out all the pins would be re-inventing the Bobuino or Mighty Mini. The cores used for Bobuino or Mighty Mini would still work fine, just some of the pins defined in the pins_arduino.h would not operate any pin on the headers. This is exactly the treatment the Pro Micro gets. The designer simply omitted pins from the header, but the Leonardo core works. I could use the Pro Micro Eagle files with modifications to re-arrange the pins going to the QFN44 package and remove the USB connector and replace with FTDI header.

westfw:
Crossroads and wickedDevice both have 1284 boards that map pins on to the standard uno shield layout.
Copy one of those... (Especially if they are the same!)

There would be some anomalies to deal with for I2C and I would not be wanting to give those pins the same oddball treatment as done on the Pro Mini. So some of the pins need to be sacrificed from the Arduino pin numbers 1 through 13 and A0 through A3 lineup, and replace with other more interesting pins.

mrburnette pointed out in reply #1 the project may not be worth messing with.

dmjlambert:
Well, the whole point of the project would be to reduce pinout and make it the size of a Pro Mini or Pro Micro. <...>
mrburnette pointed out in reply #1 the project may not be worth messing with.

Yep.

In the under $5 category from AliExpress, I know of 2 extremely capable candidates that would run rings around the 1284... and run at the lower 3.3V to reduce current in battery powered projects.

In the 80MHz to 160MHz core range with WiFi: NodeMCU

In the 72MHz (overclockable to 100-120MHz) is the Maple Mini STM32F103

Again, building ones own board from scratch is a most educational experience but it will be impossible to produce a 1284 board in low quantities for under $5.

I use both of the products I referenced - the disclaimer is that your experience may be different from mine. Also, the ESP8266 core is probably a bit more mature than the stm32duino.com core, but in my experience the STM32 Maple Mini is a fine device and I have many projects on my page using the device successfully.

Out of courtesy and respect for the for Arduino.cc (vendor sponsored forum), I'm going to terminate my discussion of clones. I do wish to say this however: I own UNO and Mega official boards and I purchased these from licensed U.S. dealers. Yes, there was a cost for the purchase but some of that money goes into the sponsorship and maintenance of this forum. If you are going to play in Arduino-land, start with Genuine Arduino products and use these as a baseline for your education.

Ray

wall warts are a P.I.T.A. since the long wiring adds resistance and voltage regulation becomes a function of the Arduino board's current draw.

I would think resistance would only be a problem if the wallwart used undersized wiring and the board was drawing high current. Since the discussion is for a Pro-mini type board, which only has a 150mA capable regulator, high current would not be an issue. I have not seen any wallwart that puts out less than 1 Amp with an output cable to match - so 5V at the board is not an issue. Not having a regulator on board helps keep board size small, cost down, and lets it run cooler.

5V parts and 20mA capable IO are great when driving LEDs, which 3.3V boards can have problems with. One doesn't need blazing fast processors for all projects. Being able to prototype with a breadboard friendly part before transitioning to a small board for the final project is also important for many folks. Choice is good.

CrossRoads:
I would think resistance would only be a problem if the wallwart used undersized wiring and the board was drawing high current. Since the discussion is for a Pro-mini type board, which only has a 150mA capable regulator, high current would not be an issue. I have not seen any wallwart that puts out less than 1 Amp with an output cable to match - so 5V at the board is not an issue. Not having a regulator on board helps keep board size small, cost down, and lets it run cooler.

Ummm... good point, lots of assumptions however.
Cool can be done with a DC-DC buck board and is far more efficient. I have personally had issues with wall-warts and the ESP8266 with peak currents in the 600mA range. And it was a name-brand cellphone charger rated at 1A but there was enough voltage sag that the device would randomly reboot.
If I have time this weekend, I'll bring down a few beers to the lab and bring up the Rigol capture application and take a few JPGs of the scope captures.

CrossRoads:
5V parts and 20mA capable IO are great when driving LEDs, which 3.3V boards can have problems with. One doesn't need blazing fast processors for all projects. Being able to prototype with a breadboard friendly part before transitioning to a small board for the final project is also important for many folks. Choice is good.

The 5V / 3.3V argument is an old one ... getting older every day ... 'bout like the 8-bit vs 32-bit argument.
IMO, the real argument is headroom, primarily in SRAM but flash requirements are growing daily.

I'm not talking about blinking LEDs here... useful application programming often requires some decent size buffers; the Atmega328P is a bit thin with only 2K. The STM32F103 has 20K. Do the math... the price on the clone market is $2 vs $4.
And then there is the clock frequency of 16MHz vs 72MHz.

So, I champion your statement "One doesn't need blazing fast processors for all projects." but I also suggest that if you have been in this hobby for over a year and are having frets about memory usage (SRAM or flash) it is time to look beyond the AVR 328 and move up to Due or something else like the Maple Mini clone.

To the argument that constrained resources make better programmers (the very old mainframe analogy) that is just bull. Any decent craftsman knows that a struggle with inferior tools is never a good path; rather, embrace the corrects tools for the job at hand.

Yes, 8-bit low-resource AVR chips (inc tiny85) have a long life ahead - but not for the serious tasks of distributed processing and IoT outside of the sensor buffer/drivers feeding into more capable uC's.

Please learn on the 8-bit devices because those units are very, very well documented and examples are everywhere. But when you hobby grows-up, do not struggle for days trying to optimize code ... just move up the technological roadmap and use the same, familiar Arduino GUI but a more capable uC.

Evolution.

Ray

Many folks are not in this for a huge code writing exercise, but do need lots of IO. For example, I am doing a design to talk to a GSM/GPS shield, drive a bunch of relays, and read several temperatures & logic levels. '1284P with dual hardware serial is great for that. Plenty of code space, plenty of SRAM, plenty of speed. That's an example of where an 8-bit processor is plenty, even for commercial use.
Like I mentioned, plenty of options exist for everyone.

mrburnette:
Ummm... good point, lots of assumptions however.
Cool can be done with a DC-DC buck board and is far more efficient. I have personally had issues with wall-warts and the ESP8266 with peak currents in the 600mA range. And it was a name-brand cellphone charger rated at 1A but there was enough voltage sag that the device would randomly reboot.

Chargers are not exactly power supply, maybe the 1A current is available, but not at stabilized voltage, and that it's ok for recharging a battery, but not to supply a device which need a constant voltage.

Cheers, Ale.

I'm not here to quarrel, but one should always stay updated, even if you don't need the grunt of a 32-bit MCU yet. Let's take Crossroads' example. An ATmega1284p might be perfect for that application, but what's the price of that microcontroller; 7.67$! That's WAY too much (IMO) for an 8-bit MCU!

Now let's have a look at the Maple mini's microcontroller; the STM32F103CBT6. It got 128kB of flash (with DMA), 20kB of RAM, running at 72MHz, TONS of peripherals (3 USARTS, 5V tolerant IO, 9 12-bit analog input, native USB support), GCC compiler and Arduino support. The best; for the price of 3.51$ ar digikey (~4$ for the Maple Mini board)

The ATmega1284p is a great MCU, no doubts! It's just that the STM32 is cheaper, MUCH more powerful and got more peripherals

hansibull:
<...>
The ATmega1284p is a great MCU, no doubts! It's just that the STM32 is cheaper, MUCH more powerful and got more peripherals

Yes. This is how an engineer should think: the job at hand, the scope of work, the lifecycle, the scope-creep, longivity and maintainability, and component costs.

Compromise is not always required. But, if sink/source current needed to be 25mA per output pin and 5V was required anyway and 16K SRAM was adequate and 16MHz was adequate then the AVR 1284 may be the proper uC even at the higher cost.

Folks, it is all about thinking beyond your nose :slight_smile:

Many of us are old enough to remember using slide rules and then in college having the privilege of using a scientific calculator. Sometimes one just has to move on...

Ray