Initial questions on design trade-offs

A project log for wESP32: Wired ESP32 with Ethernet and PoE

A low cost ESP32 core board with Ethernet and PoE for convenient "single cable" deployments

Patrick Van OosterwijckPatrick Van Oosterwijck 03/12/2018 at 19:0110 Comments

Based on my current experience with PoE, the following are some concerns I need to tackle in order to create a good but low cost PoE system.  I would love to get input from experts in the field and potential users as to what they would like to see!

Cost factors

In my recent customer-specific design, the most costly components from high to low were:

Questions to be answered

I need to figure out the following and would love to get input from the community (yes that's YOU :)):


David Ogilvy wrote 03/18/2018 at 09:54 point

Use Silvertel PoE Modules and call it a day. Does all the hard work for you. Works with 802.3af and passive PoE. Can get cheap Hanrun magjacks that work fine.

  Are you sure? yes | no

Patrick Van Oosterwijck wrote 03/19/2018 at 15:57 point

Thanks for the tip David.  Those modules look nice, but of course, I'm trying to do the hard work for others myself with this project. ;)  While I could have the Silvertel modules do the hard work for me, I'm afraid that it would drive up the cost too much to make an attractive product...  From what I've gathered up till now, the module cost is at least twice the component cost I'm seeing.

  Are you sure? yes | no

Daniel Riches wrote 03/14/2018 at 13:42 point

I absolutely hate the el-cheapo poe solutions, i think they just ask for trouble and can easily damage equipment. I've read over the 802.3at af specs and you can build a poe psu using minimal components, therefore cheap and done properly. The bit that is going to cost is the tap transformer to pull the poe voltage from the spare and data pairs, plus the transformer for the isolation flyback converter. Personally I'd always go for the slightly more expensive but tried, tested and reliable solution. The end user can always use their own pse out a branded pse device, that's up to them but at least you'll know your device can handle both types. See the data sheets on the LT3748, TPS23753/4. I also found a pdf  with the minimal circuits, just Google for "simple circuit design tutorial for poe applications" and go to the pdf. Hope this helps, Dan.

  Are you sure? yes | no

Patrick Van Oosterwijck wrote 03/19/2018 at 16:03 point

Thanks for the input Daniel!  From my initial investigation I agree I should stick to the standard and forget about el-cheapo "passive PoE".  A quick check on Amazon shows that a passive injector can be had for $8 while a proper 802.3af one can be had for $12.  That difference is really not worth it to screw around with non-standard ones.

  Are you sure? yes | no

Dirk Kayser wrote 03/14/2018 at 00:06 point

2 Versions make a lot of sense. My use case would be environmental monitoring, leak detection etc. in industrial environments. 5V would be enough for most scenarios. 

What I would find useful is an integrated multi-channel a/d converter to connect analog sensors. Maybe something like the LTC1867A? 

For example, I would like to easily integrate a CMOS anemometer, temperature & humdidity measurement, and trace detection technology into one small wall-mounted unit. Maybe plus a small backup battery option for reliability, if that is not provided on the PoE side of things anyway.

  Are you sure? yes | no

Patrick Van Oosterwijck wrote 03/19/2018 at 16:16 point

Thanks for sharing your use cases Dirk!  I was intending to bring out as many ESP32 pins as makes sense to a connector, and you can add an ADC to your own board that plugs in to it.  But it sounds like you would find it a significantly more attractive product if I added the ADC on the main board?

The part you link to is a particularly expensive part and I wouldn't want to burden the product for everyone with the extra cost, what would be your minimum requirement for input channels, sample rate and resolution?  The examples you give are all slow signals so would something like a TLA2024 be sufficient for your needs?

  Are you sure? yes | no

Dirk Kayser wrote 03/26/2018 at 22:56 point

You're right for most use cases the TLA2024 would be totally fine. I was mentioning the LTC because we have a specific use case for that. Indeed it makes more sense to have the expensive component on our instrument and then interface with the ESP32 pins.  

  Are you sure? yes | no

besenyeim wrote 03/13/2018 at 17:17 point

I like this idea.

I would make two versions.

One cheapo, with a non-standard passive solution w/o isolation. Pair it with an injector adapter and you're done. Good for testing, playing, homebrew hobby projects. Make a 3V3 output for ESP + others and leave THT space for a L78xx pin-compatible switching module the users can select and solder for their use-case. Ditch the UART bridge (save space and money and dev time). Hackers already have or can buy their devices for programming. Also it is much nicer if you can update the logic part of your firmware via ethernet network.

Second, proper version for (semi)professional use. 802.3 standard, isolation, full deluxe.

Start with the cheap one. Easier and faster to develop, you can gain attention and will get that professional help easier for the second one. 

  Are you sure? yes | no

Patrick Van Oosterwijck wrote 03/13/2018 at 17:53 point

Thanks for your input!

Making two versions may indeed be the way to go.  A cheap version would be nice for simple sensor nodes, a higher end one when users want to connect to other stuff or drive actuators.

I'm a little afraid people may not understand the difference though, just go for the cheap one without understanding the limitations, and then complain when they run into issues.  For instance if doing passive PoE, it will pretty much ONLY work with injectors and not with proper 802.3af switches since they won't turn on power unless the handshake takes place.

Can you point me to a good device for programming the ESP32?  I've been looking at cheap USB/UART cables but I can't find ANY that export DTR and RTS for auto-programming.  I guess I could do buttons instead, but auto-programming is so nice... :)

  Are you sure? yes | no

besenyeim wrote 03/13/2018 at 18:15 point

You can just describe the difference and limitations. They will understand ;-)

I can't, I don't know any. I suggest creating an update method to upload program through the network. (Or online script editing maybe on an ESP-hosted webpage?) You would need the serial only when there's some serious issue or you want an unusual extra feature. But then you press that button/short the jumper.

For example MongooseOS has some very convenient features. I didn't try all the related ones yet.

  Are you sure? yes | no