NeatTools Beta Version March 1999 Win 95/98/NT compatible For more information, visit our website at: www.pulsar.org NeatTools software updates can be freely downloaded at: www.pulsar.org/NT NeatTools is an object-oriented visual programming environment. It is a software application which allows the user to take any kind of input and program a computer system to respond according to your settings. The software can receive input from the mouse, keyboard, or or custom input devices. For example, our TNG-3B serial interface can accommodate up to 8 analog sensors that can provide a resistance, or a voltage of 0-5 volts. Many sensors can be powered from TNG-3B directly, and the interface itself derives its power from the serial port so that batteries or wall transformers are unnecessary. TNG-3B also accepts digital inputs from up to 8 switches. For more information, see www.mindtel.com (AnyWear). Currently, NeatTools is being used to control lights in the Center for Really Neat Research, allow a quadriplegic teenager to control a computer with his face, and empower a first-grader with cerebral-palsy to control her computer with one input device, developed through rapid prototyping at the Cyberarium. One of our interfaces uses photosensors attached to action-figure arms mounted to eyeglass frames. (See the Eyal Sherman Webumentary at: www.pulsar.org/eyal) NeatTools provides an application programming interface (API), which enables the user to program visually without having to type in any textual code in arcane languages like C++. NeatTools has two toolbars, each with various buttons. The DT toolbar includes buttons to access six toolboxes (DL, MA, KB, MM, DS, IO, MI). The user creates a NeatTools data flow network (*.ntl file) by connecting modules that have been dragged from toolboxes onto the NeatTools desktop. Typically, modules have inputs on the left, and outputs on the right; many have parameter inputs on top. There are many variations on this basic theme. By simply dragging a line from the right side of one module, to the left side of another, a simple data-flow network can be created. To use NeatTools from this disk, double click on the oopw.zip file to uncompress it, provided you have WinZip or a similar utility on your machine. You can obtain WinZip from www.shareware.com. Another option is ZipMagic (www.mijenix.com), which allows you to treat zip files as active folders. You will also need to uncompress data.zip Once all files are uncompressed, click on the new “oopw” file, which should have a light bulb for an icon. This will launch the NeatTools application. From here, click on the menus on the left side of the screen to bring up the different toolboxes. The toolboxes contain modules, which can be clicked on to bring to the desktop, or clicked and dragged directly to the desktop. By moving the mouse around the outside edges of a module, you can see the functionalities of that module at the top of the window. This area will show you where the input and output channels are located. Start by clicking on different modules and connecting them by dragging lines from one output to another input. To learn NeatTools, explore the modules and use the included dataflow networks (application programs) as examples to learn how to build more complex networks. NeatTools tutorials are available online at the following sites: www.pulsar.org/NT/neatfaq/ Shockwave guide at: www.pulsar.org/jeff/neat Summary of folders and files in Lipson.zip archive. This contains a set of representative ntl files in the following folders: JoyMouse This program, which allows control of the mouse cursor by means of a joystick, has been used primarily by individuals with quadriplegia. Documentation is included in the file JoyMouseManual.htm. The links for images and downloads require that you be online. The manual is available online on the NeatTools download page via www.pulsar.org. For typing, we recommend the Fitaly onscreen keyboard available from www.twsolutions.com; their InstantText program may also prove useful. Robo The demo file robo_sequ1.ntl is a preliminary version for a robotics application. This can operate in standalone form as follows: a) set the three red switches on, b) turn the red demo switch on, or c) toggle the light blue pushbutton switch on. Or else this can be run via sensors (using TNG-3B analog channels 1-3; all should provide signal levels above the thresholds set by the blue sliders) via the companion program, TNG3_gen2.ntl, using the "socket" connection that allows two program windows to communicate (here on the same PC; but more generally over the Internet). The net result from any of these actions is that the red LEDs at lower right will be illuminated in sequence according to delays set by the sliders at left. SciMath prbs4c.ntl produces pseudorandom binary and analog noise patterns wavz.ntl produces sine and cosine waves and a "phasor" pattern at top right Sockets socket1.ntl demo to show signal communication between two program windows that can be on the same computer or on two machines socket2.ntl connected via Internet. socket12.gif image of socket1.ntl and socket2.ntl running together Sound drum2f.ntl drum machine designed for a user with disability (incl. recording) sound_compass_1.ntl designed for pressure sensors on floor oriented to 8 points of the compass Tng-3 tng3ad1_test.ntl a simple test and demo program for TNG-3B serial interface box TNG3_gen2a.ntl a more advanced and versatile version with individual calibrator switches and sliders for the 8 analog channels (see also the TNG3_gen2.ntl file in Robo folder that includes a socket connection as well) ... Notes prepared by Matt Carbone and Edward Lipson, 3/10/99.