Chipmunk AV Controller Box Cover
Visit Chipmunk AV Forums...
Lua The Language Logo Microsoft .NET Logo

Version 2.0 Installation Instructions

If you are upgrading from a 1.x version to a 2.x version the following additional steps apply:

  1. Ensure you have the Microsoft .NET Framework 2.0 installed. This release will not run under the .NET 1.1 Framework.
  2. If you are upgrading from a 1.x version, save all your Command Tree configuration files in Xml format and back them up. Please note that 1.x Command Tree configuration files will only work with Chipmunk AV Controller 2.x if they have been saved in Xml format. Binary (.dat) configuration files will not open. Make a backup of your license key.
  3. We have had to make some breaking changes to the plugin infrastructure between 1.x and 2.0 which means that you will not be able to import your plugin settings. These will need to be re-entered after you have installed version 2.0.

Upgrading from any previous version:

  1. Uninstall any previous versions using Control Panel | Add/Remove Programs.
  2. Run Chipmunk.Setup.msi to install the latest version.
  3. If you plan to run Chipmunk software remote controls on your Pocket PC, you will also need to install Microsoft .Net Compact Framework 2.0 Service Pack 1 on your Pocket PC.

History

May 11, 2007

Build 2.0.2687.24109

Item Description
Chipmunk AV Controller Application - Enhancements
Lua Environment Viewer The viewer can now remain permanently open for debugging. Refresh button added.
Auto startup Legacy COM Interop code removed. Now uses Win32 startup registry key for local user.
Lua Lua scripting engine upgraded to version 5.1.2
Chipmunk AV Controller Application - Bug Fixes
Enable/Disable Command Wasn't working correctly when enabling/disabling the root node. Fixed.
Run Executable Typo fixed in UI.
Auto Lua C Module Loading Chipmunk.lua startup script modified to auto-load C modules (dlls) from user's Lua folder. Was only working for .lua script modules.

April 7, 2007

Build 2.0.2648.28898

Item Description
Chipmunk AV Controller Application - Enhancements
New controller functions Chipmunk.Controller:GetXmlCommandTree(), Chipmunk.Controller:GetJsonCommandTree(), Chipmunk.Controller:GetJsonAboutProperties() added. See section 3: How to Use Scripting.
Web-enabled controller Chipmunk now comes with a web-enabled Chipmunk AV Controller. The web server plugin needs to be configured and running. Visit http://[host]:[port]/controller.html
Help Documentation Section 3: How to Use Scripting updated. Also, new Getting Started section: "Installation & Configuration"
Trial Period The number of command tree items allowed during the trial period has been increased to 100.

March 20, 2007

Build 2.0.2632.27428

Item Description
Chipmunk AV Controller Application - Bug Fixes
Hangs on startup If you were unlucky with timings, Chipmunk could hang on startup after upgrading to a newer version. Fixed
Chipmunk AV Controller Application - Enhancement
LastPayload Chipmunk.Controller.PluginEvent event added. The Chipmunk.lua module now subscribes to this event to set the LastPayload Lua table when Chipmunk receives an event.
Plugins
USB-UIRT plugin could occasionally crash when coming out of Learn mode Better error handling implemented.

March 16, 2007

Build 2.0.2614.30372

Item Description
Chipmunk AV Controller Application - Enhancements
Lua Initialization Chipmunk.lua module now fully responsible for initializing Lua environment.
JSON Support Chipmunk.Json Lua module added for JSON support.
Lua Namespace New nested Chipmunk namespace created. See Section 3: How to Use Scripting. For those users who wish to emulate the old API, please uncomment the relevant section of the Chipmunk.lua package found in [Program Files]\Home Cinema Solutions\Chipmunk AV Controller\2.0\Controller\Lua. Backup and edit with care. Reload scripting engine or restart Chipmunk. We recommend you update your Lua scripts rather than revert to the old API.
New GetFolderPath() function The Chipmunk.Controller:GetFolderPath(specialFolder) function replaces the GetUserAppDataPath() function. This new function offers greater flexibility.
Lua 5.1 Plugin Modules Chipmunk now auto-loads Lua modules from [Documents and Settings]\[User]\Application Data\Home Cinema Solutions\Chipmunk AV Controller\2.0\Plugins\Lua
Updated Help Documentation "Section 3: How to Use Scripting" has been rewritten. A new "Plugin API" section has also been added. Documentation on the CX777ES, CyrstalFontz and XmlProcessor plugins has also been added.
Script Editor The Lua print function is now available when using the Script Editor. Script start and end times are also now given in the results pane.
Plugins
All Plugins All Lua scriptable plugins have been updated to use the new Chipmunk.Plugins namespace.
Web Server Plugin json.js, ajaxjson.js and payload.js scripts added to the /scripts folder. JSON sample scripts added.

