Power over Ethernet + Qwiic

Hi,

I have a Sparkfun Qwiic Ethernet Endpoint but am unsure if and how I could use PoE (Power over Ethernet) to power the ESP32 board and everything else connected via Qwiic with it?

As I understand the Hookup guide, I would need to supply 3,3V to either the blue or green wire in the Ethernet cable to have power on the Endpoint and connected Qwiic devices, is that correct?

Is there another Sparkfun Ethernet board with Qwiic that supports PoE out of the box? (I’ve only found the “Sparkfun MicroMod Ethnernet Function Board with W5500” but that one does not have the Qwiic bus system)

Thanks,
Michael

EDIT: ideally, I would like to use a standard PoE Switch to power the connected ESP32 board and the Qwiic-connected sensors. As I understand, a standard PoE Switch would supply something between 44 to 52V and therefore toast the Ethernet Endpoint when connected. So I assume I would need an Qwiic Endpoint that converts the PoE Voltage to the 3,3V needed by the connected ESP32 board?

What you have is a SparkFun QwiicBus - EndPoint and while those will work over CAT5/6 Ethernet cable, they are NOT Ethernet and will not work on an Ethernet network and can not support PoE.

Oh ok thank you, that was a misunderstanding from my side. I am new to the Sparkfun ecosystem and obivously made a wrong assumption.

Is there an Qwiic Ethernet device available? If so, could you point me in the right direction. I did not find any when Googling.

Alternatively, would this work using it together:
SparkFun MicroMod ESP32 Processor
+
SparkFun MicroMod Main Board - Double
+
SparkFun MicroMod Ethernet Function Board - W5500
+
SparkFun MicroMod WiFi Function Board - ESP32

From the description, I read that this setup would have ESP32 + Qwiic (for a 9Dof board) + Wifi/Ethernet with PoE. Is that doable?

No worries!

There are no Qwiic to Ethernet boards I am aware of but the easiest way I can think of to get data from a Qwiic board remotely would probably be to connect your Qwiic device to a raspberry Pi with a SparkFun Qwiic pHAT v2.0 for Raspberry Pi.

You’d have to write some software on the Pi to talk to your Qwiic device and pass it’s output over Ethernet to your remote device.

Ok thanks for the suggestion but I’d like to rather not add a Raspberry Pi to the targeted system/hardware setup.

Would the described alternative work (using the MicroMod ecosystem) ? As I understand it would allow both using sensors connected via Qwiic and the PoE/Ethernet function board?

That combo could work but your Qwiic device would connect to the SparkFun MicroMod Main Board - Double and not the PoE/Ethernet function board.

It would require writing a lot more software and you wouldn’t need the WiFi board and PoE/Ethernet function board at the same time since they both provide you with network access.

Yes I understand that I wouldn’t necessarily need both Wifi and Ethernet for connection, but as it is a prototype and the final connection type is not yet decided, I would like to keep the option open to switch between those 2.

My goal is to send the 9dof data (orientation vector) and more data via Ethernet or wifi to another system as Json via mqtt. I currently have all that already running on a esp32 wrooom. I might need other additional devices (e.g. led and audio), that’s why I want to use qwiic and an esp32 board.

You may want to also grab an alternate MM processor type or two, as some processors can have pin conflicts…generally the easiest workaround is to swap the processor/MCU

Thanks Russell, which processor would you recommend?

Use case (for a very game-controller like device): several qwiic devices chained together (planned: audio, led, trigger, vibration, 9dof imu, maybe display) plus Ethernet or wifi via micromod. Relaying all status data 60 times per second via Json over mqtt to server. OTA updates (ElegantOTA) and webserver config page (AsyncWebserver or similar), SSDP network discovery. Several controllers will run parallel (up to 40). Power ideally over Ethernet. So quite a lot to do for the processor.

I did something similar already on an ESP8266, so I am experienced most with Espressify chips. But maybe some other processor is better in your opinion? E.g. wifi stability on esp8266 was an ongoing pain, that’s why I either hopefor a better wifi on esp32 or switch to Ethernet plus PoE advantage. What do you think?

