18 Most Helpful Raspberry Pi Tutorials

The Raspberry Pi

After having grazed the maker’s ecosystem in the year 2012, the Raspberry Pi has attracted a huge number of hobbyists and tinkerers all over the world. It has been the world’s most popular single board computer and a close competitor to the Arduino since then. If you have never heard of the Raspberry Pi, then look at wikipedia article.

Despite the huge fame that has followed the Raspberry Pi and some amazing projects created with it, some questions are still being asked like; What can you do with it and why would you want to? I remember when I first got my own Raspberry Pi back in 2013, I never touched it for about a year because this sort of questions was ramping on my head and couldn’t find any convincing answer then.

The Raspberry Pi is a great single-board computer that has grazed the surface of the earth with some amazing power and capabilities that are often underestimated. There is hardly anything you can not build with the Raspberry Pi, and yes, you can even build a Raspberry Pi Artificial Intelligence Cluster (build your own Jarvis, my favorite project). If you’re new to the life of Pi or mid-level into the into Pi then this post will provide some helpful Raspberry Pi tutorials and resources to help you fully utilize the Pi.

Getting Started with Raspberry Pi

This is a must tutorial for newbies and it basically sums up the bits of getting the Raspberry Pi out of the box and making your first Hello World program. It covers the general discussion about the Raspberry Pi, installing the Raspberry OS, OS choices, applications of the Raspberry Pi, and several others.

Installing Raspbian OS

Despite the fact that the Raspberry Pi can be used with some other operating system, the Raspbian OS has been the most commonly used on the Pi. These guides will focus mainly on installing the Raspbian OS on the Raspberry Pi.  It works in a way similar to what you see on windows, when the Pi boots, it will look for a specific boot file on the SD card, and once that file has been found, it will begin to execute the code inside and the OS loads.

Python for the Raspberry Pi

The Raspberry Pi can be programmed with different programming languages, including Java, C, C++, and Python. Despite the fact that all these languages work quite well on the Raspberry Pi, Python is the most used of all mostly due to its flexible and easy language. Learning different languages is the best thing that any maker can do, but as a first language, Python is a good language to start with. There are many tutorials on Python online (even a few on Maker.io), so here are a whole bunch of them


Internet of Things is now becoming the mainstream buzz and learning how to build your own IoT-enabled projects for the Pi can allow the Pi to be accessed over the internet, control external devices using a mobile device, and take sensor readings and print them to a website is going to be a good idea.


The above tutorials and resources could be the life-saving guide you might need to start creating with the Raspberry Pi. Some of the projects demonstrated have shown how capable the single board computer can be.

Trill – an open-source 3G mobile phone

This is a complete GSM/3G mobile phone, based on the ioNode.


128 x 64 OLED display
* 16 buttons + 5-way mini-joystick
* Microphone & earpiece
* MicroSD card slot
* MicroSIM card slot
* MP3 decoder, headphone amplifier and 3.5mm stereo jack
* Vibrator

Trill – an open-source 3G mobile phone – [Link]

SMARC module for Industrial Ethernet

eCOUNT embedded’s ES-1XXX is the company’s first Computer-on-Module family to support the SMARC 2.0 standard from the SGET.

The modules are equipped with ARM Cortex-A9 based Intel Cyclone V SoCs (formerly Altera), which integrate a configurable FPGA. By integrating the Intel Cyclone V SoCs on SMARC Computer-on-Modules customers benefit from an application-ready ultra-low-power platform for extremely cost-efficient custom IIoT designs. Compared to full-custom designs, the development and certification effort is significantly reduced by up to 50 to 90 percent thanks to the provision of complete BSPs, carrier boards, accessories and FPGA IP as well as comprehensive documentation. Thanks to the configurable FPGA, the SMARC modules can be used in very different configurations. Core FPGA IP, for example for standard industrial Ethernet protocols such as Profinet and EtherCAT, is available off-the-shelf. Many other possible configurations are available including as I/O controllers, big data loggers for data acquisition, network controllers or extremely energy-efficient HMIs with solar power supply as well as generic configurations.

The ES-1XXX modules operate in the extended temperature range of -40 to +85°C and offer a life cycle of at least 10 years. They are available in dual and single-core Intel Cyclone V SoC configurations (SE and SX) with up to 110KLE and 925 MHz and up to 2 GB of DDR3 RAM. [via]

eCOUNT embedded –  www.ecount-embedded.de

Press Release PDF

Arduino controlled Dual Mono AK4490 DAC (part 3)

Here’s the part 3 of Dimitris’ Arduino controlled Dual Mono AK4490 DAC project. If you missed part 1 and part 2, check them out.

Following up on Part 2, it’s time to talk about the output stage. This output stage is the brainchild of my friend Kostas, all I did was lay out the PCB. It is a fully discreet single-ended class-A output stage, outputting ~2.4V RMS.

Arduino controlled Dual Mono AK4490 DAC (part 3) – [Link]

Firefly – an annoying little thing

Here’s a tiny pcb that produces an annoying sound using a piezo buzzer and a ATtiny13 microcontroller.

