1) Must be cheap $12 - $15 for low volume, and components easy to find.
2) Small so the sensor can be used in a variety of places
3) Low power, and supply power to the sensor
4) plug & play (eg. DHCP), web accessible (HTTP Server)
5) Easy to program and change (no flashing, no complex language to learn)
6) Power over Ethernet, using 802.3af standards
What did I end up with:
1) Component sourced from Aliexpress.com. As I don't live in the US, the low volume site of Alibaba.com, Aliexpress, is a massive electronics parts bazaar, which has a huge range at excellent prices (although shipping is slow). I wanted this project to see how practical it was to use Alibaba for parts sourcing. I did end up with a couple of parts from RS Components because they were either not available on Aliexpress or cheaper, but 90% are from Aliexpress.
2) Microchip PIC (as I'm familiar with PICs) with integrated Ethernet MAC/PHY (10Base-T) PIC 18F66J60
3) Used this project to learn & use Kicad for the schematic & PCB. I used the new CERN push and shove router version and that made things a LOT easier (although the learning curve for Kicad wasn't particularly short...)
3) Power over Ethernet was a lot harder than I thought, there are a number of considerations (eg. selecting the right RJ45 magjack) and added a lot of complexity & cost to the project. However I persevered and found a decent chip from Silicon Labs that integrates the 802.3af PD with a switcher to convert the 48v from PoE to 3.3v for the PIC.
4) To power the sensor I initially wanted to use the PIC PWM to drive a MOSFET as a switcher to create a variable voltage for the sensor, however the switcher in the Silicon Labs Si3402 is a little unorthodox and switches the negative rail (PoE is -48v), so using another switcher which also switched the negative rail would mean the grounds would not be common - not very usable (I need to revisit this concept at a later point as it there may be other options). I ended up using the 3.3v output of the Si3402 switcher to boost the voltage up to either 5v or 12v (selectable). Not the most efficient but a sensor usually will draw only a small amount of current - the PIC has quite a current draw, about 250mA due to the Ethernet module, and a sensor would typically use much less, so boosting the 3,3v doesn't hurt efficiency too much.