Verwenden von Windows-Treibern für ein Luftqualitäts-USB-Gerät

Ich habe eine Frage, die anscheinend noch nicht angesprochen wurde - vielleicht, weil es unmöglich ist, aber vielleicht auch nicht. Ich habe kürzlich ein USB-betriebenes Luftqualitätsüberwachungsgerät erhalten und denke, als neugieriger Doktorand, dass es viel nützlicher wäre, die Luftqualität stattdessen von meinem Smartphone aus überwachen zu können. Dafür gibt es kein gutes Äquivalent, afaik. Dies hat ziemlich erhebliche Auswirkungen, wenn Sie nur grobe Daten wünschen und keine teuren Überwachungsgeräte mitbringen möchten - zum Beispiel bin ich Teil von Engineers Without Borders und kann die Menge an Rauch und VOC-Inhalation, die unsere ecuadorianische Partnergemeinschaft aufnimmt, grob quantifizieren bei jeder Mahlzeit (natürlich über einem offenen Biomassefeuer) wäre WIRKLICH cool und würde uns eine bessere Vorstellung davon geben, wie viele gesundheitliche Probleme wir erwarten können.

Es gibt hier also ein gewisses Maß an Hilfe für die Welt, was nett ist.

Das Problem ist, dass USB -> microUSB-Konverter zwar ziemlich billig sind, aber einfach alles zusammenstecken (Monitor, Konverter, Telefon) nicht funktioniert. Das ist natürlich zu einfach. Bei der Installation auf einem normalen Computer gibt die Überwachungssoftware die folgende Meldung aus:

Installation
------------
This program is depending on the following files,
which are NOT distributed in this installation:

hh.exe         CHM help system (Windows XP)
hhctrl.ocx     CHM help system (Windows XP)
itircl.dll     CHM help system (Windows XP)
itss.dll       CHM help system (Windows XP)

SHLWAPI.DLL    Registry key operations, a component of 
               IE and is also used by Windows Explorer. 
               Shipped with Internet Explorer 4.0

setupapi.dll   Device enumeration
hid.dll        Device i/o

The files above should already be in your computer's
system directory. If they are not, try running 
Windows Update.

Ich erwarte nicht, dass mein HTC Incredible 2 diese Dinge hat, aber ich benutze auch nur FORTRAN und MATLAB für meine Forschung, also bin ich mir nicht bewusst, ob es möglich ist, gleichwertige Programme auszuführen, um dieses Wunschtraumsystem zum Laufen zu bringen. Irgendwelche Vorschläge würden sehr geschätzt!

Danke, Melissa

Antworten (2)

Hier gibt es viele Probleme:

  1. Die Software des Incredible 2 unterstützt den USB-Host-Modus nicht, daher müssten Sie Ihr Gerät rooten und den Kernel ersetzen.
  2. Windows-Software läuft nicht auf Android, selbst wenn die Abhängigkeiten vorhanden sind. Sie müssten die Software vollständig ersetzen.
  3. Android-Apps können nicht in Fortran oder Matlab geschrieben werden, es gibt keinen Fortran-Compiler für Android und keine Version von Matlab für Android.

Sie müssten hier also eine Menge Arbeit investieren, einschließlich des Reverse Engineering der Gerätebefehle, da ich bezweifle, dass es sich um Open Source handelt. Ich würde dir raten, einfach einen Laptop zu benutzen :P

Hahaha, ich hatte sicherlich nicht die Absicht, Matlab/Fortran zu verwenden, um dies zu erreichen, ich wollte nur zeigen, dass ich, obwohl ich kein Programmierfremder bin, für diese Art von Situation unqualifiziert bin. Das ist ungefähr das, was ich vermutet hatte, aber ich wollte es mit denen bestätigen, die sich mit diesen Dingen besser auskennen. Ich nehme an, es gibt einen Grund, warum es keine Smartphone-Plug-Ins mit guter Luftqualität gibt! Danke für die Hilfe.

Wie in der vorherigen Antwort angegeben, ist Android ein Linux-Gerät, und daher benötigen Sie Linux-Treiber für diese Hardware, von denen ich bezweifle, dass sie existieren. Alles in allem bräuchten Sie:

  • Linux-Treiber
  • Framework-Unterstützung und APIs (dh Sie müssten das Android-Framework tatsächlich ändern und Ihr eigenes ROM erstellen).
  • Eine APP, geschrieben in JAVA (und möglicherweise C++).

Dies ist eine enorme Menge an Arbeit, und welche Ergebnisse Sie auch erzielen, sie werden spezifisch für das Telefon sein, für das sie erstellt wurden.

Ich persönlich halte dies nicht für sehr machbar, obwohl Honeycomb/ICS die Notwendigkeit von Framework-Änderungen bis zu einem gewissen Grad reduzieren könnte.