Jump to content
Sign in to follow this  
javakys

[Energia Library] Ethernet using WIZ820io

Recommended Posts

Hi All,

 

I added ethernet library to Energia.

Though Arduino library supports ethernet function, Energia doesn't provide any library for ethernet yet.

So, I tried to add ethernet library for arduino onto Energia IDE.

 

Finally, I did it and examples of ethernet library for arduino work well.

But as MSP4302553 has less SRAM memory than arduino Uno, you have to make some serial.print() sentence as comment.

 

Anyway, if anybody want to update this ethernet library, feel free do that.

 

As .zip file is too big, I'll post it on Github and share to all of you as soon as possible.

Hi All,

 

I registered new Energia including Ethernet Library and examples on Github.

Please refer to https://github.com/javakys/Energia_Ethernet_Library_Included.git

 

Enjoy it.

 

 

Thank you.

 

Thank you. :smile:

Edited by bluehash
Added github link

Share this post


Link to post
Share on other sites

Hi All,

 

I use MSP-EXP430G2 ver 1.5 with M430G2553.

 

As for pin description of WIZ820io, refer to http://www.wiznet.co.kr/sub_modules/en/product/Product_Detail.asp?cate1=5&cate2=42&cate3=0&pid=1161#tab

 

This is pin map between MSP-EXP430G2 and WIZ820io.

 

MSP Launch pad                 WIZ820io

==============================

J1  VCC         <-------------->      VCC

J1  P1.5         <-------------->      SCLK

J1  P2.0         <-------------->       nSS

J2  GND         <-------------->      GND

J2  RST          <-------------->      nRESET

J2  P1.7          <-------------->      MOSI

J2  P1.6          <-------------->      MISO

 

 

Share this post


Link to post
Share on other sites

Hi All,

 

I updated examples for Ethernet library.

As Many examples didn't work well because of the lack of RAM on MSP430.

So, I eliminated many examples from github, only two examples, "charServer" and "UDPSendReceiveString", remain with small update.

What I updated is making majority of Serial.print() sentences be comment.

 

Frankly speaking, when I test Ethernet library on Arduino platform, I felt SRAM inside ATmega328 is too small though it is 2K Bytes.

MSP430 has only 0.5K bytes SRAM at most(in case of 2553), It makes many examples working well on Arduino be hangup during execution.

 

At first, I'd like to use all examples from Arudino without any change and with change only for Energia IDE.

But now I think it is impossible to do that because of the lack of memory.

 

So, I'll consider how to solve this problem.

Candidate 1 is to use external memory.

Candidate 2 is to make new examples totally.

 

If anyone has some idea, then give me your feedback,

 

Thank you.

Share this post


Link to post
Share on other sites

Hi All, 

 

Frankly speaking, I couldn't find the solution out to solve the lack of memory.

But TI announced new launchpad having bigger MCU, MSP430F5529, which consists of 128KB Flash and 8KB RAM.

 

I ordered it online and got it last week.

 

I downloaded new energia IDE from www.energia.nu

I updated the new energia IDE(energia-0101E0010-windows) to support TCP/IP connectivity.

 

Finally, I got all examples from arduino run successfully.

 

Now, I'll post what I did step by step from next post

 

Thank you.

 

javakys

Share this post


Link to post
Share on other sites

Hi,

 

To test ethernet connectivity, I prepared two boards, MSP-EXP430F5529LP and WIZnet's WIZ550io.

I'm convinced that you already know MSP-EXP430F5529LP.

For WIZ550io, refer to http://wizwiki.net/wiki/doku.php?id=products:wiz550io:allpages

 

This is a module which supports TCP/IP functions and has ethernet RJ45 jack.

It provides SPI bus for interface with host MCU.

 

Arduino ethernet examples are working on the platform using WIZnet's products, so we can run all examples from arduino with this module.

 

How to connect the new launchpad with WIZ550io

 

<Pin Map>

 

new MSP Launch pad                 WIZ550io

==============================

3V3               <------------------->      VCC

P3.2 (SCLK)  <------------------->      SCLK

P2.7              <------------------->       SCS

GND              <------------------->      GND

RST               <------------------>      nRESET

P3.0 (MOSI)   <------------------>      MOSI

P3.1 (MISO)   <------------------>      MISO

Share this post


Link to post
Share on other sites

@@javakys -

Any reason you're not using the RDY and nINT connections? And why tie nRESET to the LP RST line?

Wouldn't it be convenient if the LP had status indicators and could reset the device without needing itself reset?

 

Just curious. :smile:

Share this post


Link to post
Share on other sites

@@abecedarian

 

Arduino Ethernet library doesn't use interrupt mode and it operates in only polling mode, so we don't need nINT signal.

And, after internal initialization of WIZ550io, RDY signal will become HIGH.

You can connect RDY pin to one of launchpad GPIOs and monitor whether its value become HIGH.

And you can just wait for a while, at most 100ms, after booting without checking RDY pin.

To monitor RDY pin is up to you. :grin:

 

And RST signal is the same.

As you know, when you press RST button, RST signal asserted to LOW.

If you connect RST pin of LP to nRESET of WIZ550io, then WIZ550io reinitializes and your application on Launchpad reboots when you press RST button.

If you don't want it, you can put that pin disconnected.

 

No problem.

Share this post


Link to post
Share on other sites

Hi RobG,

 

Did you make W5500 BP?

Wonderful!

 

I think my energia library will run on your W5500 BP if you match SPI signals correctly.

In order to use W5500 instead of WIZ550io, you have to change one option in W5100.h of ethernet library from WIZnet

 

 

//#define W5100_ETHERNET_SHIELD // Arduino Ethenret Shield and Compatibles ...

//#define W5200_ETHERNET_SHIELD // WIZ820io, W5200 Ethernet Shield 
#define W5500_ETHERNET_SHIELD   // WIZ550io, ioShield series of WIZnet
 
#if defined(W5500_ETHERNET_SHIELD)
#define WIZ550io_WITH_MACADDRESS // Use assigned MAC address of WIZ550io
#include "w5500.h"
#endif

 

make this sentense, " #define WIZ550io_WITH_MACADDRESS // Use assigned MAC address of WIZ550io "  comment.

 

It' All what you have to do, I think.

 

Thank you,

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...