My name is Daniel and I am a computer programmer by trade and mechatronics hobbyist (building robots!). As for the hardware designs, to put you at ease, all my designs are vetted by an experienced electrical engineer.
I was working on a project and after running into roadblocks with Arduino hardware and software. While the software could be fixed, it was the shields that wouldn't work together. To fix this reoccurring problem, I came up with XDev. XDev's design gives you digital I/O pins that can be used for anything. There are no pin conflicts, ever and there are no protocol restrictions, ever. However, to reach more then just a small group of people which would keep it prohibitively expensive, a complete system that is ready is needed from day one. This means there needs to be a variety of quality expansion boards and powerful but easy to use development software ready to go upon launch. Without these, interest in XDev will fizzle and XDev will fall into obscurity, joining many "duino" variants and other ill-conceived boards. So, I have the plan but I don't have the funds the keep afloat and invest in equipment/prototypes/parts/etc, so I decided to make a Kickstarter project. If this sounds like a development platform you want to see succeed then please pledge, even if it's only a few buck.
If you skipped the above section, XDev was created because the Arduino has some frustrating issues that need addressing.
Protocol Scarcity - Sometimes you need more of protocol XYZ or interrupts
Missing Protocols - Not many protocols are available.
Pin Collisions - Some boards try to use the same pin. Not good. The Double Problem - You cant use the same shield twice. Arduino IDE/GUI - It can be very hindering
Protocol Scarcity and Missing Protocol solution:
XDev was designed with universal function in mind so a unique processor created by XMOS was used. It's different in that it actually can run four concurrent threads at 100MHz each or eight threads at 50MHz. Among other things, these threads allow you to implement protocols in software and run them at the same time like they were hardware based protocols without making a mess of your code or creating timing issues. Many protocols are already written and unlike other microcontrollers, anything missing can be created.
Pin Collisions and The Double Problem solution:
Each expansion board has an SMD connector on the bottom and one on the top. The expansion board uses the first pins and then "forwards" the rest to the front so that the next expansion board can use the first pins and not have a pin collision. It's difficult to explain both clearly and succinctly, so here is an illustration that may help you understand it.
If you were to stack two of these, each board would have it's own two pins, using a total of 4 pins. This means that even if you are using I2C, you can have multiples of the same expansion board. Almost all boards listed use three lines, so you can stack five without a problem.
See the the Software section below.
In addition to the XDev Board, I've also lined up many expansion boards. Here is a list of what is developed or in progress.
XDev Board features:
2 x 2 inches (smaller than Arduino)
400MHz XMOS processor with 8 hardware threads
Loads 64KB programs
JTAG debug and serial port communication over USB (no drivers required!)
1 Megabyte of flash memory storage
Efficient voltage converters (Arduino and variants are inefficient)
15 universal digital I/O pins
Max I/O speed: 60 MHz
Common reset pin
2 Amps @ 3.3V to power expansion boards
Uses the "standard" DC barrel power jack
Can be powered by USB
IO Breakout expansion features:
40 individually programmable lines (GPIO, interrupt or 8-bit bus)
Uses 3 lines
Full Breakout expansion features:
You getthree of these expansion boards when you choose this!
Breaks out every pin for easy access
Uses all remaining lines! ("topper" board)
Partial Breakout expansion features:
You get three of these expansion boards when you choose this!
Breaks out 3 pins (great for [most] SPI or I2C/UART + Interrupt)
Uses 3 lines
SD Card expansion features:
Supports both SD and SDHC cards (MiniSD and MicroSD using adapter)
Every board comes with standoffs to securely connect each board to ensure they won't break. Also, external power supplies
In addition to the files for each board, I'll also be uploading Eagle files that you can use as a template for making new boards. The templates are a pre-routed for the number of pins you want to use.
Designing hardware is great and all but without the software, it's a paperweight. Many people including myself are fed up with the subpar Arduino IDE (the GUI for writing code). To remedy this, XDev provides an easy to use IDE that makes coding a breeze. You will be able to stack existing boards (prewritten code!) and make custom boards with all the protocols you need in place. This will generate the code you need to to get developing the rest of your XC/C/C++ code quickly!
Qt Creator is being used as the base of this IDE because it's a mature IDE and is 100% plugin driven. This makes development time much shorter because one only need to pull out what isnt needed/wanter and make a couple plugins for what is missing without having to muddle in the core of the IDE itself. Of course the IDE will come bundle with a compiler.
The IDE makes it much easier to manage all your projects.
You can work on both small and large projects with a syntax friendly editor.
Also, interpreting rapidly updating data sent back via printf/println can be confusing so in addition to text output, I'm incorporating data visualizers. The set of visualizers includes gauges, bars and line graphs and more so that you can easily understand what that sensor is trying to tell you.
I'll be posting code, screenshots and pictures as the project progresses.
You can pick any expansion for every $25 you back the project.
The date listed is realistic, not just wishful thinking.
Risks and challenges
The risk is the amount of time this will take to complete the software as well as finishing all the expansions. So it's not a pipe dream but it's also not a done deal (some but not all expansions are completed) which is what I think Kickstarter was intended for from the beginning.