Over time we developed an understanding for how our customers are using the Raspberry Pi in their applications, and what kind of challenges they face when interfacing with external sensors and actuators. To help our customers succeed in commercializing unique solutions based on the Raspberry Pi, we decided to create our very own Raspberry Pi add-on board called ProtoPLC for Raspberry Pi. Please consider backing ProtoPLC for Raspberry Pi on Kickstarter with a pledge today!
We developed a prototype add-on board as a way to flesh out some ideas. The board connects to the Raspberry Pi Model B 26-pin header, and includes several spring terminals for simple connection to external devices. The Raspberry Pi 2 and Model B+ now use a 40-pin header and permit the use of a larger circuit board, so we are transitioning the design to this larger format. The prototype add-on board has everything: wide-range input switching power supply, robust digital I/Os, analog I/O, relay, LEDs, realtime clock, battery backup, and ARM Cortex-M4 MCU for real-time operation independent of the RPi. The prototype board serves as our reference for functionality, manufacturability, and costing.
The ProtoPLC for Raspberry Pi add-on board adds the following features to the Raspberry Pi single board computer:
- Compatibility with Raspberry Pi 2 and Model B+ (ID EEPROM).
- Efficient wide-input switching power supply that powers both the ProtoPLC and Raspberry Pi boards.
- Filtered digital input channels (6*).
- High-current digital output channels (6*).
- Analog input and output channels (1/1*).
- Battery-backed real time clock.
- Programmable LEDs.
- Relay (SPDT).
ARM Cortex-M4 MCU
The ProtoPLC board contains a 32-bit ARM Cortex-M4 MCU that manages the newly added features. Communication with the Raspberry Pi is done over the UART using a command line interface (CLI). The CLI provides a simple way to setup and operate ProtoPLC using common tools like Minicom or the pySerial library for Python. Performance of the system is not limited by the UART speed as explained next.
The ProtoPLC MCU runs a real time operating system (RTOS) that handles communication with the Raspberry Pi and can manage deterministic behavior of external I/O if that is needed. While the external digital I/O channels are physically tied to MCU GPIO, a pass-through mode is planned that maps Raspberry Pi GPIO to external I/O from ProtoPLC. This pass-through mode provides basic compatibility with existing applications that use the RPi GPIO natively. Performance of pass-through mode is expected to be near-native.
The software source code will be available online for download, and will include a permissive license to help you understand how ProtoPLC works and help you build custom versions of the on-board runtime environment if needed. PCB design files and parts list will also be available online for download. Again the idea is to help you understand how ProtoPLC works.
Raspberry Pi 2 / B+ vs Model B
While our initial prototype was developed for the Raspberry Pi Model B, we plan to focus on compatibility with the Raspberry Pi boards having a 40-pin GPIO header (Raspberry Pi 2 and Model B+). The obvious advantages of the newer model includes more GPIO, two additional USB ports (for a total of four), a micro SD slot, consolidated audio/video, and a significant reduction of power consumption. Moreover, the speed advantage of the RPi 2 is hard to ignore.
Proto Armour for Raspberry Pi Enclosure
ProtoPLC for Raspberry Pi integrates neatly with existing Proto Armour for Raspberry Pi cases. These rugged aluminum enclosures are already available for purchase online and will accommodate the ProtoPLC add-on board.
As we head into the next phase of the project, we are firming up the design and making sure the feature set will help you build solutions quickly and cost-effectively. Your input along the way will help us create a robust solution platform that balances features, ease-of-use, and cost.
When the campaign is successfully funded, we'll step-up efforts to complete the design and prototyping of ProtoPLC that is compatible with the Raspberry Pi 2 and Model B+. Initial prototype hardware will then be provided to those premium pledges wanting to participate in a deeper way. The beta software development kit (SDK) will go online afterwards, with schematics to soon follow. We are targeting a late Spring 2015 release to production.
We Ask For Your Help!
In general, we self-invest in the development of products that deliver good value and have well-define ROI for our business. As a way to offer solutions such as ProtoPLC for Raspberry Pi at an accelerated pace, we are launching this crowdfunding initiative to help offset development cost and build initial inventory. A successful campaign will also validate market need and confirm our plan is solid. Please consider backing ProtoPLC for Raspberry Pi on Kickstarter with a pledge today!
If you just aren't ready to commit to a pledge at this time but would like to have a meaningful impact on the development of ProtoPLC for Raspberry Pi, please consider taking our ProtoPLC Survey that was set up to gather opinions about which features would help you most with developing solutions with the Raspberry Pi.
Thanks for reading and we appreciate your support!
MobileApp Systems Team