Supported devices

geckOS can be very easily compiled 1 for and run on any USB-enabled Silicon Labs EFM32 microcontroller. As of writing, this includes microcontrollers from the following product families:

You must specify the concrete microcontroller unit you are using when compiling the operating system (the DEVICE option). Scroll to the end to find a list of all microcontrollers geckOS should run fine on.

List of supported devices

geckOS’s main benefit is to abstract away device interaction in programmable devices housing one of the above microcontroller units. Device manufacturers can use geckOS to expose a friendly, clean, and safe API to application writers, baked into geckOS’s kernel. As of writing, we have specified and implemented APIs for a couple of devices: a starter kit, a programmable board for use in computer education, and an existing commercial acoustic logger.

  • EFM32 Happy Gecko SLSTK3400A (housing a EFM32HG322F64 microcontroller with 64 KiB flash and 8 KiB RAM).

  • Stack virtual machine, whose hardware is being manufactured, having been prototyped on an EFM32 Happy Gecko SLSTK3400A starter kit.

  • AudioMoth, an environmental and wildlife low-cost low-energy full-spectrum acoustic logger designed by Open Acoustic Devices.

You should specify the device you’re compiling geckOS for (the TARGET_DEVICE option).

efm32hg_slstk3400a
Stack
AudioMoth

The samples section contains applications written for geckOS to be run on these programmable devices. We would love to see geckOS being used in other programmable devices!

List of supported microcontrollers

