The following is a fine study of the open source, modular approach. While the target product is not an automobile, the principles and methodology used are applicable to the Tsikot PhUV project. Moreover, as we increasingly consider adding IT components (such as (RFID or zigbee, ECU-interfaced diagnostics, etc.), the software modules required can obviously be developed using this approach.
From http://buglabs.net/about
What is Bug Labs?
Bug Labs is developing BUG: An open source, web-enabled, modular software + hardware platform.
Bug Labs is a new kind of technology company, enabling a new generation of engineers to tap their creativity and build any type of device they want, without having to solder, learn solid state electronics, or go to China. Bug Labs envisions a future where CE stands for Community Electronics, the term "mashups" applies equally to hardware as it does to Web services, and entrepreneurs can appeal to numerous markets by inventing "The Long Tail" of devices.
The Story
Bug Labs didn't just start with a dream or a vision. As kids, we were more likely to take apart new toys than actually play with them, just to see what was inside. As teenagers, personal computers were still new and as much a challenge to tinker with as they were to operate.
With BUG, we want people to recapture and share this excitement again, and we want them to apply this to their everyday device. We believe everybody is an inventor at heart, so we've developed a platform for users to create and forever modify their favorite gadget, allowing for ultimate customization and use.
Inspiration
There are so many great gadget ideas that haven't been thought of yet. With BUG, we want to unlock and inspire the discovery and creation of as many of these devices as possible.
Products
BUG is a collection of easy-to-use, open source hardware modules, each capable of producing one or more Web services. These modules snap together physically and the services connect together logically to enable users to easily build, program and share innovative devices and applications. With BUG, we don't define the final products - you do.
BUGbase - shipping Q4, 2007
BUGbase is the foundation of your BUG device. It's a fully programmable and "hackable" Linux computer, equipped with a fast CPU, 128MB RAM, built-in WiFi, rechargeable battery, USB, Ethernet, and a small LCD with button controls. It also has a tripod mount because, well, why not? Each BUGbase houses four connectors for users to combine any assortment of BUGmodules to create their ultimate gadget.
Technical Specifications
- ARM1136JF-S-based microprocessor
- 1 USB 2.0 HS host interface/4 hub port connections
- 1 USB OTG HS interface
- 4 UART serial links
- 4 channel SPI interface
- I2C (400 kbits) interface/4 channels
- I2S interface/2 channels
- Smart LCD interface
- Camera sensor interface
- Micro memory card interface
- MPEG4 hardware encoding/decoding
- Hardware graphic acceleration
- 10/100 Ethernet MAC
- 802.11b/g
- Base unit LCD module interface
- Base unit onboard memory (FLASH/DDR SDRAM)
- JTAG/ICE support
- Serial debug port
- Power system
- AC operation
- Battery operation/up to 4 external batteries
- Fast battery charging/simultaneous of internal and external batteries
- Smart power management support
- Battery-backed real-time clock
- Audio out via onboard piezo speaker
BUGmodules
BUGmodules are the functional components used to add capabilities to your BUG device. Each module connects to the BUGbase, and installing and swapping modules is literally a snap. Each additional module exponentially increases the overall function of your BUG, and every combination unlocks virtually unlimited new potential devices.
Software
BUG is built entirely with open source software. BMI, the BUG Module Interface, attaches devices to the BUG. Device-based services and applications are dynamically available based on which modules are connected to the BUG. Higher up the stack is Java, which hosts a service-oriented component runtime called OSGi. Java and OSGi make creating new BUG applications simple and intuitive, as BUG applications are essentially one or more bundles. In addition, each BUG module launches an OSGi bundle which in turn creates services for other components to consume. BUG applications are created using the BUG SDK (internally named Dragonfly), and are shared with other developers and users through BUGnet, our online community.
Screenshots of SDK






