Anki Vector/Cozmo Resources SDK (.NET)
This SDK allows manipulation of a resources folder from an "over the air update" OTA file for Anki Vector and the APK files for Anki Cozmo, in any .NET language (C#, VB.NET, F#) or language that interoperates (python) on Windows, Mac, and Linux. This requires that you know how to one of these files, and how extract the contents.
You can play the audio sounds on your computer
Examine the sprite-sequences, and other animations on your computer,
It has lint-like checking to help catch flaws in the resource bundle, so that they can be eliminated before shipping, reducing the test effort
There is some support for Cozmo resources.
Note: This SDK is not a product of Anki or Digital Dream Labs, and is not supported by them.
Getting Started
Download Microsoft development tools
If you working on Windows, download Visual Studio 2019 Community Edition to get started. This version is free for personal use.
To get started on Mac and Linux, you can download .NET Core 3.0.
To play audio you will need to add the following packages to your project:
- NAudio, Used for sound playback of decoded audio
- NVorbis, Used to decode Vorbis audio
- NAudio.Vorbis, Used to complete the bridging of Vorbis to the audio playback.
To play with the sprites you will need to add the following packages to your project:
To work with the vision detects & classifiers you will need to add the following packages to your project:
- EMGU.CV, This provides OpenCV resources to C#; it is is used by the vision classifiers.
- EMGU.CV.runtime.windows, This provides the Windows-specific openCV binaries; if you use another operating system, you'll want to use a package for that OS.
- EMGU.TF.Lite, This provides TensorFlow Lite resources to C#. This is used by the vision classifiers.
- EMGU.TF.Lite.runtime.windows, This provides the Windows-specific TensorFlow Lite binaries; if you use another operating system, you'll want to use a package for that OS.
Download
SDK Example Code / Tutorial Programs
Some examples of how to use the SDK can be found at
Documentation
The documentation can be found at randym32.github.io/Anki.Resources.SDK
Browser configuration notes
The documentation, when browsed from a local filesystem, may require tweaking the browser.
Firefox
Go to about:config and make change to the following:
- security.fileuri.strict_origin_policy set to false
- privacy.file_unique_origin set to false
Chrome
You can not use Chrome with a local file system. You can, however, use an extension like "Web Server for Chrome"
Getting help
Being a new library, there is not yet an established usage pattern, clear place and patterns for getting help. Try
- Official Anki developer forums: https://forums.anki.com/
- Anki Vector developer subreddit: https://www.reddit.com/r/ankivectordevelopers
- Anki robots Discord chat: https://discord.gg/FT8EYwu
Contributing
View the Anki.Resources.SDK GitHub Project for information on contributing.
Grateful Acknowledgements and Special Thanks
Thank-you to the vgmstream and ww2ogg projects, whose efforts allowed decoding of the audio files.
Wayne Venables, you set a very high bar with Anki.Vector.SDK I lifted some of your index.md getting started information for here.