Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.
-
To expand, there are two types of hostnames often used: a mDNS hostname and a hostname option in the DHCP request.
The reason MY_HOSTNAME doesn't have any effect is that MY_HOSTNAME is only supported by ESP8266 and ESP32. I'll amend the documentation to include that information.
Some additional info: https://forum.arduino.cc/index.php?topic=622543.0
@mfalkvidd , thank you.
no problem, host name can be assined by dhcp.
problem is that commenting out the ip address, letting dhcp take care produces:
$ arp
Address HWtype HWaddress Flags Mask Iface
192.168.80.115 (incomplete) enp2s0@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 what type of hostname are you referring to?
hostname to identify itself@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
To expand, there are two types of hostnames often used: a mDNS hostname and a hostname option in the DHCP request.
The reason MY_HOSTNAME doesn't have any effect is that MY_HOSTNAME is only supported by ESP8266 and ESP32. I'll amend the documentation to include that information.
Some additional info: https://forum.arduino.cc/index.php?topic=622543.0
got it. -
@mfalkvidd , thank you.
no problem, host name can be assined by dhcp.
problem is that commenting out the ip address, letting dhcp take care produces:
$ arp
Address HWtype HWaddress Flags Mask Iface
192.168.80.115 (incomplete) enp2s0@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 what type of hostname are you referring to?
hostname to identify itself@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
To expand, there are two types of hostnames often used: a mDNS hostname and a hostname option in the DHCP request.
The reason MY_HOSTNAME doesn't have any effect is that MY_HOSTNAME is only supported by ESP8266 and ESP32. I'll amend the documentation to include that information.
Some additional info: https://forum.arduino.cc/index.php?topic=622543.0
got it. -
Pull request for documentation update: https://github.com/mysensors/MySensors/pull/1428
Updated documentation: https://ci.mysensors.org/job/MySensors/job/MySensors/job/PR-1428/3/execution/node/4/ws/MySensors/Documentation/html/group__GatewaySettingGrpPub.html#gabdbabf2e3d82fb5c9aa24caecb23a8af
-
@pw44 which machine are you running the arp command on? The router?
Is 192.168.80.115 the IP the router assigned to the MySensors gateway?@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 which machine are you running the arp command on? The router?
Is 192.168.80.115 the IP the router assigned to the MySensors gateway?my server (dnsmasq, dhcp server) - 192.168.80.4
adsl + router - 192.168.80.1mysensor gateway - 192.168.80.115 assigned by 192.168.80.4 (dhcp server)
with fixed ip address it worked, but i guess maybe udp is not active at mysensors gateway.
-
@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 which machine are you running the arp command on? The router?
Is 192.168.80.115 the IP the router assigned to the MySensors gateway?my server (dnsmasq, dhcp server) - 192.168.80.4
adsl + router - 192.168.80.1mysensor gateway - 192.168.80.115 assigned by 192.168.80.4 (dhcp server)
with fixed ip address it worked, but i guess maybe udp is not active at mysensors gateway.
-
@pw44 the dhcp communication uses udp of course, but after that the MySensors gateway will use tcp unless MY_USE_UDP is defined.
The gateway doesn't respond to icmp ping?
Next step would be to check the gateway's debug log.
@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 the dhcp communication uses udp of course, but after that the MySensors gateway will use tcp unless MY_USE_UDP is defined.
The gateway doesn't respond to icmp ping?
Next step would be to check the gateway's debug log.
if MY_USER_UDP is commented out, i understand that no UPD is enabled from start, correct?
enabling MY_USER_UDP requires #define MY_CONTROLLER_IP_ADDRESS 192, 168, 178, 254
and #define MY_CONTROLLER_URL_ADDRESS "my.controller.org"by enabling fixed ip, none of both is required, which is something not very clear for me.
-
@mfalkvidd said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 the dhcp communication uses udp of course, but after that the MySensors gateway will use tcp unless MY_USE_UDP is defined.
The gateway doesn't respond to icmp ping?
Next step would be to check the gateway's debug log.
if MY_USER_UDP is commented out, i understand that no UPD is enabled from start, correct?
enabling MY_USER_UDP requires #define MY_CONTROLLER_IP_ADDRESS 192, 168, 178, 254
and #define MY_CONTROLLER_URL_ADDRESS "my.controller.org"by enabling fixed ip, none of both is required, which is something not very clear for me.
-
@pw44 which controller are you using? Why do you want to use udp for the connection to the controller?
@mfalkvidd
no controller yet. i need to make the gateway at least be recognized by the network, either way.udp, for dhcp.
-
@mfalkvidd
no controller yet. i need to make the gateway at least be recognized by the network, either way.udp, for dhcp.
-
nothing is working :-(
// Enable debug prints to serial monitor #define MY_DEBUG // Enable and select radio type attached #define MY_RADIO_RF24 //#define MY_RADIO_NRF5_ESB //#define MY_RADIO_RFM69 //#define MY_RADIO_RFM95 // Enable gateway ethernet module type #define MY_GATEWAY_W5100 // W5100 Ethernet module SPI enable (optional if using a shield/module that manages SPI_EN signal) #define MY_W5100_SPI_EN 4 // Enable Soft SPI for NRF radio (note different radio wiring is required) // The W5100 ethernet module seems to have a hard time co-operate with // radio on the same spi bus. #if !defined(MY_W5100_SPI_EN) && !defined(ARDUINO_ARCH_SAMD) #define MY_SOFTSPI #define MY_SOFT_SPI_SCK_PIN 14 #define MY_SOFT_SPI_MISO_PIN 16 #define MY_SOFT_SPI_MOSI_PIN 15 #endif // When W5100 is connected we have to move CE/CSN pins for NRF radio #ifndef MY_RF24_CE_PIN #define MY_RF24_CE_PIN 5 #endif #ifndef MY_RF24_CS_PIN #define MY_RF24_CS_PIN 6 #endif // Enable UDP communication //#define MY_USE_UDP // If using UDP you need to set MY_CONTROLLER_IP_ADDRESS or MY_CONTROLLER_URL_ADDRESS below // Enable MY_IP_ADDRESS here if you want a static ip address (no DHCP) //#define MY_IP_ADDRESS 192,168,80,15 // If using static ip you can define Gateway and Subnet address as well //#define MY_IP_GATEWAY_ADDRESS 192,168,80,1 //#define MY_IP_SUBNET_ADDRESS 255,255,255,0 // Renewal period if using DHCP #define MY_IP_RENEWAL_INTERVAL 60000 // The port to keep open on node server mode / or port to contact in client mode #define MY_PORT 5003 // Controller ip address. Enables client mode (default is "server" mode). // Also enable this if MY_USE_UDP is used and you want sensor data sent somewhere. //#define MY_CONTROLLER_IP_ADDRESS 192, 168, 178, 254 //#define MY_CONTROLLER_URL_ADDRESS "my.controller.org" // The MAC address can be anything you want but should be unique on your network. // Newer boards have a MAC address printed on the underside of the PCB, which you can (optionally) use. // Note that most of the Arduino examples use "DEAD BEEF FEED" for the MAC address. #define MY_MAC_ADDRESS 0x00, 0x40, 0xFD, 0xEF, 0x35, 0x75 // Enable inclusion mode #define MY_INCLUSION_MODE_FEATURE // Enable Inclusion mode button on gateway #define MY_INCLUSION_BUTTON_FEATURE // Set inclusion mode duration (in seconds) #define MY_INCLUSION_MODE_DURATION 60 // Digital pin used for inclusion mode button #define MY_INCLUSION_MODE_BUTTON_PIN 3 // Set blinking period #define MY_DEFAULT_LED_BLINK_PERIOD 300 // Flash leds on rx/tx/err // Uncomment to override default HW configurations #define MY_DEFAULT_ERR_LED_PIN 7 // Error led pin #define MY_DEFAULT_RX_LED_PIN 8 // Receive led pin #define MY_DEFAULT_TX_LED_PIN 9 // Transmit led pin #if defined(MY_USE_UDP) #include <EthernetUdp.h> #endif #include <SPI.h> #include <Ethernet.h> #include <MySensors.h> void setup() { // Setup locally attached sensors } void presentation() { // Present locally attached sensors here } void loop() { // Send locally attached sensors data here }serial monitor output:
30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSL 0 MCO:BGN:INIT GW,CP=RNNGA---,FQ=16,REL=255,VER=2.3.2 4 TSM:INIT 5 TSF:WUR:MS=0 11 !TSM:INIT:TSP FAIL 13 TSM:FAIL:CNT=1 15 TSM:FAIL:DIS 16 TSF:TDI:TSL 10019 TSM:FAIL:RE-INIT 10021 TSM:INIT 10028 !TSM:INIT:TSP FAIL 10030 TSM:FAIL:CNT=2 10032 TSM:FAIL:DIS 10034 TSF:TDI:TSL 20037 TSM:FAIL:RE-INIT 20039 TSM:INIT 20045 !TSM:INIT:TSP FAIL 20047 TSM:FAIL:CNT=3 20049 TSM:FAIL:DIS 20051 TSF:TDI:TSL 30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSL 40072 TSM:FAIL:RE-INIT 40074 TSM:INIT 40080 !TSM:INIT:TSP FAIL 40082 TSM:FAIL:CNT=5 40084 TSM:FAIL:DIS 40086 TSF:TDI:TSL 50089 TSM:FAIL:RE-INIT 50092 TSM:INIT 50098 !TSM:INIT:TSP FAIL 50100 TSM:FAIL:CNT=6 50102 TSM:FAIL:DIS 50104 TSF:TDI:TSL 60107 TSM:FAIL:RE-INIT 60109 TSM:INIT 60115 !TSM:INIT:TSP FAIL 60118 TSM:FAIL:CNT=7 60120 TSM:FAIL:DIS 60122 TSF:TDI:TSL 120125 TSM:FAIL:RE-INIT 120127 TSM:INIT 120133 !TSM:INIT:TSP FAIL 120136 TSM:FAIL:CNT=7 120138 TSM:FAIL:DIS 120139 TSF:TDI:TSL 180142 TSM:FAIL:RE-INIT 180144 TSM:INIT 180150 !TSM:INIT:TSP FAIL 180153 TSM:FAIL:CNT=7 180155 TSM:FAIL:DIS 180156 TSF:TDI:TSL 0 MCO:BGN:INIT GW,CP=RNNGA---,FQ=16,REL=255,VER=2.3.2 4 TSM:INIT 5 TSF:WUR:MS=0 11 !TSM:INIT:TSP FAIL 13 TSM:FAIL:CNT=1 15 TSM:FAIL:DIS 16 TSF:TDI:TSL 10019 TSM:FAIL:RE-INIT 10021 TSM:INIT 10028 !TSM:INIT:TSP FAIL 10030 TSM:FAIL:CNT=2 10032 TSM:FAIL:DIS 10034 TSF:TDI:TSL 20037 TSM:FAIL:RE-INIT 20039 TSM:INIT 20045 !TSM:INIT:TSP FAIL 20047 TSM:FAIL:CNT=3 20049 TSM:FAIL:DIS 20051 TSF:TDI:TSL 30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSLthere must be something i'm not being able to figure out....
dhcp served by dnsmasq. all other devices work without problem.
-
nothing is working :-(
// Enable debug prints to serial monitor #define MY_DEBUG // Enable and select radio type attached #define MY_RADIO_RF24 //#define MY_RADIO_NRF5_ESB //#define MY_RADIO_RFM69 //#define MY_RADIO_RFM95 // Enable gateway ethernet module type #define MY_GATEWAY_W5100 // W5100 Ethernet module SPI enable (optional if using a shield/module that manages SPI_EN signal) #define MY_W5100_SPI_EN 4 // Enable Soft SPI for NRF radio (note different radio wiring is required) // The W5100 ethernet module seems to have a hard time co-operate with // radio on the same spi bus. #if !defined(MY_W5100_SPI_EN) && !defined(ARDUINO_ARCH_SAMD) #define MY_SOFTSPI #define MY_SOFT_SPI_SCK_PIN 14 #define MY_SOFT_SPI_MISO_PIN 16 #define MY_SOFT_SPI_MOSI_PIN 15 #endif // When W5100 is connected we have to move CE/CSN pins for NRF radio #ifndef MY_RF24_CE_PIN #define MY_RF24_CE_PIN 5 #endif #ifndef MY_RF24_CS_PIN #define MY_RF24_CS_PIN 6 #endif // Enable UDP communication //#define MY_USE_UDP // If using UDP you need to set MY_CONTROLLER_IP_ADDRESS or MY_CONTROLLER_URL_ADDRESS below // Enable MY_IP_ADDRESS here if you want a static ip address (no DHCP) //#define MY_IP_ADDRESS 192,168,80,15 // If using static ip you can define Gateway and Subnet address as well //#define MY_IP_GATEWAY_ADDRESS 192,168,80,1 //#define MY_IP_SUBNET_ADDRESS 255,255,255,0 // Renewal period if using DHCP #define MY_IP_RENEWAL_INTERVAL 60000 // The port to keep open on node server mode / or port to contact in client mode #define MY_PORT 5003 // Controller ip address. Enables client mode (default is "server" mode). // Also enable this if MY_USE_UDP is used and you want sensor data sent somewhere. //#define MY_CONTROLLER_IP_ADDRESS 192, 168, 178, 254 //#define MY_CONTROLLER_URL_ADDRESS "my.controller.org" // The MAC address can be anything you want but should be unique on your network. // Newer boards have a MAC address printed on the underside of the PCB, which you can (optionally) use. // Note that most of the Arduino examples use "DEAD BEEF FEED" for the MAC address. #define MY_MAC_ADDRESS 0x00, 0x40, 0xFD, 0xEF, 0x35, 0x75 // Enable inclusion mode #define MY_INCLUSION_MODE_FEATURE // Enable Inclusion mode button on gateway #define MY_INCLUSION_BUTTON_FEATURE // Set inclusion mode duration (in seconds) #define MY_INCLUSION_MODE_DURATION 60 // Digital pin used for inclusion mode button #define MY_INCLUSION_MODE_BUTTON_PIN 3 // Set blinking period #define MY_DEFAULT_LED_BLINK_PERIOD 300 // Flash leds on rx/tx/err // Uncomment to override default HW configurations #define MY_DEFAULT_ERR_LED_PIN 7 // Error led pin #define MY_DEFAULT_RX_LED_PIN 8 // Receive led pin #define MY_DEFAULT_TX_LED_PIN 9 // Transmit led pin #if defined(MY_USE_UDP) #include <EthernetUdp.h> #endif #include <SPI.h> #include <Ethernet.h> #include <MySensors.h> void setup() { // Setup locally attached sensors } void presentation() { // Present locally attached sensors here } void loop() { // Send locally attached sensors data here }serial monitor output:
30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSL 0 MCO:BGN:INIT GW,CP=RNNGA---,FQ=16,REL=255,VER=2.3.2 4 TSM:INIT 5 TSF:WUR:MS=0 11 !TSM:INIT:TSP FAIL 13 TSM:FAIL:CNT=1 15 TSM:FAIL:DIS 16 TSF:TDI:TSL 10019 TSM:FAIL:RE-INIT 10021 TSM:INIT 10028 !TSM:INIT:TSP FAIL 10030 TSM:FAIL:CNT=2 10032 TSM:FAIL:DIS 10034 TSF:TDI:TSL 20037 TSM:FAIL:RE-INIT 20039 TSM:INIT 20045 !TSM:INIT:TSP FAIL 20047 TSM:FAIL:CNT=3 20049 TSM:FAIL:DIS 20051 TSF:TDI:TSL 30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSL 40072 TSM:FAIL:RE-INIT 40074 TSM:INIT 40080 !TSM:INIT:TSP FAIL 40082 TSM:FAIL:CNT=5 40084 TSM:FAIL:DIS 40086 TSF:TDI:TSL 50089 TSM:FAIL:RE-INIT 50092 TSM:INIT 50098 !TSM:INIT:TSP FAIL 50100 TSM:FAIL:CNT=6 50102 TSM:FAIL:DIS 50104 TSF:TDI:TSL 60107 TSM:FAIL:RE-INIT 60109 TSM:INIT 60115 !TSM:INIT:TSP FAIL 60118 TSM:FAIL:CNT=7 60120 TSM:FAIL:DIS 60122 TSF:TDI:TSL 120125 TSM:FAIL:RE-INIT 120127 TSM:INIT 120133 !TSM:INIT:TSP FAIL 120136 TSM:FAIL:CNT=7 120138 TSM:FAIL:DIS 120139 TSF:TDI:TSL 180142 TSM:FAIL:RE-INIT 180144 TSM:INIT 180150 !TSM:INIT:TSP FAIL 180153 TSM:FAIL:CNT=7 180155 TSM:FAIL:DIS 180156 TSF:TDI:TSL 0 MCO:BGN:INIT GW,CP=RNNGA---,FQ=16,REL=255,VER=2.3.2 4 TSM:INIT 5 TSF:WUR:MS=0 11 !TSM:INIT:TSP FAIL 13 TSM:FAIL:CNT=1 15 TSM:FAIL:DIS 16 TSF:TDI:TSL 10019 TSM:FAIL:RE-INIT 10021 TSM:INIT 10028 !TSM:INIT:TSP FAIL 10030 TSM:FAIL:CNT=2 10032 TSM:FAIL:DIS 10034 TSF:TDI:TSL 20037 TSM:FAIL:RE-INIT 20039 TSM:INIT 20045 !TSM:INIT:TSP FAIL 20047 TSM:FAIL:CNT=3 20049 TSM:FAIL:DIS 20051 TSF:TDI:TSL 30055 TSM:FAIL:RE-INIT 30057 TSM:INIT 30063 !TSM:INIT:TSP FAIL 30065 TSM:FAIL:CNT=4 30067 TSM:FAIL:DIS 30069 TSF:TDI:TSLthere must be something i'm not being able to figure out....
dhcp served by dnsmasq. all other devices work without problem.
@pw44 the log shows that the gateway is unable to initialize the nrf24 radio module. This prevents the gateway code from reaching the dhcp section.
Double-check the nrf24 wiring. If you can, replace the radio module. If that doesn't help, post detailed photos of the wiring and we'll try to spot what could be wrong.
-
these are the real photos of the setup.
wire codes are the same as the build instructions ;-)
managing the SPI_EN signal? tried with and without, no changes.


-
@pw44 you seem to have the same w5100 shield as i have. Try removing the sd card.
If that doesn't work, try my fix here : https://forum.mysensors.org/topic/9732/arduino-uno-with-ethernet-shield-w5100-not-working/10 -
@Yveaux
Thanks for the reply, removing the sd card or applying your fix did not change the problem. -
@Yveaux said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 why are spi clk/miso/mosi connected to A0.. 2 ¿
as described in https://www.mysensors.org/build/ethernet_gateway
-
@Yveaux said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
@pw44 why are spi clk/miso/mosi connected to A0.. 2 ¿
as described in https://www.mysensors.org/build/ethernet_gateway
@pw44 said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
as described in https://www.mysensors.org/build/ethernet_gateway
Yes, but the sketch just below it has
//#define MY_W5100_SPI_EN 4You actually have enabled this line, which causes the arduino to use hardware spi. And hardware spi uses different pins for clk/miso/mosi.
You wired for software spi, so comment that line as in the example. -
@pw44 said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
as described in https://www.mysensors.org/build/ethernet_gateway
Yes, but the sketch just below it has
//#define MY_W5100_SPI_EN 4You actually have enabled this line, which causes the arduino to use hardware spi. And hardware spi uses different pins for clk/miso/mosi.
You wired for software spi, so comment that line as in the example.thanks man, you're right. commenting out
//#define MY_W5100_SPI_EN 4solved it.
now, debug shows:
0 MCO:BGN:INIT GW,CP=RNNGA---,FQ=16,REL=255,VER=2.3.2 4 MCO:BGN:BFR 6 TSM:INIT 7 TSF:WUR:MS=0 13 TSM:INIT:TSP OK 15 TSM:INIT:GW MODE 16 TSM:READY:ID=0,PAR=0,DIS=0 19 MCO:REG:NOT NEEDED 696 GWT:TIN:IP=192.168.80.9 1699 MCO:BGN:STP 1701 MCO:BGN:INIT OK,TSP=1 1703 TSM:READY:NWD REQ 1709 ?TSF:MSG:SEND,0-0-255-255,s=255,c=3,t=20,pt=0,l=0,sg=0,ft=0,st=OK:just another question: does the 3.3v line from Uno R# enough power to handle the RF24 radio?
Thx in advance!
-
@pw44 said in Gateway Uno R3 + W5100 Ethernet Shield for Uno not working.:
as described in https://www.mysensors.org/build/ethernet_gateway
Yes, but the sketch just below it has
//#define MY_W5100_SPI_EN 4You actually have enabled this line, which causes the arduino to use hardware spi. And hardware spi uses different pins for clk/miso/mosi.
You wired for software spi, so comment that line as in the example.