Case ReviewsEDATECHome AutomationReviews

EDATEC ED-IPC3020 Industrial Raspberry Pi 5

Unlike other case reviews, the EDATEC ED-IPC3020 isn’t just an industrial case for a Pi 5, it’s a full product with a Raspberry Pi 5 installed and a custom daughter board providing additional functionality.

Disclaimer: This case was supplied for review by EDATEC, they do not have any editorial influence.

Design

The ED-IPC3020 is a fanless (my favourite type) industrial enclosure. The all-metal case has a thick heatsink on the base and internally the Raspberry Pi 5 has a heatsink on the top too that appears to be using the top half of the EDATEC Open CNC Case I’ve reviewed previously. This top heatsink interfaces with the SoC, WiFi Module and PMIC, using various thickness pads to optimise for each component conducting to the heatsink. One side has a grounding bolt. The rear of the case features access to the Raspberry Pi 5 on/off switch, power/activity LED and the slot for the SD-Card (note: when the card is installed you’ll need to use a pair of tweezers (supplied) to be able to remove the card). The other side provides access to the USB-C (required to power the ED-IPC3020) and the standard 2 x Micro HDMI connectors. The front panel exposed the Raspberry Pi 5 Gigabit Ethernet, 2 x USB 3.0 and 2 x USB 2.0 ports alongside the connections and LEDs from the ED-IPC3020 daughter board more details are covered below.

Cooling Performance

Running an obligatory stress test on all 4 cores for 30 minutes shows the Raspberry Pi 5 reached a maximum temperature of 69.7°C, more than 10°C below the level for thermal throttling on the Raspberry Pi 5. The ambient temperature during the test was ~21°C.

Design Shortcomings

For an industrial Raspberry Pi, there are a few surprise omissions from the ED-IPC3020, which are present on the EDATEC’s CM4 based industrial solution ED-IPC2010, namely:

  • DIN rail mounting options.
  • Higher DC voltage input. The ED-IPC2010 supports 8-28V DC input via a barrel jack on the front. Industrial control systems often use 12 or 24V
  • Use of USB-C Power connection on the side of the case. I’d have expected all the required/common connections would be on the front panel. For industrial control the micro HDMI may not be used, but since the only way to power the ED-IPC3020 is via the standard USB-C connection on the side of the Pi 5, then this computer will always have connections on multiple sides.

I suspect the lack of higher DC input comes down to size/space constraints, on the board or front panel, and trade-offs had to be made.

Functionality

EDATEC IPC3020 product code decoder

The ED-IPC3020 comes in several different configurations so you can tailor it to your needs. The unit EDATEC sent me for review is ED-IPC3020-08321-P which decodes to: 8GB Pi 5 with a 32GB SD card, a 128GB SSD and a PoE Module. Having PoE is really interesting, especially since there hasn’t yet been a release of a new PoE HAT from Raspberrypi.com.

Though the unit supplied has the PoE module, it’s sadly missing an internal cable to connect the module to the Pi 5, so sadly I can’t test out PoE on this platform at the moment. Given the challenges with some other PoE products, I was looking forward to investigating this aspect. If I get the missing cable then I’ll consider a follow-up post.

System Block Diagram

The white coloured boxes in the System block diagram show the additional capabilities of the ED-IPC3020. Optional PoE module, Real Time Clock (RTC) on the RP 5 is powered by a SuperCap and CR1220 lithium coin cell battery (not included when shipped outside China), Buzzer, RS-232, exposed via 3-pin Phoenix connector, RS-485 also exposed via 3-pin Phoenix connector, with optional 120 ohm termination, activity lights for RSR-232 and RS-485 bus, stereo microphone input, and stereo headphone output.

Internally there are additional connections for a 5V output, 3W dual channel speaker output for 4-ohm speakers, supplied by the PAM8406 amplifier, U9, (datasheet) along with a RealTek ALC5616, U3 (datasheet). An M.2 M Key connector compatible with 2230, 2242 and 2260 sizes M.2 SSD.

The comprehensive user manual for the ED-IPC3020 details all the connections internally and externally, along with which Raspberry Pi GPIO pins have been used. I highly recommend you read this if considering using this EDATEC product.

Power over Ethernet (PoE)

Though I missing a cable to be able to test PoE, we can examine the PoE Implementation. The PoE capability is provided by SDaPo PM1202 12V2A module (spec sheet), which supports the IEEE802.3af and IEEE802.3at standards, with an output of 12V @ 2.5A Max (30W). The 12V output is stepped down to 5V @5A (25W) by U2 an STC9336 Synchronous Step-down DCDC Converter with EMI reduction (datasheet). So this should mean the Raspberry Pi 5 can be supplied with sufficient current to not limit the power available to USB devices down to 600mA as described here, though testing would be required to confirm this. As it appears getting the maximum current supported when powering via the GPIO pins either requires manual override or if correctly implementing the Power HAT+ spec, the device needs to share power capabilities via the device tree overlay.

Testing RS-485

One of the unique features of the ED-IPC3020 is the RS-485 interface, an industrial specification for point-to-point communication of electrical devices. The standard allows for long cabling distances in electrically noisy environments supporting multiple devices on the same bus and is broadly adopted for industrial control. There is a broad range of RS-485 sensors (for inputs) and relays, valves and displays, I opted to purchase a 4-channel relay module from AliExpress, specifically “4CH ETH WIFI 485 CAS” model.

Examining the daughter board the RS485 interface appears to be provided by U7 an SP3485E (datasheet). I’ve not tested the RS-232 interface, but there is another chip on the daughterboard for the RS-232, U5, an SP3232EE (datasheet).

Note: if you require 120 ohm termination, you’ll need to install a standard 2.54 mm pitch jumper (not included) on J7, within the enclosure of the ED-IPC3020.