February 16, 2007

Build 2.0.2591.42057

Item Description
Chipmunk AV Controller Application - Bug Fixes
Memory Leak in Payload/Variable objects when used in scripts A critical bug has been identified in LuaInterface. LuaInterface was leaking memory when large numbers of Payloads/Variables were being processed. Now fixed.
Memory Leak in Logging service when not enabled. An internal queue was left open when the logging service was stopped. Now fixed.
Splash screen ObjectDisposedException This error could occasionally occur on startup when the splash screen closed. Fixed
Main window ArgumentOutOfRange Exception This error would occur when a tree item was clicked before Chipmunk had fully initialized. Fixed
Script editor loses focus when maximized When launched maximized the editor would not have focus until the user had clicked on the form. Fixed
Chipmunk AV Controller Application - Enhancements
New Lua Environment Viewer The Lua Environment Viewer replaces the Lua Variable Viewer. The new viewer takes advantage of Lua 5.1.1's new package system to show the current Lua Environment.
Event Service A new internal queue has been added to manage high volumes of incoming events.
Lua 5.1 The Lua scripting engine has been updated to version 5.1. New features:
  • New module system
  • Incremental garbage collection
  • New mechanisms for varargs
  • New syntax for long strings and comments
  • Mod and length operators
  • Metatables for all types
  • New configuration scheme
  • A fully reentrant parser
Chipmunk.LuaInteface LuaInteface has been updated. Features and bug fixes:
  • LuaInterface will now work correctly with Generic C# classes
  • CLR inner types are now supported
  • Bug fix where some Lua proxy objects would be associated with the wrong CLR object
  • If a CLR class has an array accessor, the elements can be accessed using the regular Lua indexing interface. So, for example, instead of this:

    Request.QueryString:get_Item("path")

    -- You can now write this:

    Request.QueryString["path"]

  • Syntax for loading .NET assemblies has been made easier
  • Bug fix where of some static methods would reference an invalid pointer
  • Bug fix where strings with embedded null characters are passed in or out of Lua
  • Bug fix where garbage collection would cause Lua to loose track of pointers to CLR functions
  • Static methods must now be called using a dot to separate class and method name, rather than semicolon. Instance methods can still use the semicolon
  • Static methods now much faster due to better caching
  • Overriding C# methods from Lua is fixed (broken with .net 2.0)
  • Registering static C# functions for Lua is fixed (broken with Lua-5.1.1)
  • Bug fix where RegisterFunction had been leaking things onto the stack
  • Internal lua panics (due to API violations) now throw LuaExceptions into .net. This particular problem would previously result in Chipmunk crashing without warning
  • If .net code throws an exception into Lua and lua does not handle it, the original exception is forwarded back out to .net
  • Bug fix in the Lua 5.1.1 gmatch C code - it was improperly assuming gmatch only works with tables
Script Editor
  • Split container enables editor and result panes to be resized
  • New Command & Event Payload tabs
  • Error line highlighting
  • Improved error messages
Plugins
TCPClient Updated to version 1.1

January 16, 2007

Build 2.0.2570.27467

Item Description
Chipmunk AV Controller Application - Enhancements
Logging Manager Logs can now be limited in size and deleted after a specified number of days. Options are now available for logging specific controller activities.
About Dialog "Logging To" field added.
Plugins
Networking Two new plugins have been added: TCP Event Server & TCP Client, enhancing Chipmunk's networking capabilities.
Web Server New HttpUtility.WebRoot property added and Request:GetCookie bug fixed.

December 18, 2006

Build 2.0.2541.28532

Item Description
Chipmunk AV Controller Application - Bug Fixes
Escape sequencing issues with Payload to Lua conversion This issue affected LastPayload and Lua visualizations. Fixed
"Last 5 Events" status bar panel incorrectly displays EventStrings Special characters are now escaped using C style escape sequences. A tooltip has also been added for displaying long EventStrings.
Initializing a Payload from Lua with a null EventString causes Chipmunk to crash Payload.EventString can no longer be set to null
Initializing a Variable from Lua with a null Name or Value causes Chipmunk to crash Variable.Name and Variable.Value can no longer be set to null
Chipmunk AV Controller Application - Enhancements
New fields added to About Dialog Fields added: Last Started, Last Stopped, Running Since, Logging, Dawn/Dusk, and Loading From
Plugins
Updated Plugins RS232 Serial, GC-100, CrystalFontz USB LCD, Web Server. The RS232 Serial plugin has been completely re-written. We have kept the DeviceID the same so that existing Command Tree commands using this plugin will still work. You will need to re-enter the serial port settings. For existing serial commands to work with this version, be sure to enter the same "Device Name" in the "Serial Settings" dialog.