It uses an LED, piezo buzzer, ATTINY13 Atmel microcontroller, a very small amount of Arduino code, and a coin cell battery that should last about a week.

Battery life could be improved, with longer sleep times. The device has but one function: sleep, then wake up periodically and blink and chirp, then go back to sleep.

Firefly – an annoying little thing – [Link]

EAGLE 8.7 – Parametric 2D & 3D model generation, library.io, more!

Today we’re proud to announce the release of EAGLE 8.7 and what is quite possibly one of the biggest releases we’ve had to-date, this time focused (largely) on libraries and library development (and what that means for 3D modeling of your finished PCB)!  But before we get into it, let me share a thought —

As some of you know, most of us on the EAGLE team use the SW (imagine that!).  In fact, it’s the overwhelming majority in development, mktg, leadership, support, etc. who not only use it, but we’ve run workshops, taught university courses with it, etc.  And it’s from the experience of talking with you and having to explain many of the more idiosyncratic things either in EAGLE or in ECAD in general, that we’d decided we needed to take a shot at addressing the component creation process.  Our goal being to reduce or eliminate one of the slowest, most non-value added processes in your workflow. (This is the stuff that really slows you down and only gets harder as the parts get more sophisticated.)

That being said, this is only part of our ongoing efforts to make library development and the problems with quick, quality component creation faced by so many users (whether professionals or hobbyists or students) a thing of the past.  It’s also the first step in treating ECAD parts and their MCAD equivalents as a single component creation process which shouldn’t be decoupled (after all, it’s the same datasheet whether you’re making parts in EAGLE or in Fusion360).

EAGLE 8.7 – Parametric 2D & 3D model generation, library.io, more! – [Link]

InnoComm NXP i.MX8M System on Module – An Advanced Video Processing SoM with Connectivity

Last year (2017), NXP announced its new applications processors, the i.MX 8 series. The i.MX 8M family of applications processors based on Arm® Cortex®-A53 and Cortex-M4 cores provide industry-leading audio, voice and video processing for applications that scale from consumer home audio to industrial building automation and mobile computers. NXP announced a select group of partners that have been engaged in the development of an ecosystem for the i.MX 8M family processor. Taiwan based Innocomm Mobile Technology was one of those selected partners among others and have announced their NXP i.MX 8M quad-core system-on-module – called WB10 with wireless and wired connectivity options.

Innocomm WB10

Innocomm WB10 is a next generation Wireless System-on-Module powered by the NXP i.MX 8M SoC. It offered advanced video processing capabilities and designed for application in the areas of internet audio, home entertainment, smart speakers among many others. With inbuilt Wi-Fi, Bluetooth and Ethernet connectivity options, the WB10 can quickly find applications in the trending areas of Internet of Things (IoT) and Industrial applications.

The WB10 is a small module and measured at just 50 x 50 mm. The WB10 module comes with only 2GB LPDDR4 RAM and an 8GB eMMC flash memory. It provides onboard support for WiFi 802.11 a/b/g/n/ac, Ethernet controller with MIMO 2 x 2 and Bluetooth 4.2. Apart from impressive connectivity options, you also get a host of other interfaces like – USB 3.0 host, USB 2.0 device, 2x I2C, 3x UART, GPIO, PWM, SPI, and PCIe interfaces.

WB10 Block Diagram

The WB10 has an impressive audio and video interfaces with is Media I/O expressed via three 80-pin connectors that include an HDMI 2.0a supporting 4K and HDR, as well as MIPI-DSI, 2x MIPI-CSI, SPDIF Rx/Tx, 4x SAI, and the high-end DSD512 audio interface.

The following are some of the SoM specifications:

  • Processor – NXP i.MX8M Quad, Cortex-A53 x 4 + M4
  • Display  –
    • 4K + HDR
    • HDMI 2.0a
    • MPI DSI
  • RAM – 2GB LPDDR4
  • Flash Memory – 8GB eMMC Flash
  • Connectivity –
    • Wi-Fi 802.11 a/b/g/n/ac
    • MIMO 2×2 / BT 4.2
    • Ethernet 10/100M/1Gbps
  • Audio –
    • SAI
    • SPDiF Rx/Tx
    • DSD512
  • Dimension – 50 x 50 mm
  • Others –
    • USB 3.0/2.0 Host
    • USB 2.0 Device
    • i2C
    • SPI
    • UART
    • GPIO
    • CSI
    • PWM
    • PCIe
    • 80 pins x 3, board to board connectors
Carrier Board

Although no official software support has been provided, it is expected the SoM should support the usual Android and Linux BSPs as seen in most modules. A development carrier board is made available by the company to extend the SoM interfaces and will surely make development easier. The module connects to the carrier board through three 80-pin board-to-board connectors exposing many of the I/Os provided by the latest NXP processor.

At this point, no pricing or availability information is provided for the WB10. More information about the module can be found on the product page.

VIA Smart Recognition Module Recognizes Emotion, Face, Age & Gender

