If I have seen further than others, it is by standing on the shoulders of giants.
Why thingSoC? What problems does it solve?
What value does thingSoC provide?
There are already a number of popular and well-supported development platforms, like Arduino, Beaglebone, Raspberry Pi, and others, so why is thingSoC needed? While we work with and support all those platforms, each has a particular set of limitations, which thingSoC is designed to address.
New Needs for the "Internet of Things"
thingSoC is very well suited for developing new "Internet Things", because :
- thingSoC is designed to automatically identify and configure installed options and peripherals
thingSoC devices are very user friendly. They can detect what options and peripherals are installed in a system and how to communicate with them. Similar to how "USB" works, and how USB knows the difference between a USB Memory Stick and a USB Camera, for example.
This capability alone yields a great user experience, as users will no longer have to deal with configuration and setup, or wondering if two devices are compatible. The thingSoC autodiscovery mechanism allows the system to discover that information. That will tranform the customer support experience for new devices, break-out-boards, etc.
thingSoC Compliant devices implement the thingSoC EEPROM based autodiscovery mechanism, which is compatible with the Linux 3.8 Kernal and Device Tree Overlays. The thingSoC EEPROM based autodiscovery mechanism also implements additional features, however it is backward compatible with the Linux Device Tree Overlay Manager.
- thingSoC is designed to support RF wireless interfaces from the "ground up"
There are designated "RF zones" in the thingSoC specification for supporting on-board antenna and RF interfaces. This is very important for creating a modular IoT platform that yields the maximum radio range with minimum RF interference.
We run into this all the time with the Arduino, the Beaglebone and most others - the basic design of those platforms include ground and power planes that limit the RF performance of expansion cards plugged into them. thingSoC has designated "RF zones" for the placement of on-board antenna and RF interfaces. thingSoC is designed to help you get great RF range, as well as limiting radiated RF interference, by using proven design techniques right from the beginning.
- thingSoC is designed for low power and battery operation
thingSoC includes dedicated pins for battery power, as well as "shutdown/sleep" and "wakeup" pins for integrated battery management and control functions. thingSoC takes a "whole system" approach to reducing power and maximizing battery life.
- thingSoC is designed for solar, wind, thermal, and other alternative charging schemes
- thingSoC includes dedicated pins for external power inputs, with prescribed input protections.
It also includes support for the new USB Type-C charging and wall power specification.
- thingSoC is designed to support higher speed interfaces like USB 3.0 and 10/100/1000 Ethernet
While it may seem counter-intuitive at first, using higher speed interfaces can actually reduce overall system power use. Older, slower interfaces need to stay "Awake" longer to transfer the same amount of data as a faster interface, like SuperSpeed USB. While USB 3.0 (SuperSpeed) may use more power during the actual transfer, since the transfer time is so much shorter, the overall power used for the same data transfer is less than USB 2.0 (High-Speed).
- thingSoC is designed with a secure mounting system for high vibration applications
Many current platforms lack a standardized physical mounting standard, which means they are not suitable for high vibration applications like robots, drones, ebikes, and other moving devices.
Even our smallest board size, the "half-board" includes two (2) mounting holes for secure attachment, and the most used, "single-board" size includes four (4) mounting holes for secure attachment. This means that thingSoC devices can survive tough treatment, and be securely mounted to moving platforms. It also means that packaging for similar sized thingSoC devices are interchangeable. A library of modular 3D package models is in development for standardized 3D printed cases and enclosures.
- thingSoC is designed to support internal testing, monitoring, and data logging operations
Let's face it, for many systems and products out there - proving correct operation and self-testing is an after-thought, if it has been addressed at all. We've seen many interesting projects fail due to the lack of a well thought out testing strategy.
thingSoC TEST level modules eliminate common test lead/test jumper wiring and configuration problems by instrumenting standardized busses on known pins that can be easily probed and monitored. The thingSoC "TEST" level yields modular test and measurement platforms that are easily integrated within a design for remote monitoring and data logging operations.
Building a new IoT widget and launching it on Kickstarter, CrowdSupply, Indiegogo, or elsewhere?
That's great - now, how are you going to do your initial product testing and quality assurance?
Wouldn't it be great to be able to just plug in a modular "TEST" board that can do production programming, and testing of your first production builds inexpensively?
thingSoC supports Zero-Insertion-Force (ZIF) and Spring type pins(Pogo-Pins) for making all of those test jigs that you'll be needing for production testing.
- thingSoC is designed to be interoperable with leading IoT products
thingSoC is a completely open source standard, not tied to any proprietary vendor implementation, CPU architecture, or IDE. thingSoC is designed to be backward compatible with Arduino, rfDuino, Raspberry Pi, Beaglebone, X-Bee, and others.
The size of the thingSoC modules have been chosen specifically to fit within an Arduino Shield, a Beaglebone Cape, a Raspberry PiPlate, as well as several other popular formats. This means that IoT devices designed for thingSoC, will also be able to be used with other platforms, using simple adaptors.
thingSoC includes several capabilities that the other small form factors do not support :
- Production Ready, embeddable hardware platforms that are easy to use
- Standardized auto-discovery firmware system that identifies what boards are installed
- "RF Zones" specification for supporting on-board antenna and RF interfaces
- Built in support for battery, solar, and very low power applications
- High Speed Interface support, including SuperSpeed USB 3.0, PCI-E, and 10/100 Ethernet
- Standardized Mounting System, designed for high vibration platforms (robots, ebikes, drones)
- Standardized testing, instrumentation, monitoring, and data recording interfaces
- Interchangeable platform for break-out-boards, sensors, radios, and other devices
IoT and Maker Space Fragmentation
Many companies and independent design houses have embraced the various "GumStick" form factors as low cost delivery vehicles for their microprocessor boards and/or microprocessor based IP.
While that has served well in lowering the cost of entry for many, the incompatible sizes, incompatible pin assignments, incompatible signal levels and many other proprietary differences have made most of these products unable to connect to one other, or utilize peripherals and radios designed for the other(s). In our opinion, this fragmentation has been limiting the market as a whole, while slowing community development efforts on common application and common driver software.
thingSoC has been designed to address many of the issues and limitations with current IoT development platforms. It is a community sponsored, open source project, with no fees or licensing costs.