Targeting the Instinct 2 series

I know there is always a lot of discussion that ends in "just use a jungle!" Which...is so frustrating for just a something simple. For example, I just want to make sure my app switches to a color that will actually draw on the 1-bit screen, so I need a quick easy way to set a color. We know there's no device name in the deviceSettings object (frustrating), and there's no bitDepth in the deviceSettings (also frustrating), and that part numbers aren't a realiable way to switch, since sometimes they'll get new part numbers that are missed.

Since it doesn't seem that the team will ever add a bitDepth/colorDepth field, or a deviceName field, the quickest way I've found to target the Instinct and its 1-bit screen, for NOW anyway, is that is has a new SCREEN SHAPE constant!!

SCREEN_SHAPE_SEMI_OCTAGON

So...if you're looking for a quicker way to add 1-bit support to your app than having to figure out how to split your code into different jungles, there you go! (for now)

  • Another way to easily ID an I2/I2s is to use the Watchi.getSubscreen() call, and it gives you info you'll find useful in your code.  With these two devices, you get the bounding box for the subscreen, so you can use/avoid it in your code.

  • OOH, good catch! That is neat, I was wondering how it expected you to know the size and location of the subscreen. I was just adapting a datafield for now, which automatically handles that for me (although the dc obscurity flags returned a little differently than I was expecting for some of the data field positions).

    You found that new method very quickly, I wonder if there's anything else new for the Instinct? either way though, thanks, and so I can test for SCREEN_SHAPE_SEMI_OCTAGON or for (WatchUi has :getSubscreen), and for now, both mean its an instinct.

  • Actually, getSubscreen is in the 4.1.0-beta1 SDK,  I saw it a while ago and was wondering what it was used for.

    Also, there is a changlog for 4.0.10 in th readme:

    v4.0.10

    General Changes

    • Add WatchUi.getSubscreen() to query subscreen area for devices that have subscreens.
    • Add new screen shape SCREEN_SHAPE_SEMI_OCTAGON.

    Simulator Changes

    • Add glance support for devices with subscreen support.

    Compiler Changes

    • No Changes