HOME> > HELPFUL HINTS MENU   

--?

This page, as it stood in August 21, is available, translated by a human, into Italian, by Ahsan.
This page, as it stood in September 17, is available, translated by humans, into Macedonian, by Katerina Nestiv.

A number of translations have been dropped from this list, as they did not keep the "links must be direct" rule.

Schools or Hobbyist Programming or Electronics or both: Advice

Single board computers which hobbyists and educators and parents should consider
Microprocessor systems)

filename: hh9bardupi.htm

(You have options in perusing this page: see my Power Browsing advice.)



Electronics- so much fun, so little time

"Playing" with electronics can be huge fun, need not be expensive, isn't "dangerous", if you impose minimal, obvious restrictions on what areas you play with.

But, most of all, parents and educators, I commend it to you for your kids because it opens wonderful opportunities for kids to exercise their "muscles of creativity"... and craftsmanship, and design, and all sorts of other Good Stuff.



Microprocessors... NOT "rocket science"... or expensive... or dangerous

What's stopping you trying them?

And if you are going to "play" with electronics, before very long, or maybe as a starting point, I can't recommend microprocessor systems too highly.

Using them, you can concentrate on programming alone. Or you can concentrate on the electronics side... messing with "hooking things up" (to the microprocessor). Or both!



Image of Raspberry Pi, Arduino and BBC Micro:Bit

Two "and a half" candidates- Raspberry Pi, the Arduino ... (and the BBC Micro:bit)

There are, of course, other candidates. But I would suggest that you look at the Pi and the Arduino very carefully. I doubt you need to look further.

Unless... maybe... the BBC Micro:bit, is "the one for you". For £11 (about $15, and available in the USA, too) you would get what you need for a taste of "playing" with microprocessors. The Micro:bit would be a start towards Arduino or Pi work, if you are reluctant to go directly to one of the better microprocessors for some reason. Guess what? I've written a guide for the curious, to introduce the BBC Micro:bit, help you decide if you want to try one.



PLEASE: understand that these platforms are only superficially similar. They are all "good for things"... but very DIFFERENT things.

Why not Arduino? Why Pi?

This page began life to consolidate many posts I had made to places like Facebook (though usually more technical forums) prior to the end of 2013.

At that time, the Arduino was an excellent, mature, well supported project. And the Pi was a new thing, a celebrity, and I didn't think it was as good a device... then.

Today, it is certainly "as good", in general... but this page is still necessary because the Pi and the Arduino address very different design objectives, and you should think carefully before buying either, and get the one that addresses your wants!

Why are you considering a microprocessor? To learn programming? Good! To do stuff with electronics, cool stuff, controlled by a computer? Good!

But.

If your primary interest is learning programming, why not just do it on your existing computer? For real programming, with a very shallow learning curve, there is the somewhat eccentric, but still LOTS of fun, Logo.

You won't write the next killer app with it... but it is a free, fun and interesting programming learning environment which works well in schools. I like the free "MSLogo", link below. ay 11/13, it has been around for many years. While you can do simple things almost immediately, don't think that turtle graphics are the limit of the language's capabilities! You can, for instance, create a "3D" wire frame representation of a building, and then re-draw it from different points of view by changing just a few numbers in one line of the program. Cool! MSLogo

If you want something a little more "mainstream", something that serious Windows, Mac and Linux applications can be created in, consider Lazarus. Again: Free. With versions for each of the OS's listed. AND: Once you have written something in Lazarus for, say, Windows you can re-compile it to run on the other OS's.

It is a little harder to get started with than Logo... but you will not exhaust the possibilities of Lazarus in a lifetime. And it is reasonably mature, and well supported. I have a I have series of tutorials showing how to program with Lazarus.

Very much a "fringe" option, but if you just want to learn about programming, you might consider the modern Windows simulator of the venerable and excellent BBC Micro. It comes complete with the noises the disc drive used to make! (But only requires a simple Windows machine.) The BBC was designed to be learner- friendly, remember.

Programming and electronics

Either of those options, in my (somewhat informed... I started using computers in schools in 1968) view: Doing programming on your "ordinary" computer would be vastly better than Arduino or Pi, if you just want to learn about programming. (I'd suggest Lazarus, but that's a detail. There are many other good languages/ IDEs.)

However, if you want to go beyond what can be done with a keyboard, a screen, a hard disk, and a printer, you may want to consider a Pi or an Arduino, or even a BBC Micro:bit. (Or BasicStamp!).

When I say "go beyond", I mean get into the world of switches, LEDs, temperature sensors, motors, etc, etc, etc, monitored by/ controlled by "computers". But the "computer" may be much smaller than what is commonly meant by "computer".

And if you are tempted by these possibilities, then I say, emphatically: Go for it. You can have a lot of fun. And you don't have to spend a lot of money.

