Skip to main content

imp006 M.2 Board

The imp006 M.2 Board provides customers with a means to incorporate a complete and removable imp sub-system in their products. The unit comprises an imp006 module with a Quectel BG96 CAT-M1/NB-IoT modem and a Twilio Super SIM in MFF2 form. The imp006’s GPIO pins are routed through the M.2 (aka NGFF) connector.

The imp005 M.2 board front  The imp005 M.2 board back

With all RF components and traces on the board, and a pre-approved radio module fitted, this provides an easy-to-use form-factor for customers who do not want to burden their PCBA designs with impedance control or fine-pitch BGA packages.

Important Customers should note that the imp006 M.2 Board is not a self-contained product. The board to which it will be connected must contain the circuitry required to deliver appropriate power supplies, optical BlinkUp and connect to the imp006 via the M.2 connector pins. The impC001 Breakout Board reference design is a good foundation for the development of an imp006 M.2-based product as it contains all the necessary additional circuitry.

imp006 M2 BlinkUp components
The BlinkUp circuitry required by the imp006 M2's host. The named lines connected to the M.2 pins of the same name (see below)

Twilio does not sell this module as a product, but the design is open source and full release packs are available allowing customers to get boards made by their manufacturer of choice.

Please see the GPIO section, below, for a full list of the imp006 pins exposed through the M.2 connector.

Device Activation

Please see our setup guide for step-by-step guidance on connecting a new board based on the imp006 M.2 to the Electric Imp impCloud™ and adding it to your Electric Imp account.

Cellular Connectivity

The imp006 M.2 Board provides LTE Cat. M1 cellular connectivity using the Quectel BG96 cellular modem. It can fall back to quad-band 2G as required and as available in the territory in which it is operating.

The BG96 connects to the imp006 via a dedicated USB channel and a UART. Connectivity to the impCloud is managed by impOS, but can be controlled by the application.

Network Activity

An LED (D1) on the front of the board provides network status information:

  • Short on, long off flash — Searching for network.
  • Long on, short off flash — Registered on network.
  • Fast blink — Data transfer.

The imp005 M.2 board D1 led location


The imp006 M.2 Board incorporates a Twilio Super SIM which enables Cat-M1 and fallback to 2G where such networks exist. It does not support NB-IoT. If your use-case requires NB-IoT support, you will need to use a Twilio Programmable Wireless Narrowband IoT SIM in place of a Twilio Super SIM.

Note impOS only supports Twilio SIMs, so you will not be able to add an MFF2 SIM from a carrier or another supplier.

When building imp006 M.2 boards, you will need to establish a relationship with Twilio to order the MFF2 Super SIMs you will require. Twilio’s online console and APIs provide all the tools you will need to manage and maintain your fleet of Super SIMs.

Antenna Connector

The imp006 M.2 Board incorporates a u.FL connector, marked LTE, to which a suitable cellular antenna should be connected. The antenna is located on the reverse of the board.

Please note that u.FL connectors are delicate and should not be overly stressed. Nor should you repeatedly fit and remove the antenna: u.FL connectors are rated to just 30 insertions.


The imp006 M.2 Board’s Quectel BG96 module also supports GNSS (Global Navigation Satellite System) operation using all of the major satellite-based location detection systems, including GPS, Galileo, Glonass and BDS.

We have a Squirrel library which can provide your application with access to GPS location data retrieved from the BG96. The BG96 will need to be connected to an external active antenna for GNSS operation; the imp006 M.2 Board design incorporates a u.FL connector to which a suitable GNSS antenna should be connected. When the BG96 module is awake, power for active GNSS antennas is supplied to the GNSS antenna connector.

Please note that u.FL connectors are delicate and should not be overly stressed. Nor should you repeatedly fit and remove the antenna: u.FL connectors are rated to just 30 insertions.

M.2 NGFF Connector

The imp006 is connected to the host system via an M.2-compatible NGFF (key E) connector. It is secured with an M3 screw.

The recommended connector/hardware set is available from All Link Taiwan:

  • Connector NFSE0-S6701-TP40.
  • 2.45mm high SMT fixing post ST6N-M30-245.
  • M3 screw SC3N-M30-25N.

An alternate connector available in distribution is the JAE SM3ZS067U310AER1200, with the top-side screw terminal fixing using the threaded standoff SM3ZS067U310-NUT1-R1800. However, this threaded standoff is an M2.5 screw thread and slightly undersized — it is intended for mini-PCI cards, not NGFF.

With this height standoff connector, there is no clearance for parts between the customer PCB and mounted module. Higher standoff connectors can be used if required — please contact us for applicable part numbers.


As noted above, many of the imp006 M.2 Board’s GPIO pins are exposed through the M.2 connector. Please see the imp006 pin mux page for information on all of the many GPIO pins and standard buses made available by the module. The following chart shows the pins broken out on two sides of the M.2 connector:


The imp006 M.2 Board Connector front
Click for a full-size version of the image


The imp006 M.2 Board Connector front
Click for a full-size version of the image


  • The pin RST L is connected to the imp006’s NRST pin. This will require a pull-up resistor (10KΩ) on your host board to ensure the pin does not float.
  • Your device will need to connect the OPTO_IN, OPTO_BIAS, LED RED and LED GRN pins to its BlinkUp circuitry. The LED pins drive the BlinkUp status LED.
  • If R2 is stuffed, RESCUE is connected to pin YC. Bridging W1 grounds RESCUE.

Retrofitting the imp006 M.2 to the impC001 Breakout Board

While the imp006 M.2 board and the impC001 Breakout Board reference design use the M.2 connector, the pinout slightly differs between the impC001 and imp006 M.2 modules. For example, code written to access the impC001’s spiDCAB bus would need to be changed to spiXABCD for use with an imp006 M.2 module to match the latter’s M.2 pinout.

impC001 imp006 M.2
uartEVMT uartABCD
uartNU uartXJK
i2cJH i2cTU
i2cKL i2cLM
i2cXBA i2cJK

The following impC001 buses have no imp006 equivalents:

  • spiEVMT
  • uartDCAB
  • uartHJKL
  • uartXBADC
  • i2cXDC

Additional Programming Resources

GNSS Library

Project Files

Rev 2.0

Edge Connector