Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 6E8A7200C77 for ; Mon, 1 May 2017 17:12:08 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 6D047160BB9; Mon, 1 May 2017 15:12:08 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id B402C160BAE for ; Mon, 1 May 2017 17:12:07 +0200 (CEST) Received: (qmail 92678 invoked by uid 500); 1 May 2017 15:12:06 -0000 Mailing-List: contact commits-help@nifi.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@nifi.apache.org Delivered-To: mailing list commits@nifi.apache.org Received: (qmail 92669 invoked by uid 99); 1 May 2017 15:12:06 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 May 2017 15:12:06 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 63615C05E4 for ; Mon, 1 May 2017 15:12:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id eC04i4pmhpc2 for ; Mon, 1 May 2017 15:12:05 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 7D15E5FCE3 for ; Mon, 1 May 2017 15:12:05 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id D6996E093C for ; Mon, 1 May 2017 15:12:04 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 3F22221DE5 for ; Mon, 1 May 2017 15:12:04 +0000 (UTC) Date: Mon, 1 May 2017 15:12:04 +0000 (UTC) From: "Andrew Christianson (JIRA)" To: commits@nifi.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (MINIFI-219) Create GetUSB processor for reading payloads from connected USB devices MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Mon, 01 May 2017 15:12:08 -0000 [ https://issues.apache.org/jira/browse/MINIFI-219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15990936#comment-15990936 ] Andrew Christianson commented on MINIFI-219: -------------------------------------------- Using something like Avro to standardize the data format/encoding makes sense. As for getting the samples from sensors, maybe we could look into what the high-level categories of sensors are, then looks for existing native libs that support large sets of devices behind a standard interface. For instance, with camera sensors we could yield to v4l (video 4 linux) or opencv to grab frames. For audio sensors, there are a host of libraries of similar nature. For very specific kinds of sensors, we would probably have to add custom support by linking to their userspace client drivers. If we decide to standardize on Avro or similar, it would then probably make sense to have a standard API to map a sensor to a data type. I.e. a mono audio sensor, a temperature sensor, scale, or air pressure sensor could all be standardized as a stream of floating point values. A camera could be standardized as a stream of 2D matrices. So, each time we need to support a new device, we'd define a function that reads the device using device-specific code, then outputs to a standardized API (series of N-dimensional matrices?) which is then serialized to Avro. Or roughly something like that. > Create GetUSB processor for reading payloads from connected USB devices > ----------------------------------------------------------------------- > > Key: MINIFI-219 > URL: https://issues.apache.org/jira/browse/MINIFI-219 > Project: Apache NiFi MiNiFi > Issue Type: Improvement > Components: C++ > Reporter: Jeremy Dyer > Assignee: Jeremy Dyer > > LibUSB is a popular framework for interacting with USB devices on host machines. The spirit of this processor will be the periodically pull data from USB devices connected to the host running the minifi c++ instance. This processor is not intended to interact with filesystem connected devices but rather more sensor focused devices like, scales, temperature, etc where those values change periodically and have context around the time the values were acquired. The processor will expose a general mechanism to format the messages received from the USB device and introduce those messages to the nifi flowfile -- This message was sent by Atlassian JIRA (v6.3.15#6346)