Connecting the relay module to the ED-IPC3020 is simple, with just 3 wires (GND, A, B) on the 3-Pin Phoenix connector, going to GND, A and B on the relay module. The relay module is powered via a separate 12V DC power source. In addition to RS-485 this relay module can be controlled over WiFi or ethernet a range of protocols using MQTT, CoAP, Modbus, TCP/UDP, HTTP and includes a local Web UI.

For my testing, I opted to use Node-Red with the additional node-red-contrib-modbus node support installed. The relay module was configured per the settings below:

Example Node-Red flows to control RS-485 4-channel relay (and the buzzer) – Download the JSON here and import it into Node-Red.

Example Node-Red flow for controlling RS485 relay module and ED-IPC3020 onboard sounder.

Testing RTC

The ED-IPC3020 uses the Real Time Clock (RTC) on the Raspberry PI 5, providing power via a SuperCap and CR1220 lithium coin cell battery. The RTC is automatically detected as rtc0 by Raspberry Pi OS as seen by running dmesg | grep rtc

pi@raspberrypi:~ $ dmesg | grep rtc
[    0.431768] rpi-rtc soc:rpi_rtc: registered as rtc0
[    0.433282] rpi-rtc soc:rpi_rtc: setting system clock to 2024-03-30T20:53:21 UTC (1711832001)

The command timedatectl status will show the local, universal and RTC time:

pi@raspberrypi:~ $ timedatectl status
               Local time: Sat 2024-03-30 21:46:18 GMT
           Universal time: Sat 2024-03-30 21:46:18 UTC
                 RTC time: Sat 2024-03-30 21:46:18
                Time zone: Europe/London (GMT, +0000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

You can read and write the RTC clock using the two commands respectively sudo hwclock -r and sudo hwclock -w.

I’m unclear on the interaction between the RTC supercap and CR1220 lithium battery. Without the coin cell installed, disconnecting power from the Pi, leaving power disconnected for serval hours and then powering up without any network connection, showed the Pi had correctly kept the time. So I’d guess the CR1220 is for when the SuperCap becomes drained and can provide long term RTC power. Ensuring the Raspberry Pi clock is accurate on each boot and without relying on network time sources.

Testing Buzzer

Warning, the sounder inside the ED-IPC3020 is pretty loud! It’s configured as per the user guide section 4.6. Here’s what it looked like for me:

pi@raspberrypi:~ $ sudo apt install gpiod
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
gpiod is already the newest version (1.6.3-1+b3).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $ gpiodetect
gpiochip0 [gpio-brcmstb@107d508500] (32 lines)
gpiochip1 [gpio-brcmstb@107d508520] (4 lines)
gpiochip2 [gpio-brcmstb@107d517c00] (17 lines)
gpiochip3 [gpio-brcmstb@107d517c20] (6 lines)
gpiochip4 [pinctrl-rp1] (54 lines)
pi@raspberrypi:~ $ gpioset 4 6=1
pi@raspberrypi:~ $ gpioset 4 6=0

The last two commands turn the buzzer/sounder on (6=1) and off (6=0). The sounder is controlled just by setting GPIO 06 high or low, this can be done using the command line, as part of a program with suitable GPIO libraries and also via graphical UI like Node-Red.

Testing StoragePerformance

The ED-IPC3020-08321-P model I received included:

  • Kingston CANVAS Select Plus 32 GB micro SD card, SDCS2/32GB
  • Kingspec M.2 NVMe 128GB P/N NE-128 2242 – PCIe Gen3 x2 (Kingspec page)

The system was supplied with the OS installed on the MicroSD card, and the SSD was not partitioned or formatted, so this has to be configured before testing. This is covered in the user manual. The system is configured to use the supported PCI 2.0 configuration, I also tested with the experimental PCI 3.0 support by editing /boot/firmware/config.txt and adding the entry: dtparam=pciex1_gen=3. No errors were seen when testing the PCIe 3.0 configuration and significant storage performance improvements were measured.

GPIO used by the ED-IPC3020

Though the Pi is already within an enclosure and has a daughter board configured, some folk may want to use other GPIO pins, so here is what is already being used:

GPIOPurpose
GPIO 02SDA
GPIO 03SCL
GPIO 04TXD2
GPIO 05RXD2
GPIO 06Buzzer
GPIO 12TXD4
GPIO 13RXD4
GPIO 16ACT_LED
GPIO 18PCM_CLK
GPIO 19PCM_FS
GPIO 20PCM_DIN
GPIO 21PCM_DOUT

Conclusion

The EDATEC ED-IPC3020 is a well made piece of hardware, with clear consideration given to the cooling and robustness requirements of a product designed for commercial environments. The RS-232 and RS-485 interfaces are features that might attract someone to this product. The lack of any mounting options is confusing, it doesn’t appear to a product expected to be left unsecured on a shelf or on top of equipment.

The price starts at around £150 (inc VAT and shipping) and with 8GB RAM, SSD storage and PoE is around £225 (inc VAT and shipping), these prices are from the EDATEC store on AliExpress, when sold on Digikey the prices are a little higher, but would provide quicker delivery (when in stock) and discounted prices for larger purchases.

With a Raspberry Pi 5 4GB @ £58.50 and 8GB @ £78 and more typical cases ranging from £10-£50 the incremental cost for the features present in the EDATEC ED-IPC3020 comes at a premium. This product isn’t targetting the home user or typical maker community, instead, it’s for those that need a certified industrial Raspberry Pi 5 based product for commercial operations, where the Raspberry Pi 5 provides a step up in performance from some existing CM4 based products.

Product Links

Amazon links are affiliate links which help support the site, where possible I’ve used links which should take you to the product in the Amazon store in your region. Links to other suppliers are included for your convenience.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.