Products for USB Sensing and Control Canada flag
Products for USB Sensing and Control

sales inquiries

quotes, distributor information, purchase orders
sales@phidgets.com

technical inquiries

support, advice, warranty, returns, misshipment
support@phidgets.com

website inquiries

corrections or suggestions
web@phidgets.com

Address

Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
Canada

PHIDGETS Inc.

Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
Canada
+1 403 282-7335

PhidgetSBC4

ID: SBC3003_0

This single-board computer running Debian is ideal for standalone Phidget systems. It features a built-in six port VINT Hub.

$120.00

Quantity Available: 87

Qty Price
5 $114.00
10 $108.00
25 $96.00
50 $84.00
100 $78.00
50+...

The Phidget SBC4 is a Single Board Computer with six integrated VINT ports. VINT Ports can be used in one of four ways: Communicating with an intelligent VINT Device, reading a 0-5V Voltage or ratiometric sensor, acting as a digital output, or reading switches as a digital input.

The SBC4 is an embedded computer that runs Debian GNU/Linux. It’s useful for long-running Phidgets applications or projects that need to be more portable.

You can connect a keyboard and monitor to work directly on the Phidget SBC using the pre-installed Linux terminal, or you can use an external computer to set up and run custom applications through the SBC’s web interface. You can even use the SBC4 as a remote server, accessing Phidgets connected to your SBC from programs running on other computers or devices on the network.

Features

  • Debian GNU/Linux and Phidgets drivers pre-installed
  • Six VINT Ports - Each port can control a VINT device, sensor, or be used as digital I/O
  • Three USB Ports for connecting peripherals, storage devices, or USB Phidgets
  • Connects to your network via Ethernet, or wirelessly via USB wifi adapter (sold separately)
  • HDMI Port allows direct connection to a monitor to display the Linux terminal

The SBC4 comes equipped with a 8GB card pre-loaded with Debian and our drivers. If you need additional space, you can flash the OS image to a higher capacity card.

Getting Started

Channel Guides

VINT Guides

Phidget Cables

You can use Phidget cables to connect VINT devices, and analog sensors to the VINT ports on your SBC:

Product Physical Properties
Part Number Price Cable Length
3003_0
Phidget Cable 10cm
$1.50 100 mm
CBL4104_0
Phidget Cable 30cm
$1.75 300 mm
3002_0
Phidget Cable 60cm
$2.00 600 mm
CBL4109_0
Phidget Cable 60cm
$2.00 600 mm
CBL4105_0
Phidget Cable 90cm
$2.00 900 mm
3038_0
Phidget Cable 120cm
$2.25 1.2 m
CBL4106_0
Phidget Cable 150cm
$2.50 1.5 m
3039_0
Phidget Cable 180cm
$2.75 1.8 m
3004_0
Phidget Cable 350cm
$3.00 3.5 m
KIT4030_0
Phidget Cable Kit
$10.00 80 mm

USB Cables

Use USB cables to connect Phidgets, keyboards, webcams or other devices to you SBC4's USB ports:

Product Physical Properties
Part Number Price Connector A Connector B Cable Length
3017_1
USB-A to Mini-B Cable 28cm 24AWG
$3.00 USB Type A USB Mini-B 280 mm
CBL4011_0
USB-A to Mini-B Cable 28cm Right Angle
$3.50 USB Type A USB Mini-B (90 degree) 280 mm
3036_0
USB-A to Mini-B Cable 60cm 24AWG
$3.50 USB Type A USB Mini-B 600 mm
CBL4020_0
USB-C to Mini-B Cable 60cm 28AWG
$5.00 USB Type C USB Mini-B 600 mm
CBL4012_0
USB-A to Mini-B Cable 83cm Right Angle
$4.50 USB Type A USB Mini-B (90 degree) 830 mm
3037_0
USB-A to Mini-B Cable 120cm 24AWG
$4.00 USB Type A USB Mini-B 1.2 m
3018_0
USB-A to Mini-B Cable 180cm 24AWG
$4.00 USB Type A USB Mini-B 1.8 m
CBL4021_0
USB-C to Mini-B Cable 180cm 28AWG
$6.00 USB Type C USB Mini-B 1.8 m
3020_0
USB-A to Mini-B Cable 450cm 20AWG
$12.00 USB Type A USB Mini-B 4.5 m

