Shop OBEX P1 Docs P2 Docs Learn Events
What ever happened to? BME680 Air Quality Sensor with JonnyMac — Parallax Forums

What ever happened to? BME680 Air Quality Sensor with JonnyMac

Hey whatever happened to this Propeller 2 Live Forum ? Did I miss it? I recall it was delayed twice.

Comments

  • Hi

    Could be wrong but vaguely remember someone saying waiting for floating point routines???

    Dave

  • JonnyMacJonnyMac Posts: 9,102
    edited 2021-08-22 00:37

    Could be wrong but vaguely remember someone saying waiting for floating point routines???

    That is the case.

    Sadly, the vendor -- claiming to want to protect trade secrets -- has done a less-than-wonderful job on documentation. Their expectation is that everyone is using C. While a great majority are, not everyone is -- my web searches found several people like me looking for language-agnostic information on the device. The vendor is somewhat cold: We have trade secrets, so just use our code.

    I will apologize -- again -- for this. Ken and I have been working together since 1998ish and have had many successes. He sent me the module, I did a cursory look and said, "It's I2C, no problem." It turns out the I2C part is not the problem; I can in fact communicate with the chip and even read the temperature. But the advanced stuff for which they don't really provide any support outside their own [lightly documented] C code (which uses FP), it was just not possible (for me, anyway). The very small bit of information suggesting that integer values could be used requires 64-bit variables.

    The classes started with success because they were always built on existing (often commercially-deployed) code that was presented in an educational format. After this bit of embarrassment, Ken and I have agreed that we won't schedule anymore classes around devices for which we don't have code written.

  • Funny, I had the exact same mindset when I attempted it a while ago (and the BMP280 before it). It's ridiculous just how much math is needed to turn a couple ADC values into a human-readable number. I think I gave up on a float version in spin for pretty much the same reason - it just became too difficult to match up all of the parentheses with the FloatMath.spin syntax. I think that's around the time I asked if it was possible to add a 64-bit data size to spin.

  • Thanks for the updates. No problem at all. That's too bad the manufacture doesn't help us out. We would buy more components from them if they could.

  • Don't know if it might help as a different starting point, but this library seems not to need floating point or 64bit: https://github.com/Zanduino/BME680

  • @"Christof Eb." said:
    Don't know if it might help as a different starting point, but this library seems not to need floating point or 64bit: https://github.com/Zanduino/BME680

    And there is a BME280 driver for spin2, which also does not use floating point and seems to use the same logic as the arduino library linked: Cricket BME280

  • JRoarkJRoark Posts: 1,215
    edited 2021-08-23 10:56

    @ersmith has been pretty quiet on the subject, but if you need 64-bit support, this seems to be happening behind the scenes in the Flex compiler. The basics are there: add, sub, mult, div, shifts, printing, etc. There are some gotchas, but it is useable if you approach it incrementally. No 64-bit floating point support though. Yet. :)

Sign In or Register to comment.