Resources for Learning Raspberry Pi

For the past few months, I have been learning Raspberry Pi. In this post, I will collect all relevant resources together in order to help readers build barcode applications on Raspberry Pi with Dynamsoft Barcode SDK.

raspberry pi

What is Raspberry Pi

Wikipedia: The Raspberry Pi is a series of credit card-sized single board computers developed in the United Kingdom by the Raspberry Pi Foundation to promote the teaching of basic computer science in schools and developing countries.

raspberry pi 3 model B

Specification of the Latest Raspberry Pi 3 model B

Release date: 29 February 2016

Introductory price: 35 US$

Operating system: Raspbian

System-on-chip used: Broadcom BCM2837

CPU: 1.2 GHz 64-bit quad-core ARM Cortex-A53

Memory: 1 GB LPDDR2 RAM at 900 MHz

Storage: MicroSDHC slot

Graphics: Broadcom VideoCore IV at higher clock frequencies (300 MHz & 400 MHz) than previous that run at 250 MHz

Power: 800 mA (4.0 W)


On Raspberry Pi, there are some General-purpose input/output (GPIO) pins, which can be programmatically controlled by users at run time.

Raspberry Pi GPIO

3.3V: anything connected to these pins will always get 3.3V of power.

5V: anything connected to these pins will always get 5V of power.

GND: ground. Zero volts used to complete a circuit.

GPIO: these pins are for general-purpose use and can be configured as input or output pins.

ID_SC/ID_SD/DNC: special purpose pins

Usual Peripherals



Male-to-female jumper leads


Female-to-female jumper leads


Male-to-male jumper leads


Tactile button




Light dependent resistor


Documentation, Code & Video


  1. Configure static IP for Raspberry Pi.
  2. Remotely build the basic sample code of Dynamsoft barcode SDK via Makefile.


  1. Create a Node.js addon by wrapping native code that depends on
  2. Build a web barcode reader with the Node.js addon.


  1. Create a Python extension by wrapping native code that depends on
  2. Write a Python barcode reader by importing the custom Python extension.


  1. Invoke OpenCV API to open webcam in C++.
  2. Convert real-time frame data from Mat to DIB.
  3. Detect barcode with Dynamsoft Barcode API.


  1. Optimize the No.4 code by moving barcode detection block to the worker thread in case of blocking the UI thread.


  1. Based on No.5, connected LED and resistor to GPIO pins in order to indicate the detection status.

Video - Raspberry Pi Barcode Scanner

Search Blog Posts