Power Supplies

This Phidget requires a power supply between 6 and 30V DC. Select the power supply from the list below that matches your region's wall socket type.

Product Electrical Properties Physical Properties
Part Number Price Power Supply Current Output Voltage Wall Plug Style
PSU4016_0
Power Supply 24VDC 14.6A
$40.00 14.6 A 24 V
PSU4019_0
Power Supply 24VDC 25A Current Limiting
$120.00 25 A 24 V
PSU4015_0
Power Supply DIN Mount 24VDC 1A
$20.00 1 A 24 V
3084_0
Power Supply 12VDC 0.5A - EU
$1.50 500 mA 12 V European
3085_0
Power Supply 12VDC 0.5A - US
$1.50 500 mA 12 V North American
3022_0
Power Supply 12VDC 2.0A - AU
$10.00 2 A 12 V Australian
3023_1
Power Supply 12VDC 2.0A - EU
$10.00 2 A 12 V European
3025_0
Power Supply 12VDC 2.0A - UK
$10.00 2 A 12 V British
PSU4018_0
Power Supply 12VDC 5A
$20.00 5 A 12 V
3086_0
Power Supply 24VDC 1.0A - US
$10.00 1 A 24 V North American
PSU4013_0
Power Supply 24VDC 2.5A
$20.00 2.5 A 24 V
PSU4014_0
Power Supply 24VDC 5A
$40.00 5 A 24 V
3024_1
Power Supply-12VDC 2.0A - US
$10.00 2 A 12 V North American

Ethernet Cables

Connect the Phidget SBC4 to your home network with an ethernet cable:

Product
Part Number Price
CBL4214_0
Ethernet Cable 2m
$3.50

Wifi Adapters

If you need to go wireless, you can use a wifi adapter to connect to your network:

Product
Part Number Price
SBC4104_0
WiFi USB Adapter (RT5370)
$12.00

Serial Adapters

This adapter allows your SBC4 to talk to serial devices:

Product
Part Number Price
3400_1
USB to Serial Converter
$4.00
SBC4205_0
USB to Serial Converter PL2303 Chipset
$15.00

Sound Adapters

This adapter adds a speaker output and microphone input to your SBC4:

Product
Part Number Price
SBC4204_0
USB Audio Adapter
$15.00

Webcams

The following webcams are compatible with the SBC4:

Product
Part Number Price
SBC4203_0
USB Webcam 720p
$45.00


Welcome

Welcome to the user guide for the SBC3003. In this guide we will introduce you to your new Phidget and show you what it is capable of. To get started, make sure you have the following things available:


Ready? Then let's get started!

Getting Started

You can get set up using this video or by following the steps below:

1. If you have any USB Phidgets, VINT Phidgets, or analog sensors, plug them into the SBC now.

2. Connect your SBC to your network using the Ethernet cable.

3. Connect your SBC to power. A red LED will immediately light up underneath the power barrel, indicating your SBC is receiving power. There is also a green LED that will briefly turn on when power is supplied, and then remain on after the SBC has fully booted.


The next step will be to access the SBC Web Interface. This process will vary slightly depending on what type of computer you use:

Windows

First things first: make sure you have the latest Phidget drivers installed on your machine. Download and run the installer:


You also need to download Bonjour on your Windows computer so that you can access your SBC over the network.


Now that you have the drivers installed, find the Ph.jpg icon in the taskbar. If it is not there, open up the start menu and search for Phidget Control Panel


Windows PhidgetTaskbar.PNG


Double click on the icon to open the Phidget Control Panel and navigate to the Network Phidgets tab:


Phidgetsbc windowscontrolpanel.PNG


As shown in the image above, the Phidget Control Panel will relay the following information to you:

  • The default link local address (mDNS address) which is phidgetsbc.local
  • The IP address. There is no default IP address, it must be assigned to the SBC.
  • The MAC address. This is useful for distinguishing between multiple SBCs.


Next, double-click on your SBC in the Phidget Control Panel. This will automatically open the SBC Web Interface, which, conveniently enough, is our next topic! Jump ahead to the SBC Web Interface.

