Comments (9)
from multichannel-gas.
I suspect that the BCM2835 library is conflicting with I2C overlay driver. The BCM2835 is directly working on the hardware. Try this : in close_out(), part of gass.c, comment out bcm2835_i2c_end(); This call will reset I2C pins P1-03 (SDA) and P1-05 (SCL) are returned to their default INPUT behavior instead of ALT0. Maybe that solves the issue. let me know.
from multichannel-gas.
It doesn't work. I commented out line 112 in gass.c.
// bcm2835_i2c_end();
There is no difference, the I2C devices are no longer reachable.
The readings don't seem to be correct. I connected the sensor to an Arduino and let it run for an hour. The sensor LED of heating does not work on the Raspberry. The values are not correct.
NH3: RPi 1.88ppm Arduino 9.5ppm
CO: RPi 2.85ppm Arduino 34.21ppm
NO2: RPi 0.32. Arduino 0.19ppm
Is there another bug in the library? Many thanks for your effort.
from multichannel-gas.
Although this code is delivered without support and I have my big doubts around this sensor (as documented) I am challenged why this would not work. So I have dug up and connected the multi-gass sensor to my Raspberry PI and also an BME680. I made sure that I2C is enabled in raspi-config. I run i2cdetect -a 1 and it scans the 0x00 - 0x07f. It finds 04 (the multi-gass sensor) and it finds on 0x77 the BME680. No starting ./gass - A 4 -s 1 gives me output. Trying i2cdetect -a 1, indeed NO device found. Commenting out bcm2835_i2c_end() in close_out, saving gass.c, rebuilding gass with ./mgass.sh and running ./gass - A 4 -s 1 gives me output. NOW running: i2cdetect -a 1, gives me device 04 and 77 again. So commenting out does seem to solve the issue. Can you try again please ?
Back to the reading: you MUST start the warming of the heating manually. Either with '-p' option on the program or the '-w'. if only the -p was provided, like ./gass -A 4 - p, the program will power_on the heating and terminate. Better is '-w', like ./gass -A 4 -w 10 -s 1, which will power-up and wait for 10 min, before starting measurement. In all cases you have to power-off manually, unless you shutdown the raspberry PI.
Next point is around the voltage provided to the Multi-gass sensor, 3V3 or 5V. That concern is clearly documented and explained in the .odt file
let me know how it works out for you.
from multichannel-gas.
Thanks for your quick answer, the I2C bus is running again. wow. Does the heater need to be turned off before measurement? I test the conversion to 3.3V next.
from multichannel-gas.
You have to turn on the heater on and off manually. Either run ./'gass -a4 -p (and then wait couple of minutes) or use ./gass -a 4 -w 10 -s 1. Turning of is ./gass -a4 -o ( or remove the power) If you want to compare against Arduino, select 5V from the Raspberry. Make sure to read the mics6814.odt (you can open that with nearly any word-processor) as describes the issues that I see with this board.
from multichannel-gas.
I read your word file, very detailed, very good. Unfortunately I couldn't find anything if the heater has to be switched on or off for measuring. I connected the sensor to an Arduino, there the heating LED flashes only briefly and then the measured values are output. Also here there are differences with 3.3 and 5V.
5V:
The concentration of NH3 is 3.51 ppm
The concentration of CO is 32.56 ppm
The concentration of NO2 is 0.37 ppm
The concentration of C3H8 is 6779.30 ppm
The concentration of C4H10 is 3257.80 ppm
The concentration of CH4 is 1052259.12 ppm
The concentration of H2 is 15.58 ppm
The concentration of C2H5OH is 22.71 ppm
3,3V:
The concentration of NH3 is 0.50 ppm
The concentration of CO is 3.07 ppm
The concentration of NO2 is 0.48 ppm
The concentration of C3H8 is 356.22 ppm
The concentration of C4H10 is 267.02 ppm
The concentration of CH4 is 169.03 ppm
The concentration of H2 is 0.42 ppm
The concentration of C2H5OH is 1.02 ppm
There are huge differences!
from multichannel-gas.
indeed big differences.. how long did you wait after turning on the heater ?
Turn on the heater ./gass -a4 -p
Run ./gass -a 4 -r. This will give you Ro (which should NOT change) and the Rs. The longer you wait to higher the Rs reading. E.g. try running this every minute and watch Rs. This is true whether you work on 5V or 3V3, but on 3v3 it will take MUCH longer I doubt it will ever reach the temperature of the heater.
from multichannel-gas.
closing old issues
from multichannel-gas.
Related Issues (3)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from multichannel-gas.