Avatar for wminarik


Member since Oct 2013 • Last active Mar 2024
  • 2 conversations

Montreal, Canada

Most recent activity

  • in Bangle.js
    Avatar for wminarik

    I have an original Bangle.js 2 with the BMP280 pressure chip. It's running the current 2V21 firmware. I've recorded temperature and pressure logging (10 sec interval) using the 'Recorder' app.

    A couple of years ago I cross calibrated the BMP280 against a DPS310 breakout; the BMP280 gave roughly similar pressures (offset by 0.2 hPa) and temperatures, with a bit more noise.

    Now, however, the BMP280 gives very strange pressure readings, and seems to be extremely sensitive to temperature changes. Temperature readings seem to be OK. The watch hasn't been submerged, and both sensors were protected from stray breezes during logging.

    I've attached the comparison plots: Temperature in blue, Pressure in orange, darker is the Bangle BMP280 and lighter is the DPS310. The drop in BMP280 recorded pressure with temperature is apparent in the full log. At the end, the sensors were lowered by about 6 meters. The DPS310 shows the small increase in pressure and is steady, but the BMP280 follows the temperature change.

    Could this be a software algorithm issue in the device. driver? Or has the BMP280 membrane degraded?

  • in Pico / Wifi / Original Espruino
    Avatar for wminarik

    HM-18 Module installs with the same pins as the HM-10 module. It’s advertised as BLE 5.0, and mine arrived with firmware v116, and there doesn’t seem to be an update for this module on the manufacturer’s website(http://jnhuamao.cn/download_rom_en.asp?i­d=1).
    Like the HM-10, it is configured using AT commands, and has only two modes; iBeacon and a proprietary UART service. The AT commands can configure the module for lower-power and sleep modes. Gordon has posted iBeacon JS code at: http://forum.espruino.com/conversations/­252971/

    I initially wired up a button and pull-up resistor to the System Key, pin 23. According to the data sheet, pulling to ground either disconnects a connected module or resets to a default configuration if already disconnected. Power cycling the module also disconnects, so I removed the button.

    I’ve configured a surface mount LE and 1206 resistor to shine through one of the board’s through-holes. Clear nail polish insulates the connections from the board, and the board still lays flat on a surface. The LED blinks when not connected, and stays on when connected.
    A simple script to control the on-board red LED can be controlled via the nRF Connect app to verify operation.

    function onInit() {
    Serial1.on('data', function(data) {
        if (data=="o") LED1.write(true); 
        if (data=="f") LED1.write(false); 

    Pretty nifty that a $5 add-on adds BLE communication to the versatile classic Espruino board!

  • in Pico / Wifi / Original Espruino
    Avatar for wminarik

    There are great instructions for adding a BLE 4.0 connection to an Espruino original board using the HM-10 module. Has anyone attempted to add a BLE 4.2/5.0 module such as the HM-18?
    It uses a CC2640 combatible chip.

  • in Bangle.js
    Avatar for wminarik

    The GNSS receiver on my Bangle.js 2 was able to get a fix fairly quickly. However it only finds 5-8 satellites at a time (I've occasionally had up to 10, briefly). Looking at the output NMEA sentences:
    $GPTXT,01,01,01,ANTENNA OPEN*25

    It's found 10 GPS satellites ($GPGSV) but only 6 are used for the fix ($GNGSA; sats 01,07,08,17,21,30). It doesn't look like it's even trying to find GLONASS satellites; there's a line for Beidou ($BDGSV) but no satellites are listed. Galileo satellites are also missing. uBlox receivers allow the choice of frequencies; the inexpensive ones allow the choice of two (e.g. GPS and GLONASS or GPS and Beidou). There must be a way to turn on at least the GLONASS frequency.

    The last line worries me a bit:
    $GPTXT,01,01,01,ANTENNA OPEN*25

    From the datasheet Gordon linked in, the choices are:
    示例 $GPTXT,01,01,01,ANTENNA OPEN*25
    $GPTXT,01,01,01,ANTENNA OK*35
    $GPTXT,01,01,01,ANTENNA SHORT*63

    This implies that part of our problem is that the antenna is not connected, or that there is no antenna (open circuit). If anyone has done a teardown of the production units, this could be verified.