macOS

First things first: make sure you have the latest Phidget drivers installed on your machine. Download and run the installer:


Now that you have the drivers installed, open the Phidget Control Panel by finding the Ph.jpg icon in your applications folder.

Open the Phidget Control Panel application and navigate to the PhidgetSBCs tab:

Phidgetsbc maccontrolpanel.png

As shown in the image above, the Phidget Control Panel will relay the following information to you:

  • The default link local address (mDNS hostname) which is phidgetsbc.local
  • The IP address. There is no default IP address, it must be assigned to the SBC.
  • The MAC address. This is useful for distinguishing between multiple SBCs.


Next, double-click on your SBC in the Phidget Control Panel. This will automatically open the SBC Web Interface, which, conveniently enough, is our next topic! Jump ahead to the SBC Web Interface.

Linux

First things first: make sure you have the latest Phidget drivers installed on your machine. Head over to the getting started with Linux section on the Linux page in order to get everything installed.


Now that your machine is ready to go, type the following command into the terminal:

phidget22admin -s

Your terminal will look something like this:

Phidgetsbc linuxphidgetadmin.PNG

As shown in the image above, the phidget22admin call will relay the following information to you:

  • The default link local address (mDNS hostname) which is phidgetsbc.local
  • The IP address. There is no default IP address, it must be assigned to the SBC.
  • The MAC address. This is useful for distinguishing between multiple SBCs.


Now that you know the IP address that has been assigned to the SBC, type it into a web browser and hit enter. This will open the SBC Web Interface, which, conveniently enough, is our next topic!

SBC Web Interface

