Install & Run NTK

This page describes how to install NTK for authoring projects. NTK supports the following ways of working:

  1. App – This is a simple double-clickable app for your computer, just download it and run. Authoring takes place in the app, and can also be accessed in a web browser (note: due to some technical issues, v1.0 only includes an app for the Mac, the Windows app will follow).
    1. Go the Download page and get the app for your system.
    2. Place it in your applications/programs folder
    3. Plug in your Arduino before opening NTK
    4. Run NTK
  2. Command Line – The command line version that requires some other software and simple commands to launch the NTK server from the command line. Authoring takes place in a web browser. See below for details on how to install the command line version.
  3. Developer Version – If you want to make changes to NTK including creating new widgets, you’ll need to install the full developer version of NTK. Instructions are here.

For most users, the App version of NTK is all you will need, and you can skip all of the below.

 


Instructions

1 Install Node and NPM (one time only)

  • Mac or Windows, install Node and NPM from the official Node website using their standard installer for version v4.2.2. Mac, Win 64, Win32, all others.
  • Linux – You most likely have Node/NPM already installed. If you are on Raspberry Pi, then you may have an outdated version of Node. Here’s a nice & easy upgrade method: https://github.com/DonaldDerek/rPi-cheat-sheet

2 Download NTK

Go to the Download page on this site, and get the current version of the HTML5 NTKserver.

Unzip this file and place the NTKserver folder on your hard drive in a convenient location. We recommend these locations:

  • Windows – “C:/Program Files”
  • Mac – /Applications
  • Edison/Linux – /home/root/

Note: with a Linux embedded system like the Intel Edison, you’ll probably need to push the files over to the device through a network connection. Instead of FTP, we recommend using SCP. For example:

scp -r ./NTKserver root@10.0.1.159:/home/root/.

3 Run the installation process

Now that the NTKserver folder is in place, you complete the installation by preparing NTK for your operating system. You do this in the command line interface (CLI) for your computer or device.

Windows

cd "C:/Program Files/NKTserver"
npm install

Mac

cd /Applications/NTKserver
npm install

Edison/Linux

cd /home/root/server
npm install

The command line interface is different for each platform:

  • Mac – Terminal app – located in /Applications/Utilities/Terminal.app
  • Windows – cmd app – Open the start menu, and type “cmd” in the search box. Hit enter to open the app.
  • Edison/Linux – you know how to do this

Once you have the command line app open, you need to change the directory to NTKserver. The easiest way to do this is to type “cd ” with a space after the cd. Then find NTKserver in your normal file system window and drag the folder into the command line app. This will place the complete directory path to NTKserver after the cd command.

After you change directory (cd) to NTKserver, you run the a special Node.js command called NPM to complete the installation. Remember to hit return after each command.

“npm install” will take a few minutes to complete and print out a lot of complex looking text. Wait until you see the command line prompt again before you move on to the next step.

MAC NOTE: If you are on a Mac, and there are errors during the npm install, you should try installing Xcode from the Mac App Store.

WINDOWS NOTE: If the install does not work and shows errors related to serialport, try the method described here:

https://github.com/voodootikigod/node-serialport#installation-special-cases

4 Run NTK

Each time you run NTK, you’ll need to use the command line interface (Terminal or cmd) to cd to the NTKserver directory and run the start command.

Windows

cd "C:/Program Files/NKTserver"
npm start

Mac

cd /Applications/NTKserver
npm start

Edison/Linux

cd /home/root/NTKserver
node cli.js edison
NETLabTK - Tangible IoT