November 20, 2006

Build 2.0.2504.22118

Item Description
Chipmunk AV Controller Application - Bug Fixes
Toggle Dialog not closing when "Apply" clicked Fixed
Chipmunk not terminating when plugin events disabled Chipmunk uses the OnChipmunkClose event to trigger application termination. In this release, only plugin events are enabled/disabled by this function. Chipmunk events will continue to transmit
Cross Threading We have resolved a few cross-threading issues on various screens.
The Notes "Apply" button is not always enabled after editing the Notes field Fixed
Goto loop detection disabled The introduction of logging in version 2.0 disabled the Goto loop detection safeguard (where Goto commands were automatically terminated after 100 hops). This has now been reinstated.
Unresponsive Plugin Manager Web services (used by the feedback, error reporting and plugin manager features) were causing the application to become non-responsive if there were problems with the client's network or internet connection. This has been fixed.
Chipmunk AV Controller Application - Enhancements / New Features
New Lua Functions
  • ExecuteByID(nodeID): Executes a command tree item by its node ID. Use the Xml Visualizer to obtain a node's ID.
  • ReloadPlugins(): Performs the same action as "Reload Plugins" on the Tools | Plugin Manager tabs. Reinitialises plugins.
  • ResetToggles(): Performs the same action as Actions | Reset All Toggles (Ctrl+Shift+R).
  • LogPluginEvents(enable, pluginID): Enables/disables logging for a given plugin (where enable is [true|false]).
  • EnableLogging(enable): Enables/disables the logging service (where enable is [true|false]).
  • EnablePluginEvents(enable): Performs the same action as Actions | Disable Plugin Events (F10). Enable is [true|false].
  • EnableDawnDuskEvents(enable): Enables/disables dawn/dusk events (where enable is [true|false]).
  • SaveCommandTree(): Performs the same action as File | Save (Ctrl+S).
  • ExitChipmunk(): Performs the same action as File | Exit Chipmunk.
  • LuaPersistableData: Enables data to be saved and restored between Chipmunk sessions.
New Shutdown Command This new Chipmunk command enables the user to shut down the system with various options (such as hibernate/suspend or reboot). In conjunction with the USB-UIRT, users can now suspend and resume the system via remote control.
New OnChipmunkResume Event This new Chipmunk event fires when the system is about to come out of suspension/hibernation.
Editing learned Events Double clicking a previously learned event will now select the appropriate item from the learn drop down filter and launch the associated learn dialog without the user having to manually select it.
Display Updating When a previously learned event is highlighted in the command tree, the appropriate learn filter drop down entry is now selected.
Lua Editor The Lua Script Editor will now run scripts asynchronously. This will improve the application's responsiveness.
Visualizations A new Edit | Visualize menu option has been added. This feature will enable you to view any command tree item and its children as XML, HTML, or Lua. The latter option will automatically generate a lua script from a macro, command or event item, saving you the trouble of having to code the script manually. A new ExecuteByID() Lua function has also been added which will enable any command tree item to be executed from Luascript.
Scripting Chipmunk Commands Up until now, it has only been possible to issue commands to plugins from Luascript. Starting with this release you will now be able to script ALL commands (both plugins and standard Chipmunk commands such as "Enable", "Disable", "Goto", and "Execute"). This greatly increases your control over the controller from Luascript.
Test Running Commands Test Running commands will now report back errors, saving the user from having to consult the logging manager.
Flashing System Tray Icon When the controller is minimized to the system tray the chipmunk icon will now flash red when an event is received.
Xml Validation All Xml command trees and exported folders are now validated against an internal Xml schema before loading. Any errors will be reported back to the user.
Plugins
OSD Plugin New option to specify the size of individual popup screens in the Command dialog. If no size is specified, the default settings are used.

October 23, 2006

Build 2.0.2487.23618

