Features of the Toolkit

Toolsay network topology

Local and Remote Access

  • PC, phone, and tablet – access your product from anywhere on the internet, even if your customer or product is on a home network or behind a firewall
  • USB – access your product from a PC plugged in directly with USB

Rich User Experience

  • Elegant, responsive apps – visualize and control your products with rich data and immediate feedback, but not information overload
  • Native mobile apps – phone and tablet apps that feel natural to your customers – your iPhone® app feels like a native iPhone app, and likewise for iPad®, Android™, etc.

Easy to connect

  • Plug and play device access – your customers follow these steps:
    1. Connect the device to the network (just plug in the cable – no network setup).
    2. Put the device in activation linkup mode (for example, with a button push or a menu command). The device displays an 8-digit number.
    3. Log into the web site and enter the number. Done.
  • USB setup is even easier – your customers follow these steps:
    1. Log into the web site and install the client app.
    2. Plug the USB cable into the PC. Done.

Connect locally with USB

  • Common experience – the web app that your customers and technicians use to connected over a network also connects via USB
  • Local control – some things are better done in person – you can limit commands that require an operator present to be allowed over USB only

Open, efficient communication

  • Open, scalable, reliable, and secure – communication is based on the Extensible Messaging and Presence Protocol (XMPP) used by the likes of Google Talk and Facebook; we use the industry’s best in real-time, publish-subscribe technology
  • Endpoint authorization – even though the protocol is open, you may not want just anybody to write software that can access your product – you hold the keys
  • Easy to debug – human readable using standard tools like Wireshark
  • Intelligent data updates – interesting data changes are updated quickly to keep your users informed, while changes due to noise are updated more slowly to save bandwidth
  • Forward and backward compatible versioning – designed from the ground up to evolve without leaving deployed devices behind
  • Access products from each other – products with more sophisticated user interfaces can monitor other devices

Secure

  • All network data is encrypted – industry standard web encryption (TLS)
  • Federated authentication – users can log in via any standard OAuth/OpenID provider – whether it’s Facebook or your own corporate web site, your customers can use their existing accounts

Device-level access control

  • Delegated access – customers can grant others read-only or full control of their device
  • Dealers and distributors – grant people in the support network access to devices they service

Property-level access control

  • Control access – assign read and write access for properties based on a user’s role
  • Flexible roles definition – administrators, technicians at various levels, end users, what have you – you define the roles according to your business
  • Individual user authentication – you can set the role of any user, as well as the default role for new customers
  • Sensible defaults – typically, you only need to customize a few properties and roles

Developer friendly

  • Keep firmware and software in sync – define your device once in Excel and use generated C++ and C# code for the device firmware and monitoring software
  • Data-bound UI controls – the Toolkit provides UI controls that you can drag and drop onto a designer surface – the controls automatically update when the device or user changes data
  • Simple, yet flexible API – the well-documented API to the Toolkit is easy to learn, yet provides the flexibility your business needs
  • Automate product testing – because device data obtained from USB or the network is exposed through well-defined .NET APIs, it is readily available for automating your product’s testing using tools such as NUnit or National Instruments TestStand

Device configuration

  • Firmware updates – keep device firmware up-to-date, automatically or manually, from the server or over USB
  • Remote access to device settings – view and modify a device’s configuration from anywhere
  • Automatic backup of device configuration – stored for you to the cloud
  • Replicate configuration – copy configuration between identical or similar devices
  • Offline configuration snapshots – in Excel for ease of editing and ubiquitous access

Device monitoring

  • Multiple devices – work with any number of devices at once – reuse properties, events, and data types across different types of products
  • Email and text messages – you define the alerts; the Toolsay server keeps your customers informed
  • Real-time status and events – users see the latest device data automatically, time stamped from synchronized clocks – there is no refresh button
  • Health summary dashboard – see at a glance the overall health of any number of devices
  • Graphical history – see a graph of the history of any device property
  • Full event history – troubleshoot your product more quickly with its “full medical history” at your side

Device operations

  • Issue commands to devices – immediate feedback of command results
  • Developer debug into – if desired, devices can publish a stream of debug information

Business integration

  • Customized data display – the Toolkit makes it easy to use customized graphics for key device properties
  • Branding – the apps are designed to be customized and branded to match your business
  • Extensible – all components have APIs designed for tailoring to your needs – all components have APIs for tailoring to your needs – use C or C++ to extend devices; use .NET languages like C# and Visual Basic to extend servers and client applications – most presentation customizations can be done from visual designer tools

World ready

  • Language and culture – additional languages, cultural formatting, and English-metric unit conversion
  • Time zone aware – performs conversions automatically to account for time zones and daylight savings
  • String pooling – embedded software stores strings in shared flash pool, keeping RAM and flash usage low while freeing your customers from artificial length limitations of any given string