The SBC Web Interface is a powerful tool that will prove invaluable when you begin development. You opened the SBC Web Interface in the previous step, so let`s jump right in and set a password!

Setting a password

The first time you open the SBC Web Interface, you will be greeted with this screen:


You will use this password in the following situations:

  • Future SBC Web Interface access (linked to user admin)
  • SBC terminal access (linked to user root)

Take a look around


Welcome to the SBC homepage! Here you can view system information such as the firmware version, the amount of storage you have left, and more. Take a minute to look around, and, when you're ready, we will give an overview of the SBC Web Interface, starting with networking.

Update Packages

We strongly recommend you update your packages before you start using your SBC. This will make sure that all of the software is up to date and will fix many potential issues with compiling code and using the Phidget Control Panel. To update your packages, go to System -> Packages.

Then, scroll to the bottom of the list and click on "Refresh Available Packages". It will take a few minutes to refresh the packages. Then, click on "Upgrade All Packages".

Set up Networking

You can connect to your network in two ways with the SBC:

  • via an Ethernet cable
  • via a Wi-Fi USB adapter (we recommend this one)

The SBC will try to connect to Ethernet first. It can also switch between Wi-Fi and Ethernet on the fly. If you're following this guide, you've already set up your network using an Ethernet cable by simply plugging it in. Next, we will take a look at setting up Wi-Fi.

Wireless

To set up Wi-Fi on the SBC, first plug in your Wi-Fi USB adapter. Next, navigate to Network->Wireless and your screen will look something like this:


Add your Wi-Fi network by selecting it from the list, providing any necessary credentials, and clicking the Add This Network button.

Here are some useful Wi-Fi tips:

  • You don't have to see a network in order to connect to it. You can add the SSID and password of a network, and the next time the SBC boots it will connect to that network if it is available.
  • The SSID settings are only for DHCP networks.


Next, we will cover setting a static IP with the SBC Web Interface.

Static IP

Don't have DHCP on your main network? Not to worry, you can easily set up a static IP with the SBC:

  • Ethernet: Navigate to Network->Settings to set up a static IP.
  • Wi-Fi: Navigate to Network->Wireless to set up a static IP.

Now simply enter your network configuration and save the changes. The SBC will immediately start to use the static IP.

Warning: setting a static IP improperly can make the SBC very hard to re-connect to depending on the routing within the rest of your network.

View Attached Phidgets

Phidgets Status

Now that your networking is set up, let's take a look at which Phidgets are attached to the SBC. Do this by navigating to Phidgets->Status. Your screen should look something like this:


Notes about attached Phidgets:

  • The SBC has a built in VINT Hub Phidget, so you will always see it on your list of attached Phidgets.

Control Panel

After you confirm which Phidgets are attached to your SBC, navigate to Phidgets->Control Panel. Here, you can test your Phidgets and learn more about their functionality.

Using a Webcam

If you would like to use a webcam with the SBC, ensure it is a UVC (USB Video Class) compatible webcam that supports MJPEG. Next, simply plug it into the SBC and navigate to the Webcam tab.



Take a minute to play around with the different resolutions and frame rates available. Also, be sure to check out the webcam control dialog shown below:


Notes about using a webcam:

  • When using a password, the username is webcam. It is recommended to add a password if you are planning to share the stream. Note: the HTTP authentication is sent unencrypted.
  • If multiple webcams are attached, they will start up with the same settings (port number will be incremented for each one). When using multiple webcams, resolution and frame rates will have to be reduced.

Advanced Topics and Troubleshooting

Expand All
Upgrading or Downgrading Device Firmware

Firmware Upgrade

MacOS users can upgrade device firmware by double-clicking the device row in the Phidget Control Panel.

Linux users can upgrade via the phidget22admin tool (see included readme for instructions).

Windows users can upgrade the firmware for this device using the Phidget Control Panel as shown below.

ControlpanelFWup.jpg

Firmware Downgrade

Firmware upgrades include important bug fixes and performance improvements, but there are some situations where you may want to revert to an old version of the firmware (for instance, when an application you're using is compiled using an older version of phidget22 that doesn't recognize the new firmware).

MacOS and Linux users can downgrade using the phidget22admin tool in the terminal (see included readme for instructions).

Windows users can downgrade directly from the Phidget Control Panel if they have driver version 1.9.20220112 or newer:

ControlpanelFWdown.jpg

Firmware Version Numbering Schema

Phidgets device firmware is represented by a 3-digit number. For firmware patch notes, see the device history section on the Specifications tab on your device's product page.

FWversion.jpg

  • If the digit in the 'ones' spot changes, it means there have been bug fixes or optimizations. Sometimes these changes can drastically improve the performance of the device, so you should still upgrade whenever possible. These upgrades are backwards compatible, meaning you can still use this Phidget on a computer that has Phidget22 drivers from before this firmware upgrade was released.
  • If the digit in the 'tens' spot changes, it means some features were added (e.g. new API commands or events). These upgrades are also backwards compatible, in the sense that computers running old Phidget22 drivers will still be able to use the device, but they will not be able to use any of the new features this version added.
  • If the digit in the 'hundreds' spot changes, it means a major change has occurred (e.g. a complete rewrite of the firmware or moving to a new architecture). These changes are not backwards compatible, so if you try to use the upgraded board on a computer with old Phidget22 drivers, it will show up as unsupported in the Control Panel and any applications build using the old libraries won't recognize it either. Sometimes, when a Phidget has a new hardware revision (e.g. 1018_2 -> 1018_3), the firmware version's hundreds digit will change because entirely new firmware was needed (usually because a change in the processor). In this case, older hardware revisions won't be able to be upgraded to the higher version number and instead continue to get bug fixes within the same major revision.
Armbian Packages

You can find a directory of Armbian packages here.

We have both desktop and server versions available. The Armbian release is more like a general Linux release with the Phidget libraries bundled in, whereas the default OS on the PhidgetSBC is kept very minimal to improve boot time and performance for Phidget-focused tasks.

Connecting a USB Hub

If you plan on connecting more than 3 USB devices to the SBC4, you'll need to use a USB Hub. If you do, make sure you plug it into one of the ports highlighted in green below:

SBC3003 USB.jpg


The port highlighted in red is a USB On-the-go port, which functions as a normal USB port except that connecting multiple devices to it using a USB hub will cause those devices to be unstable and to disconnect unexpectedly.

If the devices you're plugging into your hub are rated for a total of 500mA or more, you should use an externally powered USB hub.

Ports and Connectors

SBC3003 Ports.JPG

1. The Ethernet port is used for network connectivity to the SBC. This enables network access to the SBC as well as any connected Phidgets through the Phidget Network Server. Alternatively, a Wi-Fi USB adapter can be used for wireless network connectivity.
2. The USB ports can be used for connecting Phidgets, Wi-Fi adapters, flash drives, webcams, USB hubs, and other devices.
3. The HDMI connector can be used for connecting a monitor the the SBC. In this situation, the SBC will function like any other Linux computer. (Note: you must plug the monitor in before powering up the SBC in order for it to be recognized).
4. Six VINT ports, essentially an integrated VINT Hub Phidget.
5. The SBC is powered from the barrel jack connector.
6 These LEDs indicate the status of the SBC. The red LED indicates that the SBC is receiving power. The green LED indicates boot status. The green LED will turn on and off once during boot and then remain on while the SBC is running.
7 The micro SD card slot.
Hardware Details

The SBC4 is built around the A20 processor. This is an ARM Cortex-A7 based microprocessor from Allwinner Technology, which runs at 1 GHz. Connected to this is 512 MB of DDR3 SDRAM, and a 10/100baseT Ethernet controller. The microprocessors USB Host port is connected to 3 USB 2.0 High Speed ports.

Software Details

The PhidgetSBC runs Debian/GNU Linux 9.0 as its operating system and gets booted with U-Boot.

Date and Time

The date and time are set using NTP (Network Time Protocol) at boot. A NTP daemon continues to run in the background and will periodically update the clock, ensuring the time is always accurate.

There is a real-time clock with battery backup which will preserve date/time across reboots and power removal. If power is suddenly lost, the real-time clock may not have the correct time.

Factory Reset

The SBC3003 does not natively support factory reset functionality. However, if your SBC3003 becomes corrupt and needs to be reset to factory firmware, you can write a new image to the micro SD card (or a new card) to similar effect.

Power Distribution

The 12V power supply is stepped down to 5V and distributed in the following way:

  • Each USB port has 500 mA available.
  • The bulit-in VINT Hub Phidget has 500mA available.
Configuration System

The configuration system used by the SBC Web Interface is stored in /etc/webif. It is not recommended to modify these files.

What's Next?

Check the Phidget SBC page next for a guide on how to start writing your own programs, and more!

Product Specifications

SBC
CPU Allwinner A20
Core Dual-Core ARM Cortex-A7
CPU Speed **Up to 960 MHz
SDRAM Size 512 MiB
Boot Time 20 s
Ethernet Cable 10/100BASE-T
Electrical Properties
Supply Voltage Min 8 V DC
Supply Voltage Max 30 V DC
Power Consumption Min 1 W
Available External Voltage 5 V DC
Available External Current 500 mA
USB Hub
Number of USB Ports 3
USB Speed High Speed
Available Current per USB Port 500 mA
Board Properties
Number of VINT Ports 6
VINT Communication Speed Max 100 kbit/s
Power Jack 5.5x2.1mm, Center Positive
Operating Temperature Min 0 °C
Operating Temperature Max 70 °C
Voltage Inputs
Number of Voltage Inputs 6 (Shared)
Voltage Input Resolution (bits) * 16 bit
Sensor Input Impedance 324 kΩ
Input Voltage Min (DC) 0 V DC
Input Voltage Max (DC) 5 V DC
Voltage Input Noise ± 630 μV DC
Sampling Interval Max 60 s/sample
Sampling Interval Min 1 ms/sample
Digital Inputs
Number of Digital Inputs 6 (Shared)
Pull-up Resistance 124 kΩ
Low Voltage Max (True) 1 V DC
High Voltage Min (False) 1.8 V DC
High Voltage Trigger Length Min 3 ms
Low Voltage Trigger Length Min 3 ms
Digital Input Voltage Max 5.5 V DC
Digital Input Type Switch (Active Low)
Digital Outputs
Number of Digital Outputs 6 (Shared)
Series Resistance 510 Ω
Digital Output Available Current 81 mA
Digital Output Voltage Min 0 V DC
Digital Output Voltage Max 3.3 V DC
PWM Frequency Max 50 kHz
Duty Cycle Resolution 0.8 %
Customs Information
Canadian HS Export Code 8471.80.00
American HTS Import Code 8471.80.40.00
Country of Origin CN (China)

*Voltage measured with a 10-bit ADC, oversampled to 16-bits.

**This processor supports dynamic frequency scaling, which lowers the clock speed to save power depending on processing load.

Documents

Product History (SBC4)

Date Board Revision Device Ver. Card Image Ver. Comment
September 2017 0 400 1.0.0 Product Release
December 2017 0 400 1.0.1 Updated packages; uboot for better HDMI and USB
March 2018 0 400 1.1.0 Updated packages; Moved to 4.14.23 kernel
August 2018 0 400 1.2.0 uboot fix (only one cpu core detected)
August 2018 0 400 1.2.1 uboot upgraded; improved reliability

Product History (Integrated VINT Hub)

Date Board Revision Device Version Comment
September 2017 0 101 Product Release
September 2018 0 102 Fixed spurious detach events from firing
January 2019 0 108 Increased voltage input range to 5.25V
September 2019 0 109 Fixed bug that reported false detaches
April 2020 0 110 Added gap between wakeup pulse and sending data
December 2021 0 200 Added failsafe to digital input API
December 2021 0 203
  • Fixed bugs that caused detach events to be missed
  • Fixed bug where noise on attached sensor lines could overwhelm the VINT Hub
  • Added support for WebUSB
January 2023 0 204 Fixed bugs in communication between Hub and SBC

VINT Port Device Version History

Digital Input
Date Port Version Comment
June 2017 100 Product Release
Digital Output
Date Port Version Comment
June 2017 100 Product Release
December 2021 110 Added support for failsafe functionality
Voltage Input
Date Port Version Comment
June 2017 100 Product Release
January 2019 110 Increased input range from 5V to 5.25V
VoltageRatio Input
Date Port Version Comment
June 2017 100 Product Release

Code Samples



Example Options


Downloads

				Make your selections to display sample code.
					

Code Samples

Language:

APIDetailLanguageOS
DigitalInput Visual Studio GUI C# Windows Download
DigitalInput JavaScript Browser Download
DigitalInput Multi-Channel Example JavaScript Browser Download
DigitalInput Objective-C macOS Download
DigitalInput Swift macOS Download
DigitalInput Swift iOS Download
DigitalInput Visual Basic .NET Windows Download
DigitalInput Max/MSP Multiple Download
DigitalOutput Visual Studio GUI C# Windows Download
DigitalOutput JavaScript Browser Download
DigitalOutput Multi-Channel Example JavaScript Browser Download
DigitalOutput Objective-C macOS Download
DigitalOutput Swift macOS Download
DigitalOutput Swift iOS Download
DigitalOutput Visual Basic .NET Windows Download
DigitalOutput Max/MSP Multiple Download
VoltageInput Visual Studio GUI C# Windows Download
VoltageInput Multi-Channel Example JavaScript Browser Download
VoltageInput JavaScript Browser Download
VoltageInput Objective-C macOS Download
VoltageInput Swift macOS Download
VoltageInput Swift iOS Download
VoltageInput Visual Basic .NET Windows Download
VoltageInput Max/MSP Multiple Download
VoltageRatioInput Visual Studio GUI C# Windows Download
VoltageRatioInput Load Cell Calibrator C# Windows Download
VoltageRatioInput JavaScript Browser Download
VoltageRatioInput Objective-C macOS Download
VoltageRatioInput Swift macOS Download
VoltageRatioInput Swift iOS Download
VoltageRatioInput Visual Basic .NET Windows Download
VoltageRatioInput Max/MSP Multiple Download
Hub Visual Studio GUI C# Windows Download

Software Objects

Channel NameAPIChannel Hub Port Interface
Hub Port - Digital Input Mode
Digital Input DigitalInput 0 0 - 5 VINT
Hub Port - Digital Output Mode
Digital Output DigitalOutput 0 0 - 5 VINT
Hub Port - Voltage Input Mode
Voltage Input VoltageInput 0 0 - 5 VINT
Hub Port - Voltage Ratio Mode
Voltage Ratio Input VoltageRatioInput 0 0 - 5 VINT
6-Port PhidgetSBC VINT Hub Phidget
VINT Hub Hub 0   SPI

API


Back Forward
Print this API