Sniff is a "Scratch-like" programming language that's designed to help Scratchers move gently from Scratch to more conventional languages. They can start writing programs, without having to learn a new language because Sniff is based on Scratch. They learn a little more about variables, compiling, syntax errors (!), and they can have fun controlling real hardware while they're doing it.


Sniff can run on Mac OS X, Windows, Linux (x86) and Raspberry Pi. It creates code which can run on directly on those systems, but it also lets you download that code into an Arduino, BBC Microbit, Propeller, Lego EV3 and GameBoy Advance.

To run programs natively (on your computer) you'll need to install a C compiler. On Mac thats Xcode, on Linux its generally gcc. On Windows you need to install MinGW, and the associated MSYS tools, and compile Sniff programs from the MSys shell (instructions are included in the README).

To target Arduino you need to install the Arduino IDE. Generally use the latest release, but on Windows, the Arduino 1.0.6 IDE may be more reliable. Simlarly for propeller you'll need to install the Parallax SimpleIDE, while for EV3 there's quite a but if additional setup (check the blog for instructions). GBA requires DevitArm. To compile for Microbit, first install Yotta.

There's lots of examples and documentation included in the download bundle, but the docs (including the manual, which has a tutorial and language reference section) are also available separately.

Release 30 (21 Feb 2017)
Improved SniffPad
Minor compiler fixes
Improved Documentation

Release 29 (12 October 2016)
Lego IR support (send and receive)
Improved SniffPad
Background Process Termination bug fix

Release 28 (21st July 2016)
Improved MB support and demos.
Improvements to jsniff (javascript)
Improvements to Wizznet5100 Ethernet Support
Phillips Hue device support (Hosted & Embedded)
FreeBSD 64 bit support

Release 27 (28th April 2016)
Full Microbit support on Windows/Mac

Release 27 PRE-RELEASE (18th April 2016)
This is a special release to push out the support for the BBC Micro:bit. It should be stable to use on Windows and Mac for Microbit projects. However if you don't have a Microbit then you should stay on release 26 until we've run this build through a few more tests:

Release 26 (3rd April 2016)
Improved Windows support
Other minor fixes

Windows: Sniff 26W Release
Mac/Linux/Pi: Sniff 26 Release

Release 25 (7 March 2016)
SniffPad improvements
Flotilla Support Improvements
Lego Control Lab B support
Improved Wedo Support
Embedded GPS support

Windows: Sniff 25W Release
Mac/Linux/Pi: Sniff 25 Release

Release 24 (12 January 2016)
Gameboy Advance Support
Flotilla Support
Esplora device
tm1640 Matrix device
max7Segement device
added argv and Constants

Windows: Sniff 24W Release
Mac/Linux/Pi: Sniff 24 Release

Release 23 (17 November 2015)
i2c PWM/Servo controller (PCA9685) device
Sound playback for all hosted platforms
433MHz transmitter support.
Windows: Sniff 23W Release
Mac/Linux/Pi: Sniff 23 Release

Release 22 (12th October 2015)
RaspberryPi Camera Support (my work on other Linux)
Documentation for Sprites
Bug fixes/improvements for SniffPad, SniffPaint and SniffTerm
Windows:Sniff 22W Release
Mac/Linux/Pi: Sniff 22 Release

Release 21 (9th September 2015)
GCode output
Improved SniffPad
Improved compass support (including MAG3110)
Load Cell Support
Joystick Support
Windows:Sniff 21w Release
Mac/Linux/Pi: Sniff 21 Release

Release 20 (7th August 2015)
More friendly "tell" commands with spaces!
Foundation work for MBED
Improved diagnostics and error messages
SniffPaint drawing tool/demo
Bug fixes!
Windows:Sniff 20w Release
Mac/Linux/Pi: Sniff 20 Release

Release 19 (5th July 2015)
Compile to JavaScript
Sprite device library for easier game writing
Leap Motion hand tracking support
Windows:Sniff 19w Release
Mac/Linux/Pi: Sniff 19 Release

Release 18 (8 June 2015)
Initial Support for ESP8266
Support for Arduino Software V1.6.4
Picoboard device
max LED Matrix display device
PS/2 Mouse device
Optional use of tabs for indentation
Download for Linux/Mac
Download for Windows

Release 17 (5 May 2015)
Wedo Support on Mac and Windows
Improved compiler warnings
Programs exit on completion (Not as obvious as it sounds!)
Download for Linux/Mac
Download for Windows

Release 16 (3 March 2015)
"new" syntax for repeat loops, Local Variables and list declarations
Ethernet and Minecraft on win32
Improved windowing performance on OS X
32Bit support on OSX
Download for Linux/Mac
Download for Windows

Release 15 (9 Feb 2015)
Improved networking on Unix and Arduino
Reduced Propeller code size
tsl2561 and htu21/sht21 device support
Improved Minecraft support
Download for Linux/Mac
Download for Windows

Release 14 (26 January 2015)
Parallax Propeller Support
Sniffpad IDE (and other Windowing) on OS X
fast timer for microsecond timing.
Download for Linux/Mac
Download for Windows

Release 14 (26 January 2015)
Parallax Propeller Support
Sniffpad IDE (and other Windowing) on OS X
fast timer for microsecond timing.
Download for Linux/Mac
Download for Windows

Release 13 (8 December 2014)
WS2801 support
Bug fixes and improvements

Download Release 13 Generic
Download Release 13 for Windows

Release 12 (7 November 2014)
Sniffpad IDE
Sniffterm serial monitor
Improved Windowing under X11 and win32
Download Release 12 Generic
Download Release 12 for Windows

Release 11 (19 October 2014)
Support for Windows
Support for RF24 on Arduino
Support for Windowing under X11 and win32
Download Release 11 Generic
Download Release 11 for Windows

Release 10 (16 September 2014)
Support for Lego EV3 over Bluetooth
Support for Lego Wedo
Support for multiple instances of devices.
Download Release 10

Release Beta 9 (4 September 2014)
Support for Lego EV3
Support for Studuino
Download Beta 9

Release Beta 8 (4 August 2014)
Support for Gamebuino
Support for Punchthrough Bean (incomplete)
Drivers for avrSound and Sim900
Improved String handling
Device Aliasing
Release Notes
Download Beta 8

Release Beta 7 (8 June 2014)
Arduino libraries are now included (though you still need the Arduino IDE for the toolchain)
Arduino now supported on Pi!
Drivers for Nokia5110, AVR Video, EA 7Seg, Midi Out
Arduino Tre.
Download Beta 7

Release Beta 6 (22 Apr 2014)
Support for Arduino Yun (Bridge) and Leonardo (USB serial & HID)
lpd-8008 LED display support
i2c LED Support
Bug fixes and minor improvements
Download Beta 6

Release Beta 5
Bug Fixes
Arduino Mega support
I2C OLED device support
Minecraft Device
Include Sparkfun Inventor Kit examples
Additional Examples
Manual "source files" included
Download Beta 5

Release Beta 4
Beta 4 adds improved support for Raspberry Pi (with ongoing support for Mac, X86 Linux, and Arduino). When run on a Pi with WiringPi installed Sniff now supports full access to the GPIO pins. Sniff "Devices" initially written for Arduino which use GPIO/SPI and I2C now work on Pi. In addition there are new Unix specific drivers to access the native file system, system command line, and frame buffer.
Download Beta 4 (OLD)

Release Beta 3
The beta 3 release unifies the system into a single download which runs on all supported platforms.
Download Beta 3 (OLD)


  1. would be good to see some examples of sniff in action ?? Youtube ??

    1. Check out our Vine feed: