Best micro controller for pocket handheld computer?

I am going to try and build a small portable handheld micro controller computer with an lcd screen, a keyboard, and possibly some other suprises such as bluetooth, wifi, an sdcard, or maybe I'll even play around with fram/sram. The problem is I can't decide on a micro controller to use. I want it to be powerful because it needs to run TinyBasic, but i've only really played around with arduino projects that don't require much processing power at all. I have narrowed it down to an external atmega328, a teensy, or a pic32.
The atmega328 is not that powerful and the teensy, and pic32 are. Then again I am going to be programming the micro controller using the arduino IDE and some arduino libraries, so I want something arduino compatible. What do you suggest I go with?

P.S. if their are any other chips you think I should consider please tell me.
Edit: I have really only had experiance with arduino in the past and also, don't suggest anything difficult to solder as I'm definitely not a pro at soldering.

TimTheEnchanter:
it needs to run TinyBasic...
...I am going to be programming the micro controller using the arduino IDE and some arduino libraries

Hello, that's confusing. The Arduino IDE allows programming in C/C++, not BASIC!

Have you seen these? Or these? They can be programmed in a version of BASIC. Although I have not used them myself, I have seen then demonstrated by the guy that designs & makes them. I see him every couple of weeks, so I can ask questions for you. Or contact him by email, the address will be on his site somewhere.


Paul

actually there are dozens of basic (my favorite hll) interpreters and a few compilers written in c and even arduino.

imo arduino or at least avr excellent platform for a basic battery operated handheld. m2560 would be my choice because most features and flash. or m128 with almost as much and better bang for the buck. 2.5" or 3.5" touch tft. os similar to cpm or msdos. ive been considering similar project for many years and several brief attempts. maybe time to follow through.

If you need lots of RAM (and still want to use an AVR) I'll suggest you should stick with the ATmega1284, with 16kB of ram and 128kB of flash. Ion you need lots of IO, you could always use the ATmega128. It got 4kB of RAM, 128kB of flash, but 54 IO pins, and cost about a dollar at Ebay.

Or, you could use the ESP8266. An Arduino compatible Wifi microcontroller running at either 80 or 160MHz. It's a beast when it comes to features and performance, and the price is unbeatable! :slight_smile: It doesn't got as many IOs though..

john1993:
or m128 with almost as much and better bang for the buck.

hansibull:
Ion you need lots of IO, you could always use the ATmega128. It got 4kB of RAM, 128kB of flash, but 54 IO pins, and cost about a dollar at Ebay.

lol. great minds think alike. it is one of my favorites.

Thanks for all the excellent answers! Yes, I will be using a BASIC interpreter similar to this. I think the ESP8266 seems like a great idea as it seems that I can use it the same way I use an arduino and everything should be compatible. I may stick with an atmega though, we'll see. Any further suggestions would be welcome though!

My attention has just been drawn to Micro Python which may be a more practical alternative to BASIC. (EDIT: apparently this requires a lot of memory so i'll have to see about this)

The TI launchpads are pretty powerful and some have built in screens.
http://www.ti.com/ww/en/launchpad/launchpad.html?DCMP=mcu-launchpad&HQS=launchpad

But is sounds like you are making one of these:

Use a cheap smartphone. OS, Touchscreen, WiFi, Bluetooth, GSM, Accellerometer, GPS, ...

All in a neat package with builtin accumulator.

Whandall:
Use a cheap smartphone. OS, Touchscreen, WiFi, Bluetooth, GSM, Accellerometer, GPS, ...

All in a neat package with builtin accumulator.

I understand what you mean, but that would ruin the point. Half the point is to make something from scratch for the thrill, and the other half is to make something that has more features than a smart phone, or else it wouldn't have any use.

KeithRB:
The TI launchpads are pretty powerful and some have built in screens.
http://www.ti.com/ww/en/launchpad/launchpad.html?DCMP=mcu-launchpad&HQS=launchpad

But is sounds like you are making one of these:

Yes the TI launchpad looks intriguing and, I am making a glorified version of one of those :slight_smile: .
Also I think I am leaning towards a PIC or the ESP8266 but it might be too big a change.

Thanks for all the great replies, I think i'm coming to a decision!

EDIT: One thing to point out is that while the Launchpad seems almost perfect for this application it would really make it too easy as there is not much more to do but build a case and a keyboard.

TimTheEnchanter:
Half the point is to make something from scratch for the thrill, and the other half is to make something that has more features than a smart phone, or else it wouldn't have any use.

Reinventing the wheel just for fun is ok, building bulky, slow and featureless gadgets is a waste of time and money. Building something from scratch that comes even close to a very basic smartphone (dimensions, features, housing, power, screen, os, ...) is nearly impossible for a single person. IMHO

Whandall:
Reinventing the wheel just for fun is ok, building bulky, slow and featureless gadgets is a waste of time and money. Building something from scratch that comes even close to a very basic smartphone (dimensions, features, housing, power, screen, os, ...) is nearly impossible for a single person. IMHO

I agree with you that it is nearly impossible to make a device as fully featured as a smartphone, but you can still give it new and interesting features. For instance, what manufacturer is going to build a phone with GPIO pins, and therefore complete expand ability. I also think that part of the idea is to learn a lot more on the way (For instance, i'm jumping straight in to embedded standalone micro controllers from arduino which will really expand my knowledge). Anyway, your right that this project is mostly for fun, I just didn't want to discourage anyone from trying something simmilar :).

Thanks again for all the great ideas everybody!

A bluetooth/WiFi enabled micro with GPIOs could bring the I/Os to any smartphone.
A nodemcu or some other module based on the ESP8266 could be used now, or an ESP32 in the future.