Our expertise covers a wide range of programming and electronics domains, and you’ll find a selection of these below.
The preferred approach is one where we’ll discuss your needs, elaborate your specific requirements and provide a fixed flat fee quote. The 3 steps to a great product HOWTO can help you prepare to create a sweet system and find out more about what to expect. Contact us to learn more.
Electronics: Circuit design, PCB prototyping, embedded programming
Here are just a few samples of what’s been worked on in recent years.
Location-aware Asset Manager
This module combined BLE, cellular connectivity, GPS and sensor data to provide asset management in a package no wider than 2.5cm.
The system was designed to interact with a cross platform mobile application in order to authenticate use and, when required, report back its location through the cellular network. An early demo and description can be seen here:
High Throughput Remote Sensor System
This module and mobile app was created as part of an Australian University’s research project looking into merging wearable tech with their newly developed nanowire sensors.
The system monitored up to ten sensors, providing data to the app in real-time through bluetooth low energy or storing the values in flash for later retrieval, and managing external I/O pins at the behest of the app user, while the app itself was responsible for graphing and sharing data with the cloud.
Network Monitoring and Control
A small run of prototypes in various configurations for this system, which features Wi-Fi and Ethernet connectivity, it’s own access point and webserver, a full suite of networking tests and reporting as well as a cross platfrom management application. All application logic is hosted on an ESP82566.
The module was designed to provide precise measurements while being modular, so we could swap out different sensors depending on testing and requirements. One of the early trial runs can be seen here:
Vehicle Fleet Management and control
The on-board hardware module is a low powered, plug&play component that can interact with any Bluetooth 4 device and may be upgraded remotely, using a cryptographically transmitted and verified firmware. A very wide range of vehicle makes and models are supported, either through a data bypass or wired directly.
Key technologies: Bluetooth Low Energy, vehicle immobilizer bypass, Atmel XMEGA.
Position- and orientation-aware handheld imaging system that allows for the automated creation of virtual environments based on data captured on-site. Captured data is stored on SD cards, and the system provides both a field UI and a configuration and control GUI for the desktop.
Key technologies: camera control, GPS, (3-axis) accelerometers, gyroscopes and magnetometers, Atmel XMEGA.
Handheld visible light translator
Handheld device which translates light colour into sound (and usable data, using SPI), useful for the vision impaired, as a colour detection sensor for other systems and more. The system combines a real-time tone generation/colour sampling program, written in C and running on an AVR microprocessor, with the colour sensor and supporting hardware.
Key technologies: TCS3200 sensors, Atmel mega328.
A host of open source tools, projects and libraries, most of which are available through http://flyingcarsandstuff.com/
Multiplayer turn-based games server, mobile clients
Auto-scaling cluster of multiplayer rooms for turn-based games (optionally featuring in-game chat, purchasing, betting and more), along with support systems (authentication, directory, account management, etc). The core libraries and communication layers are implemented in C++ and re-usable on both the server- and client-side (desktop and mobile), and are wrapped and exported as Python modules. Business logic and interfacing with the NoSQL db is done through the upper-layer (in Python) which allows for rapid prototyping and expansions to the system.
Each server can host a theoretical maximum of over 30,000 rooms (each with anywhere between 2 and 10 players), and “wings” of rooms are decoupled such that any number of servers may be added to the group dynamically.
Initial games implemented are card based, but any group or turn-based game can be rapidly added as all the game logic runs in Python drivers, while leveraging the extensive functionality of the core libraries for service management, client-server communication and game implementation.
Key Technologies: Boost, EncMQ, Google protocol buffers, ZeroMQ, MongoDB
Social gaming platform and universe
Multi-user and multi-interface environment for social gaming, including everything from the underlying network architecture and database repositories up to APIs for UI clients (on platforms like iPhone/Android and facebook/myspace through Flash).
The system is designed to accommodate tens of thousands of simultaneous users (millions of accounts), and implements game logic and independent scripted modules using a loosely coupled event notification system and multiple observer processes (for marking the passage of time, awarding achievements and generally applying the “laws of physics” of the virtual universe).
GraphDB-backed knowledge management and extraction Server/Data
High-availability, massive graph network database, linking people and objects in multiple complex webs of relations. Machine learning subsystems are used for classification and feature extraction, as well as unsupervised learning for clustering and frequent itemset determinations.
The Titan graph database, with a Cassandra distributed db back-end, is used to store the graph data while a Rexster/Bulbs interface provides low-level tie-in for the model layer. Cassandra is also used as the storage engine for globally distributed media and archive repositories.
Key Technologies: Mahout, Hadoop, Titan Graph db, Cassandra
Mac POS/Licensing Server/WebStore tie-in
Instrumental in releasing a reliable and flexible product implementing the transport layer, flexible job scheduler, payment processing, gift card system, all the POS resources, and distinct components such as a separate, secure, licensing servers.
• Linux Journal, December 2004: Developing for the Atmel AVR microcontroller on Linux
• SysAdmin Magazine, October 2003: VOCP Command Shells — Managing Your Systems through the Telephone. Featured Article.