I’d probably pick up a teensy and and an esp32 as good first-guesses (IE without scouring their respective pinouts to see what all comms ports are available is using the 2 above function boards), as you’re familiar with esp32 and the teensy has a LOT of multifunction GPIO https://www.sparkfun.com/catalogsearch/result/?q=micromod
I might even grab a SAMD as well just to have a 3rd option (I’d rather swap and re-try than re-map pins! heh)

Like Yellowdog said it’ll likely require some manual edits to code, but if you’ve already done similar with 8266 then it’s definitely possible :slight_smile:

As an addendum: the newer Sno MM processors are the most extensible (however, they are also priced accordingly!)

You could look at stacking an Ethernet PoE featherwing ( PoE-FeatherWing - Electronic & Embedded systems design and consulting ) under a ThingPlus. The PoE Featherwing will provide power to the ThingPlus, which has a Qwiic connector. The Poe Featherwing has a W5500 on it connected via the SPI Feather pins. Then it’s “just a small matter of software” to get the Thing processor to use the W5500 for Ethernet instead of onboard WiFi and negotiate PoE with your switch.

I use a PoE Featherwing with the Silicognition RP2040 shim since it’s pretty turnkey. One could wire a Qwiic connector to it pretty easily.

Depending on the PoE switch you may be able to command it to turn PoE on without the normal negotiation. The Featherwing will then provide power to whatever is stacked on it, up to 7W @ 5V.

Thanks @PKeller34 for the suggestion with the PoE-FeatherWing, that sounds good.

I am not too familiar with how to connect the PoE-Featherwing with the ThingsPlus.

From how I understand the documentation (PoE-Featherwing, ThingsPlus Pinout) I would have to:

  • connect SPI (13/Miso, 12/Mosi, 11/Sck) from ThingsPlus to PoE-Featherwing (I think I understand that)
  • connect what else to the ThingsPlus (17/SDA, 18/SCL) ?
  • and how do I get the power from the PoE-Featherwing to the ThingsPlus? (connect 26/USB and 4/GND to the ThingsPlus or should I better use a PoE-Splitter with MicroUSB?)

Is that the proper way to connect?

Also just for reference, I read that the ThingsPlus regulates the 5V to 3,3V internally.

Thank you @TS-Russell I will start with ESP32 then and look into teensy later.

1 Like

No hotwiring needs to be done between the Thing+ and Featherwing AFIK. The Featherwing supplies +5 on the correct pin for the Thing+ to generate 3.3 for it and the wing.

The Wiz5500 on the wing needs to bring up ethernet to do the PoE negotiation with the switch unless you’re using passive PoE or can program the switch to spit out volts regardless. I’m not an ESP wiz but it apparently requires special attention to use an external SPI ethernet interface and ignore its own stack. I use an rp2040 for that reason (among others) and to save space in my application.

Since the Wiz5500 connects via SPI there shouldn’t be any conflict with that and the Qwicc port on the Thing+. But there’s a rom on the Featherwing storing a MAC address uniquely assigned to each wing. It’s convenient but is accessed by I2C. You should probably confirm no address conflicts with whatever you’re Qwiccing to and make sure only one device is doing the I2C pullup.

1 Like

Thank you @PKeller34, I will order and try that!

Just curious here.

Do you want to use ethernet to talk to your Qwiic connected devices, or are you only interested in it as a power supply?

If its just the latter then you can get a 5v PoE splitter, solder a few wires, and power your project from that. Cheaper than a PoE Featherwing.

I want to talk to the Qwiic devices by sending/receiving data via json package over ethernet.

Got it. Then the PoE Featherwing is the way to go. Two things to keep in mind:

  1. The Featherwing is tall. You’ll want long header pins or stackable headers. Lengths depend on whether the cpu goes above or below the wing. There’s a handy rp2040 board Silicognition calls the “Shim” that fits over the wing without making the stack taller. I use this in my PoE Webhook based wall switches.

  2. You don’t have to use the wings’ onboard MAC address rom if you choose one in your firmware. You can disconnect the I2C pins on the wing if they go to the Qwiic connector and you want no possible address collisions. They only go to that rom. But i don’t know which side of the pcb the traces are. Sometimes I’ll solder first and check later. Bad idea.

1 Like