adafruit / Adafruit_IO_Arduino

Arduino library to access Adafruit IO from WiFi, cellular, and ethernet modules.
Other
208 stars 108 forks source link

Add Ethernet disconnect function #125

Closed brentru closed 4 years ago

brentru commented 4 years ago

Fixes https://github.com/adafruit/Adafruit_IO_Arduino/issues/110 and https://github.com/adafruit/Adafruit_IO_Arduino/issues/112 by adding an ethernet disconnect function to stop active ethernetclient connections.

Prior to PR:

In file included from /Users/brentrubell/Documents/Arduino/adafruitio_02_pubsub/adafruitio_02_pubsub.ino:18:0:
config.h:17:21: error: cannot declare variable 'io' to be of abstract type 'AdafruitIO_Ethernet'
 AdafruitIO_Ethernet io(IO_USERNAME, IO_KEY);
                     ^~
In file included from /var/folders/k6/g066g1tn567fn8mj2p42x4240000gn/T/arduino_build_943460/sketch/config.h:16:0,
                 from /Users/brentrubell/Documents/Arduino/adafruitio_02_pubsub/adafruitio_02_pubsub.ino:18:
/Users/brentrubell/Documents/Arduino/libraries/Adafruit_IO_Arduino/src/AdafruitIO_Ethernet.h:35:7: note:   because the following virtual functions are pure within 'AdafruitIO_Ethernet':
 class AdafruitIO_Ethernet : public AdafruitIO {
       ^~~~~~~~~~~~~~~~~~~
In file included from /Users/brentrubell/Documents/Arduino/libraries/Adafruit_IO_Arduino/src/AdafruitIO_Ethernet.h:28:0,
                 from /var/folders/k6/g066g1tn567fn8mj2p42x4240000gn/T/arduino_build_943460/sketch/config.h:16,
                 from /Users/brentrubell/Documents/Arduino/adafruitio_02_pubsub/adafruitio_02_pubsub.ino:18:
Multiple libraries were found for "Adafruit_ZeroDMA.h"
 Used: /Users/brentrubell/Library/Arduino15/packages/adafruit/hardware/samd/1.5.7/libraries/Adafruit_ZeroDMA
 Not used: /Users/brentrubell/Documents/Arduino/libraries/Adafruit_Zero_DMA_Library
/Users/brentrubell/Documents/Arduino/libraries/Adafruit_IO_Arduino/src/AdafruitIO.h:136:16: note:   virtual void AdafruitIO::_disconnect()
   virtual void _disconnect() = 0;
                ^~~~~~~~~~~

After PR: successfully compiled on a Feather M4 + Ethernet FeatherWing, successfully tested adafruitio_02_pubsub with 175 datapoints to sent Adafruit IO, confirmed data was able to be received from IO.