I have a question that doesn't appear to have already been addressed - perhaps because it is impossible, but perhaps not. I recently received a USB-powered air quality monitoring device and, as an inquisitive grad student, think it would be far more useful to be able to monitor air quality from my smartphone instead. There isn't any good equivalent for this, afaik. This has fairly significant implications if you want just rough data and don't want to bring expensive monitoring equipment - for example, I'm part of Engineers Without Borders, and roughly quantifying the amount of smoke and VOC inhalation our Ecuadorean partner community takes in at each meal (done over an open biomass fire, naturally) would be REALLY cool, and give us a better idea of the degree of health issues we can expect.

So there's a degree of helping the world, here, which is neat.

The problem is that even though USB -> microUSB converters are pretty cheap, just plugging everything together (monitor, converter, phone) doesn't work. That's too easy, of course. Upon installation on a regular computer, the monitoring software gives the following message:

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.

I don't expect my HTC Incredible 2 to have these things, but I also only use FORTRAN and MATLAB for my research, so am not aware if it is possible to run equivalent programs to get this pipe-dream system up and running. Any suggestions would be very appreciated!

Thanks, Melissa


There are a lot of problems here:

  1. The Incredible 2's software doesn't support USB Host Mode, so you'd need to root your device and replace the kernel.
  2. Windows software won't run on Android even if the dependencies are present. You would need to entirely replace the software.
  3. Android apps can't be written in Fortran or Matlab, there is no Fortran compiler for Android, and no version of Matlab for Android.

So you'd need to put in a massive amount of work here, including reverse engineering the device commands since I doubt it's open source. I'd advise you to just use a laptop :P

  • Hahaha I certainly wasn't intending to use either matlab/fortran to make this happen, I just wanted to show that although I'm not a programming stranger, I am unqualified for this sort of situation. This is about what I had suspected, but I wanted to confirm it with those who are more knowledgeable about these things. I suppose there is a reason why there aren't any good air quality smartphone plug-ins! Thanks for the help. – user10170 Dec 1 '11 at 3:09

As the previous answer states, Android is a Linux device, and so you would need Linux drivers for this hardware, which I doubt exist. All in all, you would need:

  • Linux drivers
  • Framework support, and APIs (ie, you'd need to actually modify the Android framework, and create your own ROM).
  • An APP, written in JAVA (and possibly C++).

This is a huge amount of work, and whatever results you come out with are going to be specific to the phone create it for.

I personally don't think this is very feasible, though Honeycomb/ICS might reduce, to some extent, the need to make framework changes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.