Demand Peripherals     Robotics and Automation Made Easy

Robotics and Automation Made Easy

The Demand Peripherals peripherals and interface cards make it easy to build a Linux based robot or other automation. Our key difference is that our system is complete. That is, it includes the hardware, firmware, and API software so your Linux application can directly control the peripherals. No more buying cards from SparkFun or Adafruit and having to write all of the software layers up to your application.

The API is ASCII commands over a TCP connection. This means you can write your Linux application in almost any programming language: C, C++, Java, Perl, PHP, or Python. We even have BASH wrappers around the commands so you can program or test your automation from the command line.


A Customer Defined Robot Controller

An FPGA is at the core of the Demand Peripherals system. An FPGA's flexibility means that we don't have to determine which peripherals to put on your controller, You do!

The FPGA card has four connectors that can connect to eight interface cards. Connect the interface cards, load the FPGA image, start the API daemon, and you're set to go. Select your interface cards from the list here, and select the peripherals to control those cards from the list here.

The video to the right is a nice introduction to FPGA-based controllers and to the simple API we offer. After watching the video you will have a full understanding of what it does, how it works, and how to use it in your application.

For Hobbyists

KBot by Keithen Hayenga
Almost a defining characteristic of a hobby robot is that it is constantly changing. One week you want a text LCD for output and the next week you want RGB LEDs. The Demand Peripherals FPGA based robot controller is ideal for hobbyists since it so easy to swap one peripheral for another or swap one interface card for another.

Changing peripherals is easy. Just go to the support page Build Your FPGA Image, select your new peripheral set, tell us where to email the FPGA image and press Submit. The email address associated with your purchase of the FPGA card gives you access to the backend service that builds FPGA images. There is no limit on how many FPGA images you can request.

For Industry

Demand Peripherals can dramatically improve your time-to-market for new robots or other automation since there is no MCU code to write and interface card schematics are open-source.

The design cycle for building a microcontroller based robot is eight to twelve months just to get to the point that you can start writing the high-level Linux application. The problem is that you usually have to start from scratch for the circuit design and all of the MCU code.

A typical workflow when using Demand Peripherals is to build a prototype using our off-the-shelf cards. This prototype will be API complete and ready for use by the high level application programmers. Once the application is underway on the prototype hardware you can have your electrical engineers collect the DPI schematics and arrange them on one board and start the board layout and fabrication. The advantage in this approach is there is no MCU firmware to write and you can have an API complete prototype in a week.

Buying a Baseboard4 FPGA card gives you a license to use an FPGA image on Baseboard4. However when building your own FPGA card you will need to purchase a license to use the peripherals in a Demand Peripherals FPGA image. This license costs seventy-five hundred dollars and includes the following:
      - Ability to distribute the FPGA image
      - Non Creative Commons use of the schematics
      - Non GPL use of the dpdaemon source code
      - License for the patented circuit of the ESPI
      - Five hours of telephone support

Need help with the schematic capture and board layout? Let us know. Demand Peripherals can help build your prototypes.


For More Information ...

A detailed description of the system operation and architecture can be found here.

A list of the peripherals and their descriptions can be found here.

A list of interface cards can be found here.

A complete description of the API can be found here.

You can specify and build a custom FPGA image with your selection of peripherals here.