Here is a not up-to-date alphabetically ordered list of all microcontrollers geckOS should in theory run on. Below you’ll find the string you have to pass as the DEVICE option when compiling the OS. Refer to Silicon Labs’ website for datasheets and detailed specs of these MCUs.

  • EFM32GG:

    EFM32GG230F512
    EFM32GG230F1024
    EFM32GG232F512
    EFM32GG232F1024
    EFM32GG280F512
    EFM32GG280F1024
    EFM32GG290F512
    EFM32GG290F1024
    EFM32GG295F512
    EFM32GG295F1024
    EFM32GG330F512
    EFM32GG330F1024
    EFM32GG332F512
    EFM32GG332F1024
    EFM32GG380F512
    EFM32GG380F1024
    EFM32GG390F512
    EFM32GG390F1024
    EFM32GG395F512
    EFM32GG395F1024
    EFM32GG840F512
    EFM32GG840F1024
    EFM32GG842F512
    EFM32GG842F1024
    EFM32GG880F512
    EFM32GG880F1024
    EFM32GG890F512
    EFM32GG890F1024
    EFM32GG895F512
    EFM32GG895F1024
    EFM32GG900F512
    EFM32GG900F1024
    EFM32GG940F512
    EFM32GG940F1024
    EFM32GG942F512
    EFM32GG942F1024
    EFM32GG980F512
    EFM32GG980F1024
    EFM32GG990F512
    EFM32GG990F1024
    EFM32GG995F512
    EFM32GG995F1024
    
  • EFM32GG11B:

    EFM32GG11B110F2048GM64
    EFM32GG11B110F2048GQ64
    EFM32GG11B110F2048IM64
    EFM32GG11B110F2048IQ64
    EFM32GG11B120F2048GM64
    EFM32GG11B120F2048GQ64
    EFM32GG11B120F2048IM64
    EFM32GG11B120F2048IQ64
    EFM32GG11B310F2048GL112
    EFM32GG11B310F2048GQ100
    EFM32GG11B320F2048GL112
    EFM32GG11B320F2048GQ100
    EFM32GG11B420F2048GL112
    EFM32GG11B420F2048GL120
    EFM32GG11B420F2048GM64
    EFM32GG11B420F2048GQ64
    EFM32GG11B420F2048GQ100
    EFM32GG11B420F2048IL112
    EFM32GG11B420F2048IL120
    EFM32GG11B420F2048IM64
    EFM32GG11B420F2048IQ64
    EFM32GG11B420F2048IQ100
    EFM32GG11B510F2048GL120
    EFM32GG11B510F2048GM64
    EFM32GG11B510F2048GQ64
    EFM32GG11B510F2048GQ100
    EFM32GG11B510F2048IL120
    EFM32GG11B510F2048IM64
    EFM32GG11B510F2048IQ64
    EFM32GG11B510F2048IQ100
    EFM32GG11B520F2048GL120
    EFM32GG11B520F2048GM64
    EFM32GG11B520F2048GQ64
    EFM32GG11B520F2048GQ100
    EFM32GG11B520F2048IL120
    EFM32GG11B520F2048IM64
    EFM32GG11B520F2048IQ64
    EFM32GG11B520F2048IQ100
    EFM32GG11B820F2048GL120
    EFM32GG11B820F2048GL152
    EFM32GG11B820F2048GL192
    EFM32GG11B820F2048GM64
    EFM32GG11B820F2048GQ64
    EFM32GG11B820F2048GQ100
    EFM32GG11B820F2048IL120
    EFM32GG11B820F2048IL152
    EFM32GG11B820F2048IM64
    EFM32GG11B820F2048IQ64
    EFM32GG11B820F2048IQ100
    EFM32GG11B840F1024GL120
    EFM32GG11B840F1024GL152
    EFM32GG11B840F1024GL192
    EFM32GG11B840F1024GM64
    EFM32GG11B840F1024GQ64
    EFM32GG11B840F1024GQ100
    EFM32GG11B840F1024IL120
    EFM32GG11B840F1024IL152
    EFM32GG11B840F1024IM64
    EFM32GG11B840F1024IQ64
    EFM32GG11B840F1024IQ100
    
  • EFM32GG12B:

    EFM32GG12B110F1024GM64
    EFM32GG12B110F1024GQ64
    EFM32GG12B110F1024IM64
    EFM32GG12B110F1024IQ64
    EFM32GG12B130F512GM64
    EFM32GG12B130F512GQ64
    EFM32GG12B130F512IM64
    EFM32GG12B130F512IQ64
    EFM32GG12B310F1024GL112
    EFM32GG12B310F1024GQ100
    EFM32GG12B330F512GL112
    EFM32GG12B330F512GQ100
    EFM32GG12B390F512GL112
    EFM32GG12B390F1024GL112
    EFM32GG12B410F1024GL112
    EFM32GG12B410F1024GL120
    EFM32GG12B410F1024GM64
    EFM32GG12B410F1024GQ64
    EFM32GG12B410F1024GQ100
    EFM32GG12B410F1024IL112
    EFM32GG12B410F1024IL120
    EFM32GG12B410F1024IM64
    EFM32GG12B410F1024IQ64
    EFM32GG12B410F1024IQ100
    EFM32GG12B430F512GL112
    EFM32GG12B430F512GL120
    EFM32GG12B430F512GM64
    EFM32GG12B430F512GQ64
    EFM32GG12B430F512GQ100
    EFM32GG12B430F512IL112
    EFM32GG12B430F512IL120
    EFM32GG12B430F512IM64
    EFM32GG12B430F512IQ64
    EFM32GG12B430F512IQ100
    EFM32GG12B510F1024GL112
    EFM32GG12B510F1024GL120
    EFM32GG12B510F1024GM64
    EFM32GG12B510F1024GQ64
    EFM32GG12B510F1024GQ100
    EFM32GG12B510F1024IL112
    EFM32GG12B510F1024IL120
    EFM32GG12B510F1024IM64
    EFM32GG12B510F1024IQ64
    EFM32GG12B510F1024IQ100
    EFM32GG12B530F512GL112
    EFM32GG12B530F512GL120
    EFM32GG12B530F512GM64
    EFM32GG12B530F512GQ64
    EFM32GG12B530F512GQ100
    EFM32GG12B530F512IL112
    EFM32GG12B530F512IL120
    EFM32GG12B530F512IM64
    EFM32GG12B530F512IQ64
    EFM32GG12B530F512IQ100
    EFM32GG12B810F1024GL112
    EFM32GG12B810F1024GL120
    EFM32GG12B810F1024GM64
    EFM32GG12B810F1024GQ64
    EFM32GG12B810F1024GQ100
    EFM32GG12B810F1024IL112
    EFM32GG12B810F1024IL120
    EFM32GG12B810F1024IM64
    EFM32GG12B810F1024IQ64
    EFM32GG12B810F1024IQ100
    EFM32GG12B830F512GL112
    EFM32GG12B830F512GL120
    EFM32GG12B830F512GM64
    EFM32GG12B830F512GQ64
    EFM32GG12B830F512GQ100
    EFM32GG12B830F512IL112
    EFM32GG12B830F512IL120
    EFM32GG12B830F512IM64
    EFM32GG12B830F512IQ64
    EFM32GG12B830F512IQ100
    
  • EFM32HG:

    EFM32HG108F32
    EFM32HG108F64
    EFM32HG110F32
    EFM32HG110F64
    EFM32HG210F32
    EFM32HG210F64
    EFM32HG222F32
    EFM32HG222F64
    EFM32HG308F32
    EFM32HG308F64
    EFM32HG309F32
    EFM32HG309F64
    EFM32HG310F32
    EFM32HG310F64
    EFM32HG321F32
    EFM32HG321F64
    EFM32HG322F32
    EFM32HG322F64
    EFM32HG350F32
    EFM32HG350F64
    
  • EFM32LG:

    EFM32LG230F64
    EFM32LG230F128
    EFM32LG230F256
    EFM32LG232F64
    EFM32LG232F128
    EFM32LG232F256
    EFM32LG280F64
    EFM32LG280F128
    EFM32LG280F256
    EFM32LG290F64
    EFM32LG290F128
    EFM32LG290F256
    EFM32LG295F64
    EFM32LG295F128
    EFM32LG295F256
    EFM32LG330F64
    EFM32LG330F128
    EFM32LG330F256
    EFM32LG332F64
    EFM32LG332F128
    EFM32LG332F256
    EFM32LG360F64
    EFM32LG360F128
    EFM32LG360F256
    EFM32LG380F64
    EFM32LG380F128
    EFM32LG380F256
    EFM32LG390F64
    EFM32LG390F128
    EFM32LG390F256
    EFM32LG395F64
    EFM32LG395F128
    EFM32LG395F256
    EFM32LG840F64
    EFM32LG840F128
    EFM32LG840F256
    EFM32LG842F64
    EFM32LG842F128
    EFM32LG842F256
    EFM32LG880F64
    EFM32LG880F128
    EFM32LG880F256
    EFM32LG890F64
    EFM32LG890F128
    EFM32LG890F256
    EFM32LG895F64
    EFM32LG895F128
    EFM32LG895F256
    EFM32LG900F256
    EFM32LG940F64
    EFM32LG940F128
    EFM32LG940F256
    EFM32LG942F64
    EFM32LG942F128
    EFM32LG942F256
    EFM32LG980F64
    EFM32LG980F128
    EFM32LG980F256
    EFM32LG990F64
    EFM32LG990F128
    EFM32LG990F256
    EFM32LG995F64
    EFM32LG995F128
    EFM32LG995F256
    
  • EFM32WG:

    EFM32WG230F64
    EFM32WG230F128
    EFM32WG230F256
    EFM32WG232F64
    EFM32WG232F128
    EFM32WG232F256
    EFM32WG280F64
    EFM32WG280F128
    EFM32WG280F256
    EFM32WG290F64
    EFM32WG290F128
    EFM32WG290F256
    EFM32WG295F64
    EFM32WG295F128
    EFM32WG295F256
    EFM32WG330F64
    EFM32WG330F128
    EFM32WG330F256
    EFM32WG332F64
    EFM32WG332F128
    EFM32WG332F256
    EFM32WG360F64
    EFM32WG360F128
    EFM32WG360F256
    EFM32WG380F64
    EFM32WG380F128
    EFM32WG380F256
    EFM32WG390F64
    EFM32WG390F128
    EFM32WG390F256
    EFM32WG395F64
    EFM32WG395F128
    EFM32WG395F256
    EFM32WG840F64
    EFM32WG840F128
    EFM32WG840F256
    EFM32WG842F64
    EFM32WG842F128
    EFM32WG842F256
    EFM32WG880F64
    EFM32WG880F128
    EFM32WG880F256
    EFM32WG890F64
    EFM32WG890F128
    EFM32WG890F256
    EFM32WG895F64
    EFM32WG895F128
    EFM32WG895F256
    EFM32WG900F256
    EFM32WG940F64
    EFM32WG940F128
    EFM32WG940F256
    EFM32WG942F64
    EFM32WG942F128
    EFM32WG942F256
    EFM32WG980F64
    EFM32WG980F128
    EFM32WG980F256
    EFM32WG990F64
    EFM32WG990F128
    EFM32WG990F256
    EFM32WG995F64
    EFM32WG995F128
    EFM32WG995F256
    
1

Largely thanks to the efm32-base (link) project.