Item Description
Chipmunk AV Controller Application
New Lua Function Added To add a log entry from Lua use the new function AddLogEntry(caption, description, LogEntryType). Further details here
Error submission web service Additional information sent (OS version and Chipmunk build)
Remote Control Designer
Bug: Serialization encoding issues The .NET Framework was serializing properties using the regional settings (specifically the list separator). This prevented the XML file opening in the remote control. Fixed: now uses neutral culture.
Plugins
RedRat3 Critical Bug Version 2.1 fixes several issues with IR learning and transmitting
Web Server Plugin Enhancement Version 2.1 includes new Windows Media Player events, and minor bug fixes. Further details here

October 08, 2006

Build 2.0.2472.20665 QFE Release (Quick Fixes)

Item Description
Chipmunk AV Controller Application
Intermittently Working F5 shortcut key Fixed. The F5 shortcut key was not always working. There was a general problem with shortcut key behaviour which has now been fixed.

October 06, 2006

Build 2.0.2470.21056 QFE Release (Quick Fixes)

Item Description
Chipmunk AV Controller Application
Web Service URL Incorrect Fixed. The Web Service URL in the chipmunk.exe.config configuration file (C:\Program Files\Home Cinema Solutions\Chipmunk AV Controller\2.0\chipmunk.exe.config) was incorrect. This prevented the plugin downloads and feedback features from working. It now points to http://www.chipmunkav.com/support/webservice/chipmunk.asmx

October 01, 2006

Build 2.0.2465.23413 QFE Release (Quick Fixes)

Item Description
Chipmunk AV Controller Application
Bug: Chipmunk "Execute" Command not logging errors to error log Fixed: Whether or not suppress errors is enabled for this command type, all errors are now logged to the error log
Bug: Double-click Command Editing raises ArgumentOutOfRangeException when a Chipmunk Command is not selected Fixed. If a Command is now double-clicked the associated Chipmunk Command type is selected, highlighted, and the associated dialog launched
About Dialog: No assembly build number listed Assembly build now listed, as well as the product version
About Dialog: Unable to copy list items to clipboard Ctrl+C enabled & context menu added. One or more selected items can now be copied.
Help Typos corrected and new "Scripting" section added to RS232 Serial plugin

September 20, 2006

Version 2.0 Release

Item Description
Chipmunk AV Controller Application
Plugin location Plugins are now located in and loaded from the current user's Documents and Settings Application Data folder
Configuration files location All configuration files are now located within the current user's Documents and Settings Application Data folder. This resolves problems with Windows XP restricted user accounts.
New: Logging Chipmunk can now log events received, commands sent and errors raised by plugins.
New: LED Settings It is now possible to configure the LED color settings
New: Improved UI New Tool strip added with shortcut icons for most functions
New: Last 5 Events The last 5 Events can be viewed by clicking on the status bar at the bottom of the controller window
Chipmunk Plugin SDK
Intra-Plugin communication It is now possible for one plugin to launch another plugin's dialog
LastPayload Variables Payload Variables are now accessed from Lua script via Variable name rather than index number
Simplified Events Plugin events are now sent to Chipmunk as .NET method calls rather than having to raise events
Error Logging Plugin Errors can now be logged using Chipmunk's built in Logging functionality
New Plugins
Global Caché GC-100 Plugin Network device supporting serial, relay, ir and digital input communication. Version 2 of this plugin now supports the GC-IRL device enabling infrared commands to be learned in Pronto format.
X10 CM17A Plugin Transmits commands via the CM17A serial interface module (USA Only)
On Screen Display Plugin Completely rewritten. Now supports HTML rendering and online content

June 09, 2006

Version 1.0.21.0 Release

