the connection between the pro mini and the USR-ES1 is done without a level shifter
MISO -> D12
MOSI -> D11
SCLK -> D13
SCS -> D10
I tried a number of libraries (with their examples) and I cannot manage to make the ethernet shield working : The serial monitor says ( almost invariable in all examples that their is no hardware )
Can you help with some precise directions or a link to a good tutorial ?
Thank you in advance !
I really appreciate the help
I know you probably do not like to hear this but you said
bgrigoriu:
I am an absolute newbie
So, have a look at a board like the Arduino Nano 33 IoT or an ESP32. Then you can focus on learning everything about WiFi and web servers, you have a board that is working out-of-the-box, a good library, you get documentation and people here in the forum are more likely to have the same board and therefore can provide better help.
On top of it you get a 32-bit processor and more flash and RAM memory. After all it is 2021.
to Juraj:
Yes, it is a very shiny truck, provides more space, has a powerful and efficient engine, it costs less than the UNO hatchback and has many additional features.
I also understand that some people love their old-timer hatchbacks and enjoy a challenge to use them for jobs they were not designed for. I have some myself.
Klaus_K:
I know you probably do not like to hear this ......
Thanks for your opinion but I can perfectly know and accept to hear that I now very little (for the moment at least) but I am ready and work hard to learn.
Concerning the changing of platform, I know that more beautiful things exists in the world, many I surely dont know about but for this precise matter I have to work with what is given for various reasons (this is a on going project involving a team, there are space concerns and some of programming is done at low level registry/interrupt manipulation which is not portable).
to Juraj:
That is exactly what I have done but it seems that the sketch does not recognizes the hardware ( which is new and assume working perfectly).
The first hypothesis is that I really doing something (stupidly) wrong. So I in search for a low level tutorial.
Since I started <1month ago i am finding tis normal. had the same issue with working with an ESP 01 and it is fine now.
Please feel free to suggest anything I could do except giving up.
Thanks again !
bgrigoriu:
to Juraj:
That is exactly what I have done but it seems that the sketch does not recognizes the hardware ( which is new and assume working perfectly).
The first hypothesis is that I really doing something (stupidly) wrong. So I in search for a low level tutorial.
Since I started <1month ago i am finding tis normal. had the same issue with working with an ESP 01 and it is fine now.
Please feel free to suggest anything I could do except giving up.
Thanks again !
is it a problem to copy here the exact output of the sketch?
how do you power the module?
what Arduino do you have?
Juraj:
is it a problem to copy here the exact output of the sketch?
how do you power the module?
what Arduino do you have?
Hi,
I am powering with a 3.3V from a power module as this one: https://fr.aliexpress.com/item/32657080621.html?spm=a2g0s.9042311.0.0.27426c375G4dwv
I am using an Pro mini 5V 16 Mhz ( powered at 5V) with a common ground with the USR-ES1.
It is not a problem to copy the output ( that's in my range of competence). Just, working from 5h30 to 7:00PM. Will do it this evening.
On the Webserver library sketch (from the ethernet) I was using, after de commenting the line //Ethernet.init(10); in the setup section
it responds:
Ethernet shield was not found. Sorry, can't run without hardware.
What I understand that there is any response at the ethernet begin command.
I will do the same with Webclient this evening .
Thanks a lot for the help.
Juraj:
try to wire the reset pin too. reset of the module to reset of the Mini
Ok Thanks , Until now I did only connect the SPI bus (4 wires plus GND and 3.3V). However on bottom of the adapter the red led is lit( steady) and on the the RJ 45 connector the right oraneg led is blinking when cable is in ( straight cable if I understood well ?)
the 3.3 V pin of Mini could have a problem to deliver enough current for the W5500 when it transmits. it would be better to use a separate power supply. Arduino Ethernet shields use 5 V pin and have voltage conversion IC.
Hi,
I am not sure that my pro mini ( Chinese clone) has à 3.3V. The uno and Nano have one but it is limited to 150 and 50mA respectively which is largely insufficient.
On the other side my 16MHz, 5V pro mini does not grumble at all if feed with 3.3v; I also tried to have both on 3.3V and again no response from the USR ES1.
Do you know something that i can check (can access an oscilloscope if needed ) to surely now that the W5500 works well ?
sorry I somehow skipped the line about the breadboard power supply in your replay.
did you try to wire the reset pins together?
the green LED on connector shows that the W5500 is active.
check the wiring again. or if you can make a good photo of the wiring you can attach it to post
First of all thank you for the help ! The problem is solved.
It works and the issue was stupid. The Pro micro had an issue (bad contact) with one of the SCI pins. Did not have the time to put an oscilloscope on it but I will. The funny thing it worked for all other experiments steps which did involve the I2C and the ADC steps.. I used at least five times ( some involving soldering/desoldering on a PCB).
You realy helped me to remember I have a brain and taken systematically it worked.
Now I have another simple question:
I need to make a "simple" webserver that either:
show a page with a number ( about 20) variables along with a minimal menu that allows to modify each of them: like listing the variables and asking which variable to modify: reading a number then asking the value (numeric) for that parameter and write it down in memory/EEprom
OR
responding to queries on the Ethernet interface ( Get parameter and write parameter)
OR BOTH (best)
Can you tell me which library give the MOST COMPACT CODE. I have very little memory left for both flash and RAM.
Or at list of libraries that are known to work with the W5500 in order to test each of them.
I have tried to upgrade on an EVERY but is to much work because it relies heavily on using ADC during interupts and it was easy to recicle a lot of work done by others on the ATMEGA328.
bgrigoriu:
Thanks for your opinion but I can perfectly know and accept to hear that I now very little (for the moment at least) but I am ready and work hard to learn.
I did not say knowing very little is a bad thing. I know very little. You have the right attitude, and it sounds like soon you will know even better how little you know. The more I learn the more I realize how much more there is to learn.
bgrigoriu:
... but for this precise matter I have to work with what is given for various reasons
Fair enough. Switching mid project requires a serious problem that cannot be solved otherwise.
bgrigoriu:
... some of programming is done at low level registry/interrupt manipulation which is not portable).
It is good to understand the basics.
If you are looking for a future in embedded development, I believe this type of programming has only limited use. Even on small microcontrollers there will be a lot of complex software in the future for machine learning, sensors fusion, communication stacks, RTOS, multi-processor interaction ... If that is something that interests you, I would spend more time with that, than with 8-bit microcontrollers and register manipulation. (I know you have no choice with your current project.)
bgrigoriu:
Can you tell me which library give the MOST COMPACT CODE. I have very little memory left for both flash and RAM.
How much memory do you have left?
Do you know what your current memory is used for e.g., which libraries are used and how much is your code and data? Maybe there is some potential to make your code smaller.
bgrigoriu:
Can you tell me which library give the MOST COMPACT CODE. I have very little memory left
This likely to be just tinkering around the edges. Since you have a Pro Mini, you be better off biting the bullet and getting a Pro Mega now, which removes any problems with recycling code with room to spare. Having said that, the Every is still an Arduino, and I would not have thought it was such a problem to use.
Do you know what your current memory is used for e.g., which libraries are used and how much is your code and data? Maybe there is some potential to make your code smaller.
Hi,
First of all thanks for the advices and encouragements/support. Concerning future developements I do not think that it is in my reach. ( can talk later)
For the memory the situation is now:
Basic function and minimal (serial interface) 20340 bytes. Some improvements can be done (at firsts glance al least 200 bytes maybe a little bit more, sacrificing readability) BUT here I need to test and debug thoroughly.
Left to be implemented:
an Oled text only interface (just printing in loop 6 parameters in two successive screens, refresh every second or so). Already done by someone else volume 4200 bytes (no experience here if can be made smaller)
the ethernet interface. identical to the serial one (printing 20 . Already implemented on a ENC28J60 where it take 5800 bytes.
I would still need to implement a temperature reading routine
So globally I am over the max of 30720.but expect to fit in without renouncing at important things.
SO the question is Can I make the Web interface smaller than 5800 ? and with which tools.
Nick_Pyner:
This likely to be just tinkering around the edges. Since you have a Pro Mini, you be better off biting the bullet and getting a Pro Mega now, which removes any problems with recycling code with room to spare. Having said that, the Every is still an Arduino, and I would not have thought it was such a problem to use.
Hi,
Thanks for the suggestion. I do not know the ATMEGA 2560 chip. Is it much diff from the 328 series ? O lot of reprogramming is needed ( low level int routines and ADC during interrupts, along with port manipulation is used).
a simple webserver can be implemented with EthernetServer, but the problem with HTTP is that it uses strings which will consume flash storage. see the WebServer example of the Ethernet library