element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Smart Security and Surveillance
  • Challenges & Projects
  • Design Challenges
  • Smart Security and Surveillance
  • More
  • Cancel
Smart Security and Surveillance
Forum Using the Particle Ethernet FeatherWing with the MAX32630FTHR (Don't Forget to Set)
  • News
  • Projects
  • Forum
  • DC
  • Leaderboard
  • Files
  • Members
  • More
  • Cancel
  • New
Join Smart Security and Surveillance to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 1 reply
  • Subscribers 46 subscribers
  • Views 63 views
  • Users 0 members are here
Related

Using the Particle Ethernet FeatherWing with the MAX32630FTHR (Don't Forget to Set)

Alistair
Alistair 13 days ago

For my project I am using the Particle Ethernet FeatherWing to allow the MAX32630FTHR to communicate with the local network and enable my alarm.

The Particle Ethernet FeatherWing is based around the WIZnet W5500 and under normal circumstances will work with the standard Arduino Ethernet library version 2.0.0+. This is however not compatible with the older Maxim core. It took a while but I worked round the problem, and here is my solution just in case it is helpful to someone else.

Before we get into the software, we need to add some header pins to the MAX32630FTHR. My advice is to loosely place the pins in the FeatherWing and quickly solder on the corner pins. After that the header pins are held in place and the rest of the pins will be so much easier to solder.

image

My work around with the Arduino IDE 1.8 it to this is to use the older Ethernet2 library, that is a drop in replacement to the version 1 Ethernet library but supports the W5500. This addresses most of the issues, but we still need to copy across a few files to get this to work. Here are the setup instructions...

First install the Ethernet2 library from the Arduino library manager (Sketch->Include Library->Manage Libraries…).

Once installed we need to copy the following files from the Arduino AVR core "%homepath%\Documents\ArduinoData\packages\arduino\hardware\avr\1.8.6\cores\arduino" to the Ethernet2 library directory "%homepath%\Documents\Arduino\libraries\Ethernet2\src".

  • Client.h
  • Server.h
  • IPAddress.h
  • IPAddress.cpp
  • Udp.h

I will note that although it would make more sense to copy the missing files to the Mamim core ("%homepath%\Documents\ArduinoData\packages\Maxim\hardware\arm\1.1.5\cores\arduino") and not the Ethernet2 library, but doing this uncovers yet more issues that need to be addressed, so lets take the easy road on this occasion.

So after this modification, and including Ethernet2.h instead of Ethernet.h our standard Ethernet applications will compile but not run. We still need to tell the library what pin to use in our setup code. From the schematic we can see the chip select is on pin 22 if the featherwing connector (traditionally GPIO10) and that is mapped to pin 7 on CON12 (P5.4 /SDIO 2) according to the MAX32630FTHR schematic.

So, in English, just add “Ethernet.init(P5_4);” to setup() before calling “Ethernet.begin”.

And that is it. Here is a cut down version of the WebClient example to set with…

#include <SPI.h>
#include <Ethernet2.h>

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
char server[] = "www.google.com";

EthernetClient client;

void setup() {

Serial.begin(115200);
Serial.println("Starting...");

Ethernet.init(P5_4);
Ethernet.begin(mac);

delay(1000);
Serial.println("connecting...");

if (client.connect(server, 80)) {
Serial.println("connected");

client.println("GET /search?q=arduino HTTP/1.1");
client.println("Host: www.google.com");
client.println("Connection: close");
client.println();
}
else {
Serial.println("connection failed");
}
}

void loop()
{
if (client.available()) {
char c = client.read();
Serial.print(c);
}

if (!client.connected()) {
Serial.println();
Serial.println("disconnecting.");
client.stop();
while (true);
}
}

  • Sign in to reply
  • Cancel
  • BigG
    BigG 13 days ago

    Nice update.

    The standard Ethernet library (https://docs.arduino.cc/libraries/ethernet/) is regularly kept up to date - I see it was last updated on was 16th March.

    I used this library with my MAX32360FTHR board once I had added and modified those header files. You should have no problems with it. I would certainly recommend switching.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube