User Tools

Site Tools


m0dul-ethernet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
m0dul-ethernet [2012/04/24 10:45] – created secm0dul-ethernet [2012/06/09 21:32] (current) equinox
Line 5: Line 5:
 Main reason to do this is to get the received Openbeacon data from the r0ket to a central location in a nice and easy way. Main reason to do this is to get the received Openbeacon data from the r0ket to a central location in a nice and easy way.
  
-====== Alternate Options ======+===== Alternate Options =====
 There are of course other options to do this: There are of course other options to do this:
  
Line 15: Line 15:
   * Wifi: Own Wlan would clash in crowded locations and might not reach far enough. Normal Participant wlan is possibly not stable enough. Also: running Wlan from r0ket sounds complicated unless there are all-in-one chips.   * Wifi: Own Wlan would clash in crowded locations and might not reach far enough. Normal Participant wlan is possibly not stable enough. Also: running Wlan from r0ket sounds complicated unless there are all-in-one chips.
  
-====== Ethernet Chip ======+====== Hardware ====== 
 +Plans on how to do it on the hardware side. 
 + 
 +===== Ethernet Chip =====
 Two main options. Two main options.
  
Line 22: Line 25:
   * Con: limited space means we will probably only get UDP, and maybe DHCP. Enough for our logging stuff, but difficult for other projects, only 10baseT   * Con: limited space means we will probably only get UDP, and maybe DHCP. Enough for our logging stuff, but difficult for other projects, only 10baseT
   * [[https://secure.reichelt.de/USB-CAN-BUS-Controller/ENC-28J60-I-SP/index.html?;ACTION=3;LA=444;GROUP=A316;GROUPID=2946;ARTICLE=89340;START=0;SORT=artnr;OFFSET=16|ENC28J60]] 2,60€ - 2,95€ bei Reichelt   * [[https://secure.reichelt.de/USB-CAN-BUS-Controller/ENC-28J60-I-SP/index.html?;ACTION=3;LA=444;GROUP=A316;GROUPID=2946;ARTICLE=89340;START=0;SORT=artnr;OFFSET=16|ENC28J60]] 2,60€ - 2,95€ bei Reichelt
 +    * Please do not use this chip. It's a pain to work with, doesn't do Autonegotiation, loses packets and has weird unfixed erratas. --equinox
 +  * [[http://www.micrel.com/_PDF/Ethernet/datasheets/ksz8851snl_ds.pdf|Micrel KSZ8851SNL]] [[http://de.futureelectronics.com/de/technologies/semiconductors/comm-products/switch/Seiten/3385572-KSZ8851SNL%20TR.aspx?IM=0|part source: Future Electronics]]
 +    * considerably simpler buffer/queue management than the ENC28J60
 +    * supports 100base-TX & Autonegotiation
 +    * supports Auto-MDIX (Crossover)
 +    * QFN32 package
 +    * ca. 3€
  
 Use a "smart" Ethernet chip which has a full TCP/IP implementation. Use a "smart" Ethernet chip which has a full TCP/IP implementation.
Line 30: Line 40:
 -> So far it looks like the "smart" variant is the way to go. -> So far it looks like the "smart" variant is the way to go.
  
-====== Power ======+===== Power =====
 It would be nice to be able to (optionally) power this via [[https://en.wikipedia.org/wiki/Power_over_Ethernet|POE]]. It would be nice to be able to (optionally) power this via [[https://en.wikipedia.org/wiki/Power_over_Ethernet|POE]].
  
 Again two options here: Again two options here:
  
-"simple" homegrown POE (just use the unused pairs to send Power) +  * "simple" homegrown POE (just use the unused pairs to send Power) 
-"normal" POE (802.3af or 802.3at) (.af sounds simple - provides for ~ 200mA @ 48V - enough for us)+    * **homegrown/uncontrolled PoE will be instantly refused by the NOC.**  Frying an 20k€ Switch by misplugging a cable is not an acceptable risk.  This applies for all uses that touch the building infrastructure -- even if it's not supposed to be linked to a "big" switch you can always misplug something. 
 +  * "normal" POE (802.3af or 802.3at) (.af sounds simple - provides for ~ 200mA @ 48V - enough for us)
  
 according to Wikipedia, the injector decides wether to provide power via the "unused" or the "data" wires, which means more work for us... according to Wikipedia, the injector decides wether to provide power via the "unused" or the "data" wires, which means more work for us...
Line 44: Line 55:
 ===== RJ45 Connector ===== ===== RJ45 Connector =====
    
-As far as I can tell, we *must* decouple the ethernet lines from our ciruit. Doing this sounds like no fun[tm].+As far as I can tell, we **must** decouple the ethernet lines from our ciruit. Doing this sounds like no fun[tm].
  
 There are RJ45 Connectors with "integrated magnectics" which do this for us. But they then need to be POE-Capable which appears to be quite expensive. There are RJ45 Connectors with "integrated magnectics" which do this for us. But they then need to be POE-Capable which appears to be quite expensive.
Line 51: Line 62:
  
 "simple" RJ45 Connectors appear to be at about 0,90€  "simple" RJ45 Connectors appear to be at about 0,90€ 
 +
 +-> Still unclear if there are no other options.
 +
 +Discrete Magnetics:
 +  * [[http://www.epcos.com/inf/30/ds/lan_mod/B78476A8245A003.pdf|Epcos B78476A8245A3]] [[http://de.futureelectronics.com/de/technologies/passives/transformers/signal-magnetic-transformers/lan/Seiten/5173968-B78476A8245A3.aspx?IM=0|source: Future Electronics]] 100MBit PoE
 +
 +Recommended reading for magnetics selection: http://www.ceetus.com.cn/paper/VSC8201.pdf (Vitesse magnetics design note, cannot find original on Vitesse's website anymore)
  
 ===== Connection to r0ket ===== ===== Connection to r0ket =====
  
-Over m0dulbus. The Ethernet chips above all speak SPI.+Over m0dulbus. All the Ethernet chips above do SPI. 
 + 
 +====== Software ====== 
 +Nothing done yet. Need to decide on the Hardware first 
 + 
 +Please implement [[http://en.wikipedia.org/wiki/Link_Layer_Discovery_Protocol|LLDP]] and you will make the NOC happy :) 
 +(Possible on all of the chips, simple ethernet protocol.) 
 + 
 +===== Openbeacon Reader ===== 
 +The openbeacon reader protocol we want to emulate is fairly known. 
 +Check [[tracking]] or [[tracking:reader]] for more details.   
  
  
  
m0dul-ethernet.1335257103.txt.gz · Last modified: by sec

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki