My wired/Ethernet and stm32 setup

Most of my personal/home control and sensor related devices are
on an wired-only internal network not connected to the internet.

In case anyone else is interesting in having a wired Ethernet
variant, here’s what I’m running.

I have a pro kit (3.7, presoldered) with the following modifications:

  • Replaced the Wemos D1 Mini v4 with an stm32f411 “black pill” board
  • Added a ENC28J60 Ethernet board
  • Custom firmware

It’s more of a prototype, so it’s not pretty, but it’s clear
that the ENC28J60 board from waveshare can reasonably fit
in between the mini shield pin headers.
Same for the stm32 board.

I’ve found that the Monoprice Cat6 Ethernet Patch Cable - Micro SlimRun Series
cables from Amazon work well and don’t require any modifications
to the enclosure.

Since I’m using a different board, I’m not sure about
the available pin configurations on the Wemos D1 Mini
to facilitate the SPI connection it needs, but figured
I’d share anyways.

My code/etc is on github FWIW: GitHub - jonlamb-gh/air-gradient-pro-rs: Rust firmware and tools for the AirGradient PRO

(also made a Rust crate for the gas algorithm: GitHub - jonlamb-gh/gas-index-algorithm: An unofficial Rust port of Sensirion's gas-index-algorithm)

Impressive, thanks for sharing! How has this been working out for you? Does this configuration also eliminate the wifi radio?

It’s been working fairly well. Given that it’s hacked-together prototype, I’m surprised I haven’t had any issues yet. Yes, it eliminates the Wemos D1 completely.

Interesting! Very nice work too. I wonder if there would be a way to add one of those poe extractor to add poe to it… At that point it might be necessary to desolder the ethernet jack from the ethernet module you’re using but hopefully there’s no need to go in kicad and do adjustments to the PCB (although that would be neat).