VIA Technologies, a global leader in the development of embedded platform and system solutions have announced its VIA Smart Recognition Platform powered by the Qualcomm Snapdragon 820 embedded platform. The VIA Recognition platform offers a robust development suite for Vision-based applications with the possibility of developing applications that can be used for detecting facial expression, faces, age and even the gender type of an individual. The VIA Technologies announced the VIA Smart Recognition Platform during the Embedded World 2018.

The Platform provides support for object and facial recognition, emotion detection, age and gender detection. Apart from that, the platform can be used for people counting and tracking. Applications for VIA Recognition Platform can be found in office buildings for staff access control and be delivering personalized adverts in retail signage kiosks.  Others areas of note can be in traffic monitoring (counting of vehicles), security screening in airports and VIP places, payment authentication, surveillance and others. The platform’s advanced AI algorithm ensures speed and accuracy.

VIA_SOM-9X20_module Carrier Board

The VIA Smart Recognition platform is based on its VIA SOM-9×20 module powered by the Qualcomm Snapdragon 820 and coupled with a SOM-DB2 evaluation board. The significant difference with this current setup and the earlier SOM module is the pre-loaded facial and object recognition stack. The SOM-9×20 module features a Qualcomm Snapdragon 820 with 4x Cortex-A72-like cores Kryo cores, two of those run at 2.2GHz and the last two at 1.6GHz. Measuring at 82mm x 45mm, the module features a 64GB eMMc Flash memory, 4GB LPDDR4 SDRAM, a 624MHZ Adreno 530 GPU, and a Hexagon 680 DSP. It offers rich I/P and display interface through its MXM 3.0 314-pin connector including USB 3.0, USB 2.0, HDMI 2.0, SDIO, PCIe, MIPI CSI, MIPI DSI, and multi-function pins for UART, I2C, SPI, and GPIO. It comes with a wireless module that includes Wi-Fi 802.11 a/b/g/n/ac, Bluetooth 4.1 and a separate GPS/GNSS RF receiver with an antenna connector.

The carrier (SOM-DB2 expansion) I/O board is expected to help in accelerating system development. The board extends out the module interfaces, including 2x Ethernet 2x USB 3.0, micro-USB 2.0, HDMI, and a microSD. The VIA Smart Recognition Platform comes with a BSP that features Android 7.1.1 as well as the VIA Smart ETK (Embedded Tool Kit) comprising some APIs, including Watchdog Timer (WDT) for safeguarding against system crashes, GPIO access, RTC for auto-power on, and a sample app. A BSP supporting Linux Kernel 3.18.44 is also under development.

According to Richard Brown, VP International Marketing of VIA Technologies, “Computer vision technologies such as facial and object recognition are becoming a vital tool for boosting public safety and convenience everywhere from check-in counters and security screening in airports to self-service kiosks and payment authentication systems in supermarkets. The VIA Smart Recognition Platform speeds up the development and deployment of tailor-made systems that harness these cutting-edge technologies to deliver innovative new customer services and experiences.”

The VIA SOM-9X20 module and SOM-DB2 evaluation board are available now on VIA Technologies site, but you have to contact them for the prices. For inspiration on usage in computer vision, check out the VIA Smart Recognition Turnkey System brochure and VIA SOM-9X20 Machine Vision Platform brochure.

Displaying Customized Graphics on OLED display using Arduino

One thing we all always wish we could do when using any display is to load our own custom graphics, be it a logo, gif etc. In today’s tutorial we will show how to do just that on an OLED display using an Arduino.

OLED (organic light-emitting diode) display is a display based on light-emitting diode (LED) in which the emissive electroluminescent layer is a film of organic compound that emits light in response to an electric current. This layer of organic semiconductor is situated between two electrodes; typically, at least one of these electrodes is transparent. OLEDs are used to create digital displays in devices such as television screens, computer monitors, portable systems such as mobile phones, handheld game consoles, and PDAs. OLED displays do not require a backlight because they emit visible light and can thus, display deep black levels and be thinner and lighter than a liquid crystal display (LCD).

Displaying Customized Graphics on OLED display using Arduino – [Link]

Helix Semiconductors starts production of DC-DC power chip

Fabless power semiconductor startup Helix Semiconductors has started mass production of its MxC200, a configurable high-efficiency 15W DC-DC power chip.

Previously known as the HS200, the MxC200 takes voltage input ranging from 12V to 48V and converts it to selectable lower voltages. For example, when configured as a 48V input to 12V output, the device offers greater than 97 percent peak efficiency and greater than 90 percent efficiency at full load. by Nick Flaherty @ eenewseurope.com

With the MxC200 and other MuxCapacitor-based products, Helix Semiconductors is answering the demand for more energy-efficient power ICs in the burgeoning AC-DC and DC-DC markets,” said Harold Blomquist, president and CEO of Helix Semiconductors. “The MxC200 features a unique three-stage process, each of which divides its input in half. Power can be pulled from any of its three outputs simultaneously up to 15W. The company’s MuxCapacitor technology enables the MxC200 to achieve unprecedented high efficiency and to stay nearly flat from full load down to 5 percent load.

Helix Semiconductors starts production of DC-DC power chip – [Link]