Feb 022011
 

Know the parts of the Phidget SBC:

Phidget SBC (single board computer)

Testing and Communicating with the SBC: Brief workflow

  • Download and install phidget control panel, download matching SBC firmware
  • Reset the SBC to factory settings (reset button for 10s)
  • connect SBC to network via ethernet cable
  • open phidget control panel to verify your SBC is attached
  • double click the SBC or enter its IP in a web browser
  • update firmware (under “system” tab)
  • again go to phidget control panel, double click the SBC or enter its IP in a web browser
  • set up an IP (preferably static) for both ethernet and wireless

Testing and Communicating with the SBC: Detailed Guide

Connect the Following:

  • 12 V power adapter
  • Ethernet cable
  • Analog sensor (we used phidget mini joystick)
  • LED to Gnd & 7 on digital outputs (remember polarity!)
  • Switch on Gnd & 0 on digital inputs

phidget sbc test hookups

Install the software:

Download and install the latest Phidget control panel for your system from http://www.phidgets.com/drivers.php. While you’re there you should get the latest SBC firmware as well. You’ll need it later.

If it installed properly you will see a icon in your taskbar

You’ll also need a program called “bonjour” which helps your PC “talk” to the SBC. If the phidget panel doesn’t ask you to install it, go here , get it and install it.

Run the Phidget Control Panel:

Make sure your phidget SBC is powered and connected by ethernet cable to your network.

Double click on the Phidget icon and the phidget control panel will show up.

Go to the PhidgetSBC tab as in the picture above. Two VERY important pieces of information are here:

  • The mac address of the SBC (uniquely identifies the phidget on a network)
  • The IP Address (knowing this is ESSENTIAL for communicating with your SBC)

It may take a moment for your phidgetSBC to show and a few moments more for an IP address to show at the bottom.

Now open that PhidgetSBC with a web browser:

In a perfect world you’ll click on that PhidgetSBC, and a web browser will open with login and settings pages.

If it doesn’t work:

