# Proto Wired Ethernet Spark

**URL:** <https://community.particle.io/t/proto-wired-ethernet-spark/6624>\
**Category:** Hardware\
**Created:** [August 26, 2014, 9:35am UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624 "2014-08-26T09:35:47Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![cyberdam](https://avatars.discourse-cdn.com/v4/letter/c/9e8a1a/32.png) [@cyberdam](https://community.particle.io/u/cyberdam)\
**Post date:** [August 26, 2014, 9:35am UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/1 "2014-08-26T09:35:47Z")

</div>

Hello there

This is a cover of several posts on the support of Ethernet.  
I started leaning me on the subject.  
I developed two maps:

- One with WiFi and Ethernet, ARM with 48k of RAM (dual release)
- Other than the Ethernet (version ethernet)

If it interested, I have a map of each unassembled.

I’m trying to validate the Hard Part Wifi and then Ethernet (RJ45 connector I expected).

But I have not found the same button (MODE, RESET), if the team can give me that would be cool 🙂

The hard level, here are the details:  
The W5100 is connected to the same SPI as the CC3000

- Version ethernet  
W5100-CS: PB12 (pin 25)  
W5100-INT: NC

- Dual Version  
W5100-CS: PC1  
W5100-INT: PC0

If there are people willing to try to bring the bookstore on the W5100 spark let me know 🙂

Sorry for my English, it is the google translation

++

---

<div class="post-metadata">

**Author:** ![mdma](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/mdma/32/1924_2.png) [@mdma](https://community.particle.io/u/mdma)\
**Post date:** [August 26, 2014, 12:15pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/2 "2014-08-26T12:15:55Z")

</div>

When you add a 3rd device to the SPI bus, the SPI arbiter code should be modified to allow the 3rd device access. See the code in [spi\_bus.c](https://github.com/spark/core-common-lib/blob/master/SPARK_Firmware_Driver/src/spi_bus.c), and also where this is used by the CC3000 and the sFLASH api.

---

<div class="post-metadata">

**Author:** ![cyberdam](https://avatars.discourse-cdn.com/v4/letter/c/9e8a1a/32.png) [@cyberdam](https://community.particle.io/u/cyberdam)\
**Post date:** [August 26, 2014, 12:40pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/3 "2014-08-26T12:40:44Z")

</div>

ok, it is noted, thank you  
But I did not touch the source code.

---

<div class="post-metadata">

**Author:** ![mdma](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/mdma/32/1924_2.png) [@mdma](https://community.particle.io/u/mdma)\
**Post date:** [August 26, 2014, 12:42pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/4 "2014-08-26T12:42:08Z")

</div>

Without chaging the code, there is a chance that your W5100 and either the CC3000/sFLASH will attempt to access the SPI bus as the same time, causing the data on the bus to be corrupted.

---

<div class="post-metadata">

**Author:** ![cyberdam](https://avatars.discourse-cdn.com/v4/letter/c/9e8a1a/32.png) [@cyberdam](https://community.particle.io/u/cyberdam)\
**Post date:** [August 26, 2014, 12:54pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/5 "2014-08-26T12:54:42Z")

</div>

yes I understand, but I’m still installing the card (I miss the button and the RJ45 connector)

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [August 26, 2014, 2:37pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/6 "2014-08-26T14:37:50Z")

</div>

My advice would be to work on the W5100-only version first, because you can remove the WiFi code and it’s RAM usage, as well as not worry about SPI-bus coexistence.

I see you have already found the other threads covering this topic and the 3 people that have expressed an interest working on such a beast (myself included.)

---

<div class="post-metadata">

**Author:** ![cyberdam](https://avatars.discourse-cdn.com/v4/letter/c/9e8a1a/32.png) [@cyberdam](https://community.particle.io/u/cyberdam)\
**Post date:** [August 26, 2014, 3:38pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/7 "2014-08-26T15:38:26Z")

</div>

what would be nice is to have a git repository for an ethernet version ca be easier for the dev of W5100?  
What do you think the team?

++

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [August 26, 2014, 3:42pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/8 "2014-08-26T15:42:22Z")

</div>

Sure - first one with content gets to create a development branch.

---

<div class="post-metadata">

**Author:** ![niddin](https://avatars.discourse-cdn.com/v4/letter/n/aca169/32.png) [@niddin](https://community.particle.io/u/niddin)\
**Post date:** [March 12, 2015, 10:27pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/9 "2015-03-12T22:27:31Z")

</div>

Any movement on this? I’d still like to see an easy path for an ethernet supported version, because one of the great things about the core isn’t just the wifi but the environment. I _could_ switch to an RPi, but all I need is a Core/Photon with ethernet so I can cover environments where wifi is restricted, and then I could keep it all in the spark cloud.

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [March 12, 2015, 10:35pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/10 "2015-03-12T22:35:54Z")

</div>

Actually, I put my initial W5100 work on hold because the photon needs to implement a full TCP/IP stack, and hence could sit atop a STM32F207 instead of the STM32F205 used in the photon. The '207 has a built-in ethernet interface, and so would be cheaper, smaller and simpler than the W5100 design.

The firmware repository is not opened up to the public yet, and I am still learning my way around it myself so I have not had a chance to scope the effort involved in adpating the firmware to talk to the on-chip MAC instead of the broadcom wifi chipset.

Film at 11. Like you I think that a wired core (especially with POE) has a value proposition.

---

<div class="post-metadata">

**Author:** ![harrisonhjones](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/harrisonhjones/32/4132_2.png) [@harrisonhjones](https://community.particle.io/u/harrisonhjones)\
**Post date:** [March 12, 2015, 10:39pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/11 "2015-03-12T22:39:57Z")

</div>

@niddin: Once I finish up a project of mine, hopefully at the end of march or early april, I plan on working on an ethernet version of the core (hence my forums topics asking about HAL and gcc compilations of the firmware). Perhaps we could collaborate?

@AndyW: I would love a POE version. Perhaps we could start w/ Mode B which provides power on the unused ethernet pairs and then look into Mode A

---

<div class="post-metadata">

**Author:** ![eely22](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/eely22/32/4982_2.png) [@eely22](https://community.particle.io/u/eely22)\
**Post date:** [March 12, 2015, 10:47pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/12 "2015-03-12T22:47:15Z")

</div>

If you’re looking for help, I’m in too.

I quickly looked around for Ethernet MCU solutions as a non-wireless gateway for SparkLE/Bluz. Put it on hold due to other priorities, but agree with @AndyW that the STM32F207 is the way to go. Seemed like the best option I found.

I would be very interested in helping set this up, I really believe the more HW options that Spark gets to, the more powerful the overall platform. Let me know if you get started.

---

<div class="post-metadata">

**Author:** ![harrisonhjones](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/harrisonhjones/32/4132_2.png) [@harrisonhjones](https://community.particle.io/u/harrisonhjones)\
**Post date:** [March 12, 2015, 10:51pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/13 "2015-03-12T22:51:41Z")

</div>

Interesting. An STM32F2 looks interesting. I’ll look into that. I was looking at the ENC28J60 module since they are super cheap and I already have a few

[Edit] I can’t read posts apparently

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [March 12, 2015, 11:06pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/14 "2015-03-12T23:06:24Z")

</div>

Well, if everyone interested can purchase the same hardware, that would be a good start.

I recommend (and already have) the [Olimex '207 prototype board](http://www.mouser.com/ProductDetail/Olimex-Ltd/STM32-P207/?qs=sGAEpiMZZMtIClGg9PMp45LbrjLrPWhVyODsi%2fHHlSg%3d), I suggest this as the first test & development vehicle, and we can worry about spinning a more compliant footprint later.

Now the spark firmware developers are embracing the STM32F2xx series, and implementing a protocol stack, I see zero reason to work with lower integration components such as the ENC28J60 or W5100.

---

<div class="post-metadata">

**Author:** ![harrisonhjones](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/harrisonhjones/32/4132_2.png) [@harrisonhjones](https://community.particle.io/u/harrisonhjones)\
**Post date:** [March 12, 2015, 11:07pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/15 "2015-03-12T23:07:29Z")

</div>

I agree. I was planning on playing around with the ENC28J60 simply because I already had it.

I’ll look into the Olimex board.

[Edit] Good lord I’m cheap. That board is expensive ☹ Gonna have to pull a few extra hours

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [March 12, 2015, 11:08pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/16 "2015-03-12T23:08:51Z")

</div>

Believe me, it is pennies on the dollar if you have any respect at all for your time.

---

<div class="post-metadata">

**Author:** ![harrisonhjones](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/harrisonhjones/32/4132_2.png) [@harrisonhjones](https://community.particle.io/u/harrisonhjones)\
**Post date:** [March 12, 2015, 11:12pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/17 "2015-03-12T23:12:15Z")

</div>

I have no doubt. Though I’m out of school I am unfortunately still in “Poor College/Graduate Student” mode 🙂

[Edit: Spelling things correctly is not something I am good at apparently]

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [March 12, 2015, 11:17pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/18 "2015-03-12T23:17:19Z")

</div>

‘unfortunately’ - you keep using that word, I do not think it means what you think it means [[\*]](https://www.youtube.com/watch?v=G2y8Sx4B2Sk)

---

<div class="post-metadata">

**Author:** ![eely22](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/eely22/32/4982_2.png) [@eely22](https://community.particle.io/u/eely22)\
**Post date:** [March 13, 2015, 9:59pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/19 "2015-03-13T21:59:31Z")

</div>

HW purchased, I should have the board early next week. I guess whoever has the chance first can set up a repository to work from, then the fun can begin!

---

<div class="post-metadata">

**Author:** ![AndyW](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/andyw/32/686_2.png) [@AndyW](https://community.particle.io/u/AndyW)\
**Post date:** [March 13, 2015, 10:25pm UTC](https://community.particle.io/t/proto-wired-ethernet-spark/6624/20 "2015-03-13T22:25:36Z")

</div>

I will see if I can find a way to clone the currently private repo and remove the Broadcom bits that are still under NDA, if it looks like the code release process with Broadcom is going to become a pacing factor.

[Next page](https://community.particle.io/t/proto-wired-ethernet-spark/6624.md?page=2)