Item Description
Chipmunk AV Controller Application
Launch On Windows Startup - Shortcut path to exe incorrect. Shortcut now saves correctly when feature is enabled.
Script Editor - was not remembering last size or screen position. Now remembers last size and location.
Feature request: Quick launch Command editing by double clicking on the Command. New menu option: Tools | General Settings | Enable Double Click Command Editing. Double clicking on an active Command will now launch the appropriate editor.
Feature request: A Chipmunk event which fires when the Scripting Editor is reset. New Chipmunk Event: OnScriptingEngineReset. This fires when the scripting engine is reset (either from the main window or from a plugin).
Download Manager Text Box not scrolling. After downloading a plugin, the feedback text box was not scrolling down to the last message. Fixed
No way to obtain Chipmunk application path from Lua New function registered with Lua: GetChipmunkPath()
Enhancement New function registered with Lua: DoString(chunk). Returns a formatted result
User comment: Would be good to try the Download Manager functionality during the trial period. Download Manager now functional during trial period.
Chipmunk Plugin SDK
New event: IPluginHost.PluginEventsEnabled This event fires when Plugin events are enabled (ie from the menu option: Actions | Enable/Disable Plugin Events)
New event: IPluginHost.PluginEventsDisabled As above
New event: IPluginHost.ComparePayloads By default, Chipmunk AV Controller compares the Payload.EventString property of a plugin event with the EventStrings stored in the Command Tree. This event fires when Chipmunk is about to compare Payloads. You can now override this behaviour and perform your own comparison, returning true if the Payloads match, otherwise false.
New event: IScriptingHost.ScriptingEngineReset This event fires when the Scripting Engine is reset. This is useful if you need to recreate Lua variables and functions that will have been destroyed by resetting the engine.
New function: IScriptingHost.RegisterFunction(string path, object target, MethodInfo method) This method enables you to register a .NET method with Lua, allowing the .NET method to be called from Luascript.
Three new overloaded versions of IScriptingHost.DoString() IScriptingHost.DoString(string)
IScriptingHost.DoString(string, out string) - returns a formatted result
IScriptingHost.DoString(string, out Exception, out object[]) - returns object[] values and a Lua Exception
IScriptingHost.DoString(string, out Exception, out object[], out IPayload[]) - in addition to the above, returns Payloads that may have been executed by the Lua script.
New Plugins
Web Server Plugin Sends Events To Chipmunk from a web page. Includes Web-enabled Windows Media Player; Web-enabled Script Console; sample remote controls, AJAX support and HTTPS.
RedRat3 Plugin The RedRat3 USB Infrared device is now supported. RedRat3 is a USB device that can learn and transmit IR signals.
AppController Plugin by Jon McGuire Controls other Windows applications installed on the same machine by using Windows-message commands. Working examples for Winamp and PowerDVD included

April 17, 2006

Version 1.0.17.0 QFE Release (Quick Fixes)

Item Description
Chipmunk AV Controller Application
Chipmunk slow to come out of learn mode after learning a plugin event. Fixed, along with performance improvements of the event learning process.
Plugin settings implementing IXMLPersistable were not being correctly restored after plugins were dynamically reloaded. Fixed.
Wrong version number showing in Error Dialog. Fixed.
Loading times. Improvements made to loading of plugins/settings.
New Plugin! In response to your requests, we are making available a new Time Scheduler plugin - included with this release.

April 10, 2006

Version 1.0.14.0 QFE Release (Quick Fixes)

Item Description
Chipmunk AV Controller Application
Splash screen was not showing the first time Chipmunk was launching Fixed. The .NET runtime compiles .NET applications the first time they run. This was taking around 3 to 5 seconds. Hence the splash screen did not have a chance to show. Timer initialization moved to Splash screen activation event.
Splash screen showing in Alt Tab Task List Fixed. If a user Alt-tabbed while the Splash screen was showing, it was appearing in the task list.
On Screen Display showing in Alt Tab Task List Fixed. Same as above.
Command Tree Expands after Import Folder failure Fixed. After an Import Folder failure the Command Tree was expanding regardless.
Plugin path not updating in Plugin Manager | Settings tab Fixed. If a user clicked on a non-plugin tree node the plugin path was not clearing/refreshing.
Inappropriate Horizontal scroll bars in XP Treeview controls This is a bug in .NET 1.1 and has now been fixed in 2.0. This will be fixed when Chipmunk migrates to .NET 2.0 Framework.
Plugin Manager | Manage Files buttons incorrectly enabled after Plugin Reload Fixed. After plugins had reloaded the "<", ">" & "Delete" buttons were being incorrectly enabled.
Startup shortcut link remains after uninstallation Fixed. If a user had enabled "Launch on Windows Startup" and then uninstalled Chipmunk, the .lnk shortcut remained in the startup folder.
XP users cannot enable/disable visual styles at the application level Fixed. XP users have an additional menu option to "Enable Visual Styles" (Tools | General Settings | Enable Visual Styles).
F1 Help not showing correct pages for the Main Form Fixed.
Occasional "Cannot call EndInvoke multiple times" error when using the On Screen Display Fixed.
Remote Control Designer
Unstable/Crashing when invalid Remote Control Configuration File opened. Fixed. The application became unstable if an inappropriate file was opened. User can now either open another file, or exit the application gracefully.
Inappropriate prompt to save when no changes made Fixed. On exiting the user will only be prompted to save if changes have been made to the remote control.

March 29, 2006

Version 1.0.0.0 Initial release.