Download
The NETLab Toolkit software is available for both Macintosh and Windows platforms. The release package for each platform includes all components necessary to use the system on that platform. Click on the link below for your platform to download the release package, which is a compressed .zip file, then follow the instructions on the Getting Started page to install and begin using it. (Release History)
Experimental release 3.3.2 – iOS (iPhone/iPod Touch/iPad) support for NETLab Toolkit
- NETLabFlashWidgets_3_3_2 Widgets only release December 14, 2011
This release of widgets adds capabilities to the widgets so that they can work on any iOS device. To do this, you must have Flash Pro 5.5, and be an approved Apple Developer and have gotten a certificate and provisioned your device. Apps are authored in Flash 5.5 with a document type of AIR for iOS, and exported as stand-along apps that can be installed on your device.
When you install a NETLab Flash app on a device, it uses a Hub that’s running on a computer that’s on the same WiFi network. So to use a sensor attached to an Arduino, you would attach the Arduino to a computer, run the Hub, and put the IP address of that computer in the remotehupIP parameter of all the widgets you are using.
Click for Preliminary Instructions for using 3.3.2 widgets»NETLab Toolkit 3.2.1 – April 6, 2011
This release is a fairly major one, adding many new features and bug fixes. It incorporates the features that were being tested in the previous “experimental widgets” partial releases (which are no longer available), and adds several new capabilities.
- NETLabToolkit_v3_2_1_mac - You MUST set the Mac Hub app to “Open in 32bit mode” - Select application, GET INFO (command-I), check “Open in 32bit mode” – this version also requires OS X version 10.6 (Snow Leopard), and will not run correctly on 10.5 (if you have 10.5, use version 3.09 with Arduino 16′s version of Firmata).
- NETLabToolkit_v3_2_1_win – For the Hub to work, you must have Java installed.
Release Overview:
- NEW – Combine widget that can have up to four inputs and combines them into a single output
- NEW – MotionTrack widget that uses a camera as an input and outputs X,Y positions based on motion captured by the camera
- NEW – ServoOut now supports the Arduino, and a bug was fixed so that fractional numbers will now work (the fractional part is now ignored)
- NEW – SlideShow widget that creates a timed sequence of images – multiple SlideShow widgets can be used in the same application.
- NEW – AnalogIn, DigitalIn, AnalogOut, DigitalOut now all support the new NETLab Toolkit communication system called HubFeed. HubFeed permits any computer (and in the future phones and tablets) to send to or receive values from any Hub on the network.
- IMPROVED – The Hub is now more reliable in serial communications. In addition, several bugs are fixed including problems with multiple outputs to digitalOuts, using more than one remote XBee, and problems disconnecting from the Arduino. The Hub also has a new plug-in architecture.
- IMPROVED – SoundControl has been significantly revised to separate the function of triggering the play start/stop of the sound from controlling the volume of the sound (and it is now possible to control the pan position with a separate input). There are also new options for allowing a sound to play all the way through once triggered, even if the trigger input falls below the threshold. Lastly, there is now a code interface to change volume, change pan, and trigger the sound.
- IMPROVED – VideoControl has also been significantly revised with a similar approach to the the SoundControl widget
- IMPROVED – The Insert widget has a new code interface for log recording/playback as well as a loop option for log playback.
- IMPROVED – AnalogIn adds an easing option, DigitalOut has a code interface, and many other widgets have smaller changes and improvement.
Contents
- Flash Widgets: 3.2.1 (updated)
- Hub: 2011_03_25 (updated)
- MediaControl: 1.0 (no change)
Version 2 – For ActionScript 2, Unsupported
For those users still using ActionScript 2 in their Flash environments (instead of version 3 or later), version 2 of NLTK is required. We are no longer maintaining development of this version, but it is available for download here.
Notes – See version 2.06 release notes for details.
New Capabilities in 3.3.2
- AnalogIn now has controller option called “mobile”, which currently gives access to the accelerometer where parameter controllerNum selects the x,y,z of the accelerometer 0 = X, 1=Y, 2=Z. Since the numbers come between -1 and +1, use the “multiplier” parameter to (e.g. set to 100) to make the numbers more useful.
- ClipControl offers the new properties gesture (for pinch, zoom and rotate two finger gestures) and touch (for dragging). To constrain the dragging with the touch setting, use the “touchConstrain” parameter to name a movieClip on the stage that define a rectangle that limits the movement.
- There’s a new widget called ClipProperty that “senses” any property of a movieClip (e.g. x, y, width, rotation, etc.). This can be used in combination with the gesture or touch settings of ClipControl to have the properties manipulated by the user as an input to other widgets.
- Use the hubFeed output of the AnalogOut widget to send the AnalogIn accelerometer or ClipProperty outputs back to a computer, where other widgets are running.
- The widgets running on the iOS device use a Hub running on a computer that’s on the same WiFi network. You need to set the remotehupIP parameter to the IP address of the computer running the Hub. The .xml file used by the iOS app will be placed in the Hub directory.
- To be able to toggle the visibility of all widgets on an iOS device, place a movieClip on the stage with an instance name of “myControlClip“. If tapped, all widgets will become invisible or visible.
- All the widgets can now function with their default on-screen settings even if there is no Hub found.
- SoundControl seems to work with library sounds – needs more testing
- There is a possible fix for a bug on Windows 7 that prevented widgets from working – please test!
- Changes from 3.3.0 to 3.3.1
- A fix for Insert recording and playback accuracy
- A fix for MidiOutCtrl and MidiOutNote to round input values to prevent problems outputting fractional numbers
- Addition to SlideShow Widget to add an inputSourceSlideTime to vary how long a slide shows for. InputValue is milliseconds.
- Changes from 3.3.1 to 3.3.2
- Added capability to AnalogIn and DigitalIn to accept multiple values from OSC, mobile, and HubFeed. So for example, if OSCulator or OSCemote sends an OSC string like this: /acceleration/xyz 0.1 0.2 0.3, you can set up simple code to get all three values at once. Assuming your DigitalIn or AnalogIn widget is named “input0″ and an Insert widget is named insert0, do the following
- Set up the DigitalIn or AnalogIn as usual for receiving OSC
- Set the inputSource of the Insert widget to “none” so it does not listen to the input widget
- Add the following code to your timeline:
insert0.insertInput = null; // don't process the input to the insert widget input0.multiInput = processInput; // process multiple values from AnalogIn or DigitalIn function processInput(... args) { // args is how you get a variable number of values trace("from code: " + args); // print out all the values from the args array insert0.outputValue = args[0] * 1000; // send the first value to output of Insert }
- Fixed problem where List and TextInput showed up as components
- Not tested
- videoControl/soundControl external videos/sounds
- motiontrack
- insert recording
- many other widgets
How to create an iOS app from Flash 5.5
- You must be an Apple Developer, and have Xcode installed
- Adobe tutorial for publishing to iOS: http://tv.adobe.com/watch/cs-55-web-premium-feature-tour-/flash-professional-cs55-publishing-content-to-ios-devices/
- Adobe tutorial for creating a Flash compatible certificate: http://help.adobe.com/en_US/as3/iphone/WS144092a96ffef7cc-371badff126abc17b1f-7fff.html
- Create a new document in Flash Pro 5.5 with a type of AIR for iOS
- When ready, export an iOS compatible file by FILE>AIR For iOS Settings…
- In the Deployment tab of this dialog, you’ll need to put in your Apple Developer certificate (export from KeyChain Manager in P12 format), certificate password, and Provisioning Profile
- Select Publish, and when that completes, there will be a .ipa file
- Drag the .ipa file to the Applications portion of the Xcode Organizer window, which will install it on your device
Last modified January 10th, 2012