The first thing to try is to type the PhidgetSBC’s IP address into the address bar of your web browser. From the picture above I wrote down the ip address at the bottom and typed it (http://192.168.2.231) into the browser. If that doesn’t work, it’s reset time!

Reset the PhidgetSBC to factory specs: A factory reset on the phidgetSBC (hold in reset button for 10 seconds until red LED starts flashing) causes it to lose all settings and receive a new IP address when connected to a new network. My problem arose because I tried to connect a PhidgetSBC which had a previously configured static IP to a network with a totally different IP scheme.

Once you’ve got the settings webpage open you can set the phidget ethernet and wireless ip addresses to match your network configuration (more on this below)

Create a password:

It will ask you to set one if  none exists (the user name is root)

Upgrade the firmware::

I had the full firmware already downloaded (http://www.phidgets.com/drivers.php). Then I just clicked on System, Upgrade and chose the file. The process takes several minutes.

When it’s done the PhidgetSBC will reboot. Do this only using ethernet cable (we don’t want a wireless signal dropping in the middle of a firmware upgrade!) Also bear in mind that after the firmware upgrade, you may have to reconnect to the PhidgetSBC settings page. This is a given if you changed the PhidgetSBC IP address.

Wireless on a school or other existing network:

Once you’ve got the boards working over ethernet cable the wireless bit is fairly simple.( But you should have a plan!) My school network runs locked down windows workstations. The goal is for students to use the workstation to communicate with a PhidgetSBC and control a robot wirelessly.

We set up a dedicated router (WRT54GL)  as a wireless switch/access point.

How I set  set myWRT54GL router (robo-router) up as a wireless access point:

  • turned off DHCP on robo-router
  • set robo-router IP to be within school network subnet (but outside DHCP range of school network).
  • connected robo-router to school network via lan port (instead of WAN port).

When I need wireless access, I plug it in (you can also use wireless security with the phidget SBC!)

I then configured each phidget to have a static ethernet IP address AND static wireless IP address to prevent conflicts. The options for each are under the network tab on the phidgetSBC configuration page (the one we accessed with our web browser).

So, here’s how the network setup looks:

  • School network: Gateway is 192.168.2.1, DHCP runs from 192.168.2.2 through 192.168.2.150 (so I need to set robo-router above 150)
  • Robo-router: IP is 192.168.2.230 with DHCP turned OFF (don’t want two routers on a network running dhcp)
  • PhidgetSBC:  Ethernet: 192.168.2.231 Wireless:192.168.2.241
  • Subsequent  SBCs: Ethernet 192.168.2.232 Wireless 192.168.2.242 (just increment for each additional SBC!) I’ll never use more than 10 SBCs in one class, but you can adjust your numbering scheme accordingly

Testing the inputs and outputs:

Open the Phidget control panel and go to the WebService tab.

Click the PhidgetSBC to bring up a testing screen called “interfacekit – full”.

  • Attached should say “true”
  • Digital-in should check when you press the switch you connected to the input side
  • Analog-in should show value change when you move the joystick
  • Digital-out should light the LED when you check the box

Connecting a webcam

This is as simple as connecting a webcam to the device and selecting your resolution, framerate, and port. Bear in mind that a heavy video stream may slow down other processes, so use what you need.

Resetting / Rebooting the PhidgetSBC

The phidget boot process happens when you power the device or press the reset button. It’s indicated by the red and green lights both lighting, then the green light goes off for several seconds, then it comes back on again.

  • Pressing the reset button once will reboot the device.
  • Holding the reset button for 10 seconds sets it back to factory defaults and firmware (the red light will also start flashing)
 Posted by at 1:15 am

  6 Responses to “Phidget SBC (Single Board Computer)”

  1. Sir, we are beginners in using Phidget sbc kit. Our project was to make a remotely controlled vehicle using Phidget sbc 1070 kit. Till now,we have tried to connect simple analog sensors to it and interface of webcam to it. Now, we want to control the vehicle remotely over the network, through a laptop or PC. For that we need to program the Phidget sbc to drive the motor and to move according to the instructions given through the laptop. So, we are facing problem in programming the Phidget kit. We are not getting that how to program the Phidget kit to perform specific function.For eg. in microcontrollers we used to write program in C and then compile it to get get .hex file and then we used to put that file in microcontroller using a programmer. So, in similar way how could i program the Phidget kit.?
    Which IDE i should use for that.?
    We tried to contact the Phidget technical help but didnot got the expected help.
    So,please help me..

    • Hi Sumit,
      With the phidget SBC you do not need to upload a pre-compiled program to the controller ( it’s unlike some other controllers or the arduino). SBC comes with linux as an OS and you can run a program directly on your laptop and communicate with the SBC’s Linux operating system using ethernet or wifi. (The SBC acts like a networked computer on your remote vehicle.) This allows you to make a program using whatever IDE you prefer on your laptop. You then run the program directly on your laptop, and it will communicate with the SBC and any attached controllers using the SBC IP address.

      My bigphoot sbc robot truck uses just the phidget SBC and a phidget motor controller on the truck. I wrote a program in visual basic and built controls into the program. Start, stop, steering are handled by the visual basic program on my laptop, not by the SBC. The SBC acts as a computer that passes the information back and forth from my sensors, motors, and camera to the program running on my laptop.

      I use visual basic in the MS visual studio IDE because it is easy for students of all programming ability to understand (although java and C are more common and work very well). Java has the bonus of being cross platform and netbeans is a great free IDE for programming in java.

  2. i amazed when i search for the phidgets SBC application for robotics thank GOD im inspired with your project for robot, same plan i will used SBC for robotics, now i have some questions since you yourself experienced programming SBC then hopefully you will help me with this

    my questions is:

    1) since SBC is a computer itself and be programmed like VB, now if make programmed in VB,shall i make it executable file?? then how about during after next power cycle, like resetting, how the SBC run my specific applications, or how SBC select my applications during boot up??

    2) is SBC have enough horsepower to run newest webcam, since its only 400MHZ cpu clock/.it can handle video streaming?is the quality ok?

    thanks in advance, i know you can help me a lot for my robotics,right now i have arduino uno, its still work fine but i need to uprade for the reason i need a video on board like webcam

    thanks & more power

    hfe

    • Hi hfe,

      1) I use the SBC differently than the arduino. With your arduino you will load the program (called a sketch) in the memory of the arduino. This is not the case with my Bigphoot robot that uses the SBC. For my robot I created the program on my PC (windows computer) AND executed it from the PC. My PC communicated with the SBC over wireless interent (wifi). The SBC (single board computer) is really just a small linux computer that sits on your robot. You can communicate with it over wireless internet and thereby interface with other microcontrollers or webcams. The SBC should appear like any other computer on your network.
      When you power cycle the SBC you will not affect the program since the program is on your PC. The SBC does have settings (like IP address, DHCP, etc) that can be reset, but a normal power cycle should not reset them.
      2) Any UVC compatible webcam should work with the SBC. It is possible to change the fps (frames per second) and the video resolution if it is not streaming well.
      Hope this helps, and keep us up to date on your project!
      -cd

  3. THANK YOU THANK YOU VERY VERY MUCH cd, now its loud and clear, the greatest thing that clear to my that the program(e.g. VB ) is reside on the PC and not on the SBC, so even next power cycle the program not affected,since it is on different computer.thanks its really hopeful,your project actually is my inspiration.

  4. i want to ask something about how phidget SBC can be a remote terminal unit (RTU) which is use in power system..my project is,i need to train this SBC to detect fault (overcurent,undrvoltage,etc.) also can act as a FDIR (Fault detection isolation and restoration) i plan to use C programming but when i code the simple program just to ON the LED,the SBC not work properly..might be my connection is wrong..then how could i create the input of fault if the simple LED not function..anyone please help me to counter this problem..please share the code of sample LED and guide me how to use this SBC well..thanks a lot for those who will replying this..

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>