Nowadays, most common microcontroller operate with 3.3V logic, while the older classic Arduino UNO uses 5V logic, but sometimes you want to connect your project to 12V or 24V gadgets, which are common in automation and home systems.
We created the GO-24V MKR shield with 24V tolerant inputs and outputs exactly for this purpose. Just connect it to any board with the Arduino-MKR form factor and go!
The Omzlo GO-24V MKR shield is designed to fit on top of Arduino MKR compatible boards, such as the Arduino MKR Zero. But it really shines as part of an IoT project on top of an Omzlo CANZERO node.
It features:
The shield also breaks out the GND and VIN pins of the MKR board.
The following table provides details of the shield input/output capabilities:
Shield connector | Arduino MKR Pin | Characteristics |
---|---|---|
Sink 1 (Output) | D0 | 0-24V (max 60V, 3.1A) |
Sink 2 (Output) | D1 | 0-24V (max 60V, 3.1A) |
Sink 3 (Output) | D2 | 0-24V (max 60V, 3.1A) |
Sink 4 (Output) | D3 | 0-24V (max 60V, 3.1A) |
Input 1 | D4 | 0-24V |
Input 2 | D5 | 0-24V |
Input 3 | D6 | 0-24V |
Input 4 | D7 | 0-24V |
Analog in 1 | A0 | 0-24V mapped to 0-3.2V |
Analog in 2 | A1 | 0-24V mapped to 0-3.2V |
GND | GND | - |
VIN | VIN | - |
Note that this shield does not feature isolated inputs/outputs (e.g. using optocouplers) or galvanic isolation.
The digital inputs have the same shifting characteristic as the GPIO of the MCUs they are connected to. For a SAMD21 board like the Arduino MKR Zero or the Omzlo CANZERO, this means that any input below 1V will be considered LOW (0), and any input above 1.8V will be considered as HIGH (1).
The sinking outputs are controlled by MOSFETs, which have a comfortable maximum 3.1A current rating. In practice, it's best to keep safely away from those limits. We tested currents up to 1.5A without any issue, for low-side switching power LEDs. Lower currents should also be considered when switching these MOSFETs very rapidly (e.g. through fast PWM). In doubt, please consult the safe operating area of the MOSFET in the datasheet.
If you want to use the digital output to drive a signal between 0 and 24V (or lower), you will need to add a pull-up resistor between the sinking output and the high voltage level (e.g. 24V). In that case, the logic is inverted: setting the sinking output to "high" sets VOUT to 0V, whereas setting the sinking output to "low" sets VOUT to high (e.g. 24V).
Analog inputs are managed by feeding input voltage in a voltage divider and a buffering op-amp, resulting in a scaled voltage range where 24V corresponds to 3.2V on the analog input of the Arduino-compatible board (and 24.75V corresponds to 3.3V). In terms of accuracy, the voltage divider uses 1% resistors, but the greatest source of inaccuracy can come from the ADC of the MCU itself. It is possible to apply calibration to each board to substantially increase accuracy.
As shown in the picture below, the Omzlo GO-24V MKR shield comes as a shield with the following unsoldered headers:
This board is designed to be compatible with the Arduino MKR form factor. You will need to provide your own Arduino-MKR compatible board to use this shield. Disclamer: In accordance with the Arduino trademark usage rules, we note that this product is not otherwise connected to Arduino S.r.l.
For more information including schematics and Arduino code, please see our online documentation.
We ship twice a week, typically on Tuesdays and Fridays.