Code Monkey home page Code Monkey logo

multitouchkitui's Introduction

Multi Touch Kit Processing Library

This is a Processing library for Multi Touch Kit. For more information on the project and tutorial, visit our website.

Dependencies

Installing

Download the zip folder and unpack it in your Processing Libraries folder. Make sure to restart processing after doing so.

( ../Documents/Processing/Libraries/MultiTouchKitUI)

Setting the index of serial port

In Arduino IDE go to “Tools → Port“. Find the name of the port that your Arduino is connected to. In Processing IDE, get a list of all available serial ports, by writing: println(Serial.list()); Find the Arduino port among the printed ports. Use it’s index (starting from 0) to set serialPort.

Documentation

After the MultiTouchKit object is created, it will execute code at the End of your draw() method! In the first 2 seconds, it will create a "baseline", so for each intersection it receives the values from the sensor, averages them, and will then always subtract this average from the incoming values, to eliminate noise. So make sure to not touch the sensor while this is happening!

If you use the standard settings it will continuously read the data that is coming from the Arduino via serial.

To increase the brightness of touchpoints (blobs), reduce maxInputRange. To change the threshold for blob detection, set threshold.

Important methods:

int[][] getRawValues(); Will return the latest raw values.

int[][] getAdjustedValues(); Returns the latest raw Values - Baseline.

void autoDraw(boolean draw); If draw = true, the library will automatically draw the picture that results from the interpolated input values to the screen.

void setWaittime(long t); Sets the time that the library takes to set the Baseline, if you have problems with this you can increase this, it takes nanoseconds as input, the standard value is 2000000000 (=2 seconds);

void setThresh(float newThresh); Sets the threshold for the blobdetection, should be a value between 0 and 1. Look at the documentation of the BlobDetection library for more information.

multitouchkitui's People

Contributors

hci-lab-saarland avatar

Stargazers

Zhuorui Zhang avatar Toto MA avatar Dave Boulden avatar  avatar  avatar Konstantin Đorđević avatar Tony Adinolfi avatar WJ avatar  avatar ZhouYunMing avatar  avatar  avatar  avatar  avatar Zhitong Cui avatar unplugandplay avatar Albert Tavares de Almeida avatar Sabas avatar  avatar

Watchers

 avatar

multitouchkitui's Issues

Suggestion: String portName

A better pattern for initializing the Serial communication would be to accept a String portName as input for serialPort instead of a index number for the constructor function. Now this gives unnecessary confusion.

The Serial.list() method is mentioned in the FAQ of the instructions, but it would be nice to integrate this in the example.

Calibration ... ongoing

Hi there,
I am new to using the MultiTouchKitUI and I am wondering if you have any suggestions to troubleshoot if the processing is endlessly calibrating? For reference, I am using an arduino uno, and running processing 3.5.4 on Mac OS 11.5.2. (processing 4 didn't cooperate with the open cv processing library.) I tried both the 1.2.3 release examples, and the MTK_example from the original release. I know that the sensor is working because I can see signal in the serial plotter for Arduino. When I uncomment the section to reveal calibration values, rawvalues, baseline, and values all report 0:0 (see attached.)
Screen Shot 2021-11-26 at 10 42 21 AM

Thank you for any help you can provide with this

different sizes baseline- values-array

Hello,
when I try to print out the raw values as well as the baseline array, I get an ArrayIndexOutOfBoundsException.
The baseline array seems to have opposite dimensions as the values and the raw-values array.
As an example:
If we initialize tx = 4 and rx = 6, the values has the dimensions 4 x 6. Baseline on the other hand has the dimensions 6 x 4.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.