Personally, I would "go with" and Arduino. I'll argue the case in a moment. But before I do, I'd like to say that I admire the Pi. If it can re-kindle hobbyist programming, that that's great. But it just isn't necessary. Nor is it, I think, the best device for the job.

What Arduino and Pi both offer

With either an Arduino or a Pi, you can hook up switches and LEDs... and a lot more. And you can program the device to "do things". Scan the web for the things people do with either. (The Arduino Playground's Exhibition page lists many. Most of what you see there could also be done with a Pi.) For the sake of illustrating what it is all about, I will restrict myself to an Arduino or Pi with 4 push button ("momentary"... like a doorbell) switches, two red LEDs, two green LEDs.

With either, you could program the device to do different things when you press the switches. Let's call the switches "A", "B", "C" and "D".

Press "A", and the red LEDs flash, twice per second.

Press "B" and the green LEDs flash alternately

Etc... but you can have more than just four "programs". For instance, you could set things up so that pressing "D" on it's own did nothing, but if you held "D" down, and then pressed "A", the red LEDs would flash, as before, but ten times faster.

As I said- my device with switches and LEDs is just by way of illustration. You can do more meaningful things.

An old truth in electronics is that thinking something fun, useful and new to make is harder than doing it.


To make the buttons and LED toy I've described with an Arduino, you would use an ordinary PC (Windows, Mac, or Linux) to write the program. (The software is free and open source.) You would plug the Arduino into the ordinary PC, almost like plugging in a USB memory stick, "send" the program to the Arduino, and then it would Just Work.

With the Pi, you could work as above, OR (more likely), you would write the program in the Pi.

Again, once the program was done, even if you did use the ordinary PC to create the program, your need for the ordinary PC would be finished.

Pi and Arduino: Differences

The Arduino is much more mature than the Pi. It has a huge following of experienced users. The Arduino forum already has the answers to, literally, hundreds (if not thousands) of newbie questions and concerns... and a host of people standing by ready to give (knowledgeable) help, even if you are asking for help with an issue that has already been discussed many times. (Do use Google Search or similar to look for a prior discussion of your issue before asking a question? You'll probably get your answer more quickly, just for a start. Join the forum. Search there, with the forum's search tool.)

But, at this point (2021) the Pi is also here to stay, also has a huge following, well established support community.

The Arduino is available from multiple distributors, as is the Pi, but also from multiple fabricators, and in several variants. It is a mature design, with many early mistakes ironed out.

Arduinos come "ready to go". You give them power, and the LED flashes, to reassure you that the hardware is okay. (You will over-write that "flash the LED" program as soon as you send your first program to the Arduino... but it only needs your program. The rest of what it needs is already "in" it, and in a "safe" place.) You don't have to build (or rely on) an OS image to go in a discrete memory card. You don't need a keyboard, etc.

Another difference: The Arduino is programmed with a version of C++. This, folks, is not rocket science. Some people make C++ look like rocket science. But whether you are learning the Arduino language or one of the Pi languages, you are going to have to do a little work... and the language the Arduino uses is not going to be a barrier to anyone who is capable of surmounting the other obstacles. (Programming and electronics are not, after all, hobbies you often see pursued by the "developmentally delayed"... was there ever a more patronizing, poor, PC term?)

Price: A Pi costs... what?... I'm not a Pi expert... £25? Then you have to dedicate a keyboard to it (or keep switching your keyboard back and forth between the Pi and the keyboard's day job). And a monitor. And a memory card (or two). And an HDMI cable.

Now... that was written a while ago, as of 4/16, when I am overhauling this page.

I'm still not a Pi expert, but I believe you can now "operate" it "remotely" across a LAN. If you have the expertise. Frankly, myself? I'd dedicate a keyboard and monitor... but I am NOT a Pi expert, as I've said.

A simple Arduino, assembled?...

A basic device, comparable to "the Pi", in the above, from http://www.coolcomponents.co.uk/: £8.50 (Arduino Pro Mini 328 5V/16 MHz Product Code : 000351). You'd have to add some headers to that (£2?). And for either Pi or Arduino, you'd want a breadboard, for easy prototyping.

In addition, you'd need an ordinary PC, and a "FTDI cable", £15 to do it the easy way ( USB to Serial TTL Cable (OEM FTDI Cable), Product Code : 000356), or £8.60 (FTDI Basic Breakout, Product Code : 001005) to save money, if you use a USB cable of the sort of which you probably have three already.

And that's just to START. What happens if, as I do, you have your front door controlled by an Arduino? I have an £8.50 device (plus the RFID reader and electromechanical strike plate) tied up doing that, and for my next Arduino project, I spend a further £8.50. With a Pi, if I wanted two Pi driven projects running at the same time, I'd be looking at 2 x £25, minimum.

