Specifications
DUELink unifies many aspects allowing modules to come in any shape and form and still conform to a unified user experience.
Connections
Connections between modules and to microcomputers is accomplished using standard 4pin 1mm pitch JST connectors. These low-cost and common connectors are very small that you can throw on anything without compromising space. They are available in SMT for fast machine placement and in TH in case you need to hand solder them.
The pinout consists of:
- Common Ground
- Regulated 3.3V
- DRP
- CTN
Each module includes both Uplink (white) and Downlink (blue) connectors.
The Uplink connector is used to connect the module to a microcomputer, such as Raspberry PI or Arduino, or a PC. It automatically works with I2C, UART, and USB.
When USB is mostly desired on specific boards, a USB C connector is used instead of the JST Uplink connector. This is the case with DueDuino for example.
Every single module can still access USB by wiring a USB connector to the Uplink connector. We also offer USB Hook for convenience.
In some rare case, a module might have both Uplink and USB connector, like we have on Ghizzy. In this case, the user can use either USB or Uplink as they are both wired together internally.
DUELink Uplink connection is compatible with Sparkfun Qwiic and Adafruit STEMMA QT. Both use I2C, which is one of options available on any DUELink Uplink connection.
Always connect the non-DUELink modules first in line with the microcomputer then add as many DUELink modules as the wires can handle!!
The second connector is Downlink. It connects to the next modules' Uplink connector.
Each module has intelligence to know what to transfer and return throughout the entire stream. Only connect DUELink modules on the Downlink connection. More details are on the Downlink page.
Uplink JST connectors must be white, while Downlink JST connectors are blue. The Uplink and Downlink connectors must also be clearly marked with U and D respectively.
Tip: When looking at the front of the module, we recommend placing the U connector on the left side, with D connector on the right.
Status LED
Each DUELink module must include a STAT (Status) LED. This is used by the system automatically, and also accessible using the StatLed()
command. On boards that have parts on both sides, STAT LED must be on the front face of the module.
On power up, the STAT LED turns on automatically. It stays on until the device is ready. A ready device means it has selected an Interface and it has an address. At this point, the STAT LED becomes an activity-LED.
The status LED is also available to the user through the StatLed()
API. It is up to the user to control the LED manually or leave it as an activity-LED.
Dimensions
DUELink modules can be of any size and form; however, they must include mounting holes that are placed on a 5mm grid. On boards with right angle corners, holes must be placed 3.5mm from the edges of the circuit.Holes are 3mm diameter with 6.6mm circle around it with copper keep out.
This allows for the use of M3 screws and hardware without worrying about creating circuit shorts.
The 5mm grid placement of holes aids in 3D-print and laser-cut enclosures design. It also allowed us to make Holey Boards!
DUELink Accessories include Mounting Hardware options.
Processor
Currently, only STM32C071 is supported with DUELink. We use QFN32 package but, fear not, we have made Stick to help you make your own modules!
The DUELink Sticker is a mini development board that uses the Stick to help you get started.
Color
We recommend to always use green PCB for all standard modules. Use Red PCB for modules that do not bare an address. These Red modules can be something that bridges connections like USB Hook, or a power module like Power Inject. Microcomputer category of modules are recommended to be Black.
Specialty boards are "special"! They can be of any shape and any color. The Holiday Tree is Green for example.
Custom Modules
We encourage everyone to help in growing the ecosystem by making modules, to be sold commercially or for fun! Visit the Third Party Module page to see how we can help you.