by BH Dynamics

Image of Board

DynOSSAT-EDU is the first open source PocketQube educational kit compatible with CircuitPython and Arduino.

This plaform is equipped with all the necessary modules for the operation of a nanosatellite (PocketQube) in Low Earth Orbit (LEO) that would serve as a device for teaching, training, and driving curiosity about the philosophy and technology related to NewSpace.

This is the On-Board Computer (OBC), the module responsible for managing the satellite and process sensor data. It integrates a 9-axis IMU, a gas sensor, a temperature sensor and carries a powerful ATSAMD51.

Hardware is licensed under CERN OHL v1.2.

Technical details

  • Powerful ATSAMD51J20A-AU 120 MHz Cortex-M4F processor with 1 MB flash + 256 KB RAM for all your CircuitPython needs
  • 32 Mbit SPI flash for storing CircuitPython code and libraries
  • High-precision ICM-20948 Inertial Measurement Unit including Accelerometer, Gyroscope and Magnetometer for Attitude management
  • MCP9808 Digital Temperature Sensor
  • SGP30 TVOC and eqCO2 air quality sensor
  • User-controllable WS2812B addressable RGB LED
  • Separate 5V and 3.3V rails, providing up to 1A/500mA respectively
  • MicroSD Card slot
  • Female USB-C 2.0 connector for power and data logging
  • PQBH40 bus exposing 10 digital pins, 6 analog pins (+ true DAC), an I2C bus, an SPI bus and an UART
  • Comes preprogrammed with the UF2 bootloader and CircuitPython 6.0.0


This board is open source hardware. You can check the docs and contribute here.



Have some info to add for this board? Edit the source for this page here.

CircuitPython 9.1.0

This is the latest stable release of CircuitPython that will work with the DynOSSAT-EDU OBC.

Use this release if you are new to CircuitPython.

Release Notes for 9.1.0

Built-in modules available: _asyncio, _bleio, _pixelmap, adafruit_bus_device, adafruit_pixelbuf, aesio, alarm, analogio, array, atexit, audiobusio, audiocore, audioio, audiomixer, audiomp3, binascii, bitbangio, bitmaptools, board, builtins, builtins.pow3, busdisplay, busio, busio.SPI, busio.UART, codeop, collections, countio, digitalio, displayio, epaperdisplay, errno, floppyio, fontio, fourwire, framebufferio, frequencyio, getpass, gifio, i2cdisplaybus, i2ctarget, io, jpegio, json, keypad, keypad.KeyMatrix, keypad.Keys, keypad.ShiftRegisterKeys, locale, math, max3421e, microcontroller, msgpack, neopixel_write, nvm, onewireio, os, os.getenv, paralleldisplaybus, ps2io, pulseio, pwmio, rainbowio, random, re, rgbmatrix, rotaryio, rtc, samd, sdcardio, select, sharpdisplay, storage, struct, supervisor, synthio, sys, terminalio, time, touchio, traceback, ulab, usb, usb_cdc, usb_hid, usb_midi, vectorio, warnings, watchdog, zlib

Absolute Newest

Every time we commit new code to CircuitPython we automatically build binaries for each board and language. The binaries are stored on Amazon S3, organized by board, and then by language. These releases are even newer than the development release listed above. Try them if you want the absolute latest and are feeling daring or want to see if a problem has been fixed.

Previous Versions of CircuitPython

All previous releases of CircuitPython are available for download from Amazon S3 through the button below. For very old releases, look in the OLD/ folder for each board. Release notes for each release are available at GitHub button below.

Older releases are useful for testing if you something appears to be broken in a newer release but used to work, or if you have older code that depends on features only available in an older release. Otherwise we recommend using the latest stable release.