-
Notifications
You must be signed in to change notification settings - Fork 131
Roadmap
mvillalba edited this page Oct 7, 2011
·
4 revisions
Warning: Most of what you see on 2.x versions is pipe-dream meets over-engineering meets sleep-deprivation and is unlikely to be implemented unless I ever have a use for it (which is unlikely, to say the least).
Focus: Core ANT
- Core ANT
Focus: ANT-FS
- Core ANT-FS
- FR310XT download demo
- USB2 stick driver
Focus: ANT+
- Core ANT+
- ANT+ device profiles (master and slave)
- ANT+ device simulator (uses profiles)
Focus: CLI tools
- Core CLI utils (helper classes, mostly)
- CLI Stick utils (device finder, capabilities interrogator, system reset, etc)
- CLI data serializer for ANT+ profiles (ant-plus* CLI downloader/uploader for ANT-FS devices
- Stick finder (config utility)
Focus: Tweaks and drivers
- Refactor/re-organize sources (all of node and event, primarily)
- Fix API naming inconsistencies
- Write more and better documentation
- Write more tests/check test coverage
- Drivers for other ANT sticks (Nordic Semiconductors?)
- Configuration profiles for ANT-FS devices (FR*, BP*, etc)
- Device support list for ANT+ and ANT-FS devices.
Focus: ?
- ?
Focus: Python 3 and IPC
- Pure Py3K implementation (without backwards compatibility)
- ANT daemon, and daemon-based driver (share a single stick among several programs)
- Higher level constructs for some things (like setting up a channel)
- Node sharing via ANT daemon
Focus: Improved IPC
- VirtualNode, a Node poser class that actually uses a subset of all resources a Node has (say, 2 channels, 1 netkey, etc)
- Node daemon support for VirtualNode (antd?)
- Network key sharing between VirtualNodes (most nodes will most likely want the same net keys)
- Resource pooling of sorts; perhaps implemented as a "SuperNode", or "HyperNode", allowing the creation of Nodes capable of handling more resources than allowed by single stick. Our "SuperNode" could simply be a Node superset class that provides multi-node access via added methods, but still allows ordinary clients to pretend they are running a simple Node.
- SuperNode support for VirtualNode so that VirtualNodes can be constructed using the resources of multiple sticks.
Focus: Cross-language access
- C-lang library to provide core functionality via ANT daemon (so it can be used from Java/C/.NET/etc).
- Java wrapper for C lib
- C++ wrapper for C lib
- .NET wrapper for C lib
Focus: Daemon IPC
- Make ANT daemon communicate via AMQP broker.
- Make ANT daemon capable of sharing its resource pool via AMQP, so that a connecting client doesn't really know the sticks it is driving are on different machines.
- Make it so that ANT daemon clients can actually discover and pick a stick if they need to.
There are some features I don't know when to implement, these go here:
- Frequency hopping
- Some channel configurations described in the ANT specification
- Data playback/simulation (ANTware II, sort of). That is, using a previously captured (or generated data log (say, HRM data), and an ANT stick, pose as an ANT+ HRM device.