This project's funding goal was not reached on August 25, 2014.
About this project
Presented by... SL Interphase- Electronics Design Services
Have you ever wanted to learn more about FPGAs? Looking for an easy platform to learn FPGA programming? Logitraxx is an FPGA development platform at its core, only with some cool on-board sensors and a motor driver so that your logic creation can drive around. We'll help you get started with some step-by-step tutorials and provide source code for sensor and robot builds. Completely open source, schematics, bill-of-materials, even the gerbers. I'll even provide a basic schematics class on how to read the schematic and explain how things work.
Fun Programmable Gate Array, ok maybe that first word is really "Field", but you get the idea. The Logitraxx is the most fun you can have with an FPGA anywhere. Learn FPGA based motor-algorithms and hardware based autonomous decision logic. Logitraxx is also an ideal platform for mobile sensor-fusion projects. See the specs further down.
- Spartan 6 LX9 FPGA
- 8MB (64Mb) SDRAM onboard connected to FPGA
- 8MB (64Mb) Flash onboard connected to FPGA
- 4MB PROM for FPGA configuration storage
- 40 GPIO (with access to 2.5v, 3.3v, 5v, and VCHARG power input)
- 3 axis accelerometer with i2C interface connected to FPGA
- 18 User definable LEDs, including right angle LEDs for headlights/taillights
- 2 IR Sensor/Detectors in the front connected to FPGA
Lithium battery charges from USB (can also charge from VCHARG)
- FTDI USB to Serial connected to FPGA (can be rerouted to GPIO)
- USB to JTAG for configuring PROM/FPGA
- 20Mhz oscillator connected to FPGA
- 32.768kHz oscillator connected to FPGA (Save gates by dividing down this clock for slow functions like blinking LEDs)
- Push Button (Momentary) works great as a "reset" or "start" feature.
The video above is the Snow Cat in action with its decision logic displayed in a graphical manner. The Snow Cat does not have a CPU and isn't running any software, yet processing sensor data and making decisions with its FPGA brain. The Snow Cat's LX9 FPGA is running multiple simultaneous processes. The FPGA utilization at this point is just 7%. We are just barely scratching the surface here.
If you would like to build your own Logitraxx Snowcat. You can find the STL files on Thingiverse and print out your own body here -> snowcatthingiverse.
Below is a Youtube video of an RC mod to the Snowcat. It switches in and out of autonomous mode to RC mode by remote control.
Above is the Logitank running some basic obstacle avoidance with on-board IR sensors. Just like the Snowcat, the Logitank relies on the FPGA for its drive algorithm and turret control and does not run any software.
You can build your own Logitank with the Logitraxx chassis by downloading the Tank body STL files and printing them yourself here -> tankthingiverse
Field Programmable Gate Arrays (FPGAs) are semiconductor devices that are based around a matrix of configurable logic blocks (CLBs) connected via programmable interconnects. FPGAs can be reprogrammed to desired application or functionality requirements after manufacturing. You can reprogram the Xilinx Spartan 6 as often as you like, constantly redesigning its functionality and capability.
Watch the Sonic Tank in action on Youtube.
Can I drive the Logitraxx features and I/O from Arduino?
Yes, you can. You can access any I/O and control system on-board with your Arduino or any other microcontroller based system for that matter. Or you can off-load some duties to hardware (FPGA) while keeping other control functions in the hands of your Arduino. Use the FPGA to accelerate features in hardware that the Arduino may struggle with, similar to the way a modern PC relies on its external graphics card to handle hardware acceleration of 3D graphics. Allow the two to work together while you learn more about FPGAs. We'll have plenty of sample code for you to look at.
See the "Tech Talk" video above for a more detailed explanation of the differences between FPGAs and CPUs and why an FPGA can get things done faster and more efficiently. Using the FPGA as the brain has a clear advantage over software based autonomous robots.
Are there advantages to using an FPGA?
Yes plenty, an FPGA based system can be very small and low power and yet have extreme amounts of computational horsepower. FPGAs can execute computational tasks in just 1 or 2 watt solutions that would require a traditional CPU/Software based system consuming hundreds of watts of power to duplicate. Since there is no software to crash, an FPGA based robot is extremely reliable executing its programmed tasks without stopping for months, even years (with the appropriate power source) and never needs a reboot. Being field re-programmable makes them perfect for hardware design changes at the circuit board level without having to redesign the circuit board itself. This gives an FPGA very distinct design function upgrade possibilities while remaining in-the-field and without ever lifting the hood.
A little more background on FPGAs
If you've ever worked in a company that engineers its own embedded or industrial products, you may be familiar with a world of components virtually unknown to the maker/hobbyist world. Many hobbyists are programmers with a good working knowledge of C and those systems often require operating systems, drivers, and application layers, all of which saddle an already overwhelmed micro to duties that have little to do with their project, but are needed as the foundation layer prior to making their gadget to perform even the simplest task.
But that wasn't always so. Before the days of the microprocessor, many electronic gadgets relied on straight forward logic components to process data and control the I/O. As the microprocessor became more mainstream, more and more logic was pulled into software and controlled by the CPU. Today, to perform something as simple as an “AND” operation between two input signls can sometimes require tens of thousands of lines of OS/Application layer to be installed first!
The world of logic driven devices hasn't gone away though. They've been busy in the realm of programmable logic devices like PLDs and FPGAs (Field Programmable Gate Array). Quietly evolving in the background operating in electronic devices rarely seen by the average consumer all while the modern day CPU/Software structure reigned in the consumer electronics market. And so today's FPGA is incredibly sophisticated with internal reconfigurable RAM blocks and DSP slices that you can assemble like silicon legos into some very powerful hardware.
A properly configured FPGA can accelerate sensor and decision processes hundreds of times faster than most traditional CPUs. The difference is in the inherent design of the CPU. Its designed to perform tasks "sequentially", one-at-a-time whereas the FPGA can be configured to perform many tasks at once.
FPGAs also work great has companion silicon to CPU based systems helping to off load redundant functions where they can be performed more efficiently. This is the configuration most often implemented.
- Board Rev => July - Aug
- Small Qty Board Assembly/Test => Aug - Sept
- Integrate/Test VHDL on rev 2 design "sample build" => Aug - Sept
Main production build assembly/test = Oct - Nov
- Final Shipments = December
Note on Shipping:
I will ship this product international for a $25.00 fee, however I will not ship to any country who is currently on the US embargo ban list, nor will I ship to any country currently engaged in a civil war.
This is an open source design under the Creative Commons Attribution-Share-Alike 4.0 International License. Schematic and board drawing information will be provided at product release.
A tracked robot is a great way to learn how to program with an FPGA. The Tamiya Vehicle Chassis Kit makes a great starting platform since it is not complex electrically, but includes the basic mechanicals to build out your robot. It has the motor and gearbox, but there is not much definition beyond a battery and switch. Our mock-up was literally drawing out where components could be placed on the wood chassis that comes in the kit.
Stage 1: Grease Board Block Diagram
Stage 2: Component Placement Planning
Stage 3: Design Phase, Final Dimension Check
Stage 4: Prototype PCB Fab and Component Assembly
Risks and challenges
I design electronic products for a living. I have PCB suppliers and a board assembly house lined up for production. There is one design rev yet to go on the board so that is why the ship date is pushed out until December. Baring any disasters that could disrupt supply lines, I plan on shipping your Logitraxx in time for Christmas.Learn about accountability on Kickstarter
Have a question? If the info above doesn't help, you can ask the project creator directly.
- (40 days)