If you don't mind some simple soldering, you can buy Arduino kits. If you want built in ethernet, more i/o lines, etc, etc, you buy a whole range of fancier Arduinos.

... And the Pi...?

As I said... I'm not a Pi expert. But I think I know enough. Re-read what I wrote about the Arduino, and infer the complement: Arduino- mature/ Pi- less mature; Arduino- big community/ Pi- smaller community. Etc. Note in particular the cost of playing with a Pi, vs an Arduino. I've cited a very basic Arduino in my costings, but that "little" Arduino can do amazing things. And if you spend £25, you'll get an Arduino that will do even more.

A quick note for people who decide to give the Pi a try. (Which I have been trying to do, myself, for years!)... Do yourself a favor. It will cost you next to nothing beyond the cost of a suitable SD card... which you need to buy anyway. Buy a card with the Raspberry OS pre-installed. BUT!!!... BEFORE you fire it up in a Pi, EVEN FOR "just a quick trial", Make a backup. It isn't hard, but it is MORE THAN merely taking a copy of the files on the card. All is very well explained at a tutorial page from PiHut.com. (Do it before you try the card out, because the first thing the Pi does with a card like that is go into an initialization... changing some of the things on the card... I think. It certainly COULD, in theory!)

(4/19: I used the backup routine on a µSD card I'd been using in a Pi for a bit. When inserted into my Windows 10 machine, File Explorer "went mad", seeing four "new drives", several of which "needed formatting". DON'T! (Format those drives). I found the one that has SOME readable material, and asked Win32DiskImager to image that. The size of the resulting file suggests that ALL of the card was successfully imaged.)

April 2016 update to previous paragraph...

I still believe the Arduino is more mature, better supported, etc, etc... but I will concede that, today, the Pi is more than adequately mature, supported, etc.

I also greatly admire Ebden Upton, one of the visionaries... and hard workers... behind the Pi for several decisions he made and has stuck to, to serve some of the goals he has for the Pi.

He wants it to be "a way in" to electronics, computing, etc. for today's beginners. There are aspects of the Pi that pay homage to the tremendous contribution of "the BBC Micro" in the 1980s. (It was a pity that the BBC Micro initiative failed to expand significantly beyond Great Britain. It was brilliant, and started many rewarding journeys.) I really don't know how we "lost our way" in the 90's and onward.

Computing is more than just "fun". It can be a very worthwhile pursuit.

So, go on, get stuck in! I don't care which route you go down, Pi or Arduino... as long as you get yourself past "newbie" on one or the other.

If in hindsight, you feel you ought to switch camps, it won't cost you much, anyway.

Just Do It!



In conclusion- again. (This is the old conclusion!)

As I said before: Thinking of trying programming, and/ or getting to grips with processor controlled electronics? Do it! You could have a lot of fun. You don't need to spend a lot of money. If you were my child, I'd give you an Arduino... in addition to showing you things you could do with "just" a laptop. But the Pi has things to commend it, too.

Ready to get going? With an Arduino, I hope, if you are going directly the programming- with- hardware? You may not be surprised to learn that I have Arduino tutorial pages for you! If you're not quite convinced, yet, I've also done a really short (!) page, listing What You Need to get started with Arduino.



Search across all my sites with the Google search button at the top of the page the link will take you to.
Or...

To search THIS site....

(Click this to search the site without using forms, or just use...)

Powered by FreeFind

Site search Web search

The search engine merely looks for the words you type, so....

Please also note that I have other sites; this search will not include things from them. Each site has its own search button.

My SheepdogGuides site.
My site at Arunet.

Ad from page's editor: Yes.. I do enjoy compiling these things for you... I hope they are helpful. However.. this doesn't pay my bills!!! If you find this stuff useful, (and you run an MS-DOS or Windows PC) please visit my freeware and shareware page, download something, and circulate it for me? Links on your page to this page would also be appreciated!
--Click here to visit editor's freeware, shareware page.--

Other projects

This is part of just one of my web sites. Please visit any of the following....

Main table of contents for all my "Helpful Hints" pages
Delphi Tutorials
Pascal programming tutorials
Electronics for hobbyists and schools
Main Home Page... various topics, not all computery.


You can email this page's editor, Tom Boyd. Click here for details.

Test for valid HTML Page has been tested for compliance with INDUSTRY (not MS-only) standards, using the free, publicly accessible validator at validator.w3.org. It passes in some important ways, but still needs work to fully meet HTML 5 expectations. (If your browser hides your history, you may have to put the page's URL into the validator by hand. Check what page the validator looked at before becoming alarmed by a "not found" or "wrong doctype".)

AND passes... Test for valid CSS

-- Page ends --