Avatar for Gordon


Member since Sep 2013 • Last active Sep 2021

Most recent activity

  • in Pico / Wifi / Original Espruino
    Avatar for Gordon

    Hi! It looks like you have to repeatedly 'poll' the module to ask it what keys are pressed, and then you get back a number where each bit represents a key.

    var lastKeysPressed = 0;
    var mpr = require("MPR121").connect(I2C1, {
       // device is ready
        setInterval(function() {
            var keys = mpr.touched();
            if (keys!=lastKeysPressed) {
              // for each key
              for (var i=0;i<12;i++) {
                var kbit = 1<<i;
                // if it is pressed now, but not before
                if ((keys&kbit) && !(lastKeysPressed&kbit))
                  console.log("Touched: " + i);
                // you can also check the opposite to see if it's released
             lastKeysPressed = keys;
        }, 100); // 100ms = 10 times a second

    This isn't tested, but should work...

  • in News
    Avatar for Gordon

    As many of you know, I've been working on the successor to the original Bangle.js for a while now.

    And I'm pleased to report that it's finally here! Bangle.js 2 is now on KickStarter


    • IP67 Waterproof (up to 1 meter for 30 minutes)
    • Nordic 64MHz nRF52840 ARM Cortex-M4 processor with Bluetooth LE
    • 256kB RAM 1024kB on-chip flash, 8MB external flash
    • 1.3 inch 176x176 always-on 3 bit colour LCD display (LPM013M126)
    • Full touchscreen
    • GPS/Glonass receiver (AT6558)
    • Heart rate monitor (Vcare VC31)
    • 3 Axis Accelerometer (Kionix KX023)
    • 3 Axis Magnetometer
    • Air Pressure/Temperature sensor (Bosch BMP280)
    • Vibration motor
    • 200mAh battery, 2 weeks standby time
    • 36mm x 43mm x 12mm watch body, with standard 20mm watch straps

    Check it out here!

  • in News
    Avatar for Gordon

    Ok, perfect - thanks! I'll drop you a coupon code for the shop

  • in Bangle.js
    Avatar for Gordon

    The 6x8:1x2 is 16, it looks heavier and hence easier to read

    If the built-in font isn't good for the menu then we could pull it out completely and just use the scaled 6x8 one. My only concern really is it then looks a bit blocky and low-tech.

    The other thing I haven't mentioned so far is the built-in fonts are all fixed-width. Potentially it would be possible to tweak them to give them the option of being variable width, which would help make them take a bit less space.

    I wonder whether we just need to find a different built-in font then. The new bigger one was added specifically for menus - it should be possible to get something like the existing one, but that is more 'bold' and maybe a smidge taller.

  • in Bangle.js
    Avatar for Gordon

    There actually is some code in Espruino now that will handle line fonts, which gives you really nice rotation and scaling behaviour at smaller font sizes - although honestly it only really makes sense for buffered 16 bit screens since then you get nice antialiasing (and neither Bangle.js 1 or 2 have that).

    It also really requires a custom-made font as well - even Hershey is a bit more complex than required, so it's of limited use. It's really only in there right now because a customer is using it in their devices.

  • in General
    Avatar for Gordon

    That all sounds like expected behaviour I think.

    What happens if you click the icon itself, and not the down-arrow next to it?

  • in Bangle.js
    Avatar for Gordon

    Not sure I understand? But to get the above screenshot I did what's mentioned at http://forum.espruino.com/comments/16182­113/ - and you can change whatever you want in that case

  • in Bangle.js
    Avatar for Gordon

    Sorry, just looked into this and it seems the build has got broken. There should just be zip files in there for the Bangle.

    It seems that at some point in the last 5 days, Google updated a package called protobuf from 3.17.3 to 3.18.0 and now it no longer works with Python 2.7

    I guess this was a mistake on their part, but annoyingly it's broken the build. I've just changed the build to manually request the older version and it seems fixed now.

    If you look at https://www.espruino.com/binaries/travis­/master/ you'll see zip files again