The Raspberry Pi is a truly revolutionary device that democratizes PC technology by giving people a cheap, open, and easy to use piece of hardware. That hardware is backed by a wealth of user training and support resources. Raspberry Pi is showing up everywhere from professional IT projects to an army of DIY projects. However, you shouldn’t let its simplicity fool you; even though it is a fairly intuitive platform, developers and engineers can always use some advice from people who’ve been there and done that. Here are a few important things you should know before you start any development project on the Raspberry Pi.
Recognize When to Use Raspberry Pi
Raspberry Pi is similar to a personal computer. Depending on the model, it could have up to 1.2 GHz controllers, a gig of RAM, USB ports, LAN, an HDMI port, a camera, audio jacks, GPIO pins, and Bluetooth. This makes it almost plug and play with any computer hardware. The intelligence built into it means it can do things you could do with a computer, such as manipulate video or control a 3D printer. However, the variety of hardware it can interface with means it could be used in almost any robot and new forms of smart technology. Just don’t try to use it in place of a full PC or server when that power is called for.
Choose the Right Power Supply
In every case, you’ll want to get a proper power supply for the Raspberry Pi. While you could draw power from the computer’s USB port, the average computer port doesn’t have enough power surplus to provide a reliable power supply. Variations in power levels can cause the Raspberry Pi to freeze or even corrupt the SD card. You can eliminate these issues by buying your own two amp power supply, but Raspberry Pi version 3 needs at least 2.5 amps. Expect the next generation of Pi to draw more current. The Raspberry Pi draws anywhere from 100 to 300 milliamps in idle mode.
Whatever you do for power, ensure that your cables and power supply can meet it if you want the software to perform flawlessly. Note that Raspberry Pi doesn’t have a power switch or reset button. Yet, you don’t want to have to unplug and reconnect the power cable every time it freezes. One solution is a USB cable with an on/off button. Don’t try to power the device through the GPIO pins. While it is possible to do this, you must bypass the protective fuse on the board. If the fuse pops, you can reset it or replace it. Burn out the board while bypassing the fuse, and you’ll probably destroy the Raspberry Pi.
Don’t Reinvent the Wheel
The beauty of the Raspberry Pi is that it is compatible with nearly everything and can be the core of almost any type of device. This gives you the opportunity to design hardware that connects to the Raspberry Pi.
Don’t waste time trying to design entire circuit boards or electrical systems. If you want to make things easier, you can visit a site like Gumstix.com and use their Geppetto tool. It’ll allow you to drag and drop the type of components you want, such as input ports, outputs, and sensors. The rough electronic blueprint can then be sent to electrical engineers who will come up with a viable hardware design based on your schematic that can then be built as a prototype or as a mass-produced item. This will give you more time to develop the software interface or code that’s key to your application.
Learn about the Software Options
Raspberry Pi devices typically use a purpose-built version of Linux called Raspbian. This is a combination of the words Debian (a distribution of Linux) and Raspberry. A Raspberry Pi can run other operating systems, but this adds unnecessary complexity in most cases.
The default programming language for Raspbian is Python. In fact, the Raspbian operating system image automatically comes with the Python development environment. Expect to be working on Python for most Pi projects. However, there are two main versions of Python itself. The Integrated Development and Learning Environment, or IDLE 2, lets you run Python 2. IDLE 3 should be used for Python 3. You could save time and effort by using others’ code or programs available online. However, Python 2 and 3 code are not interchangeable, since there are differences in their naming conventions and syntax. However, you can sift through Python 2 code and make it compatible with Python 3.
Another common hang-up comes to device formatting. You may want to get an SD card with more than 32 gigabytes, but Raspberry Pi can only read FAT32. The work around is formatting the SD card with a FAT 32 file system and only doing so after you’ve confirmed the SD card is compatible with Raspberry Pi.
Now, Go for It
The Raspberry Pi is an incredibly versatile tool and one with quasi-infinite possibilities. If you follow our advice, you’ll be able to avoid the costly pitfalls that sink so many projects and ensure that your first one is a breeze.