{"id":15322076,"url":"https://github.com/meteran/arduino_uip","last_synced_at":"2025-10-09T08:32:12.548Z","repository":{"id":98007226,"uuid":"43639363","full_name":"meteran/arduino_uip","owner":"meteran","description":"UIPEthernet: A plugin-replacement of the stock Arduino Ethernet library for ENC28J60 shields and breakout boards. Full support for persistent (streaming) TCP-connections and UDP (Client and Server each), ARP, ICMP, DHCP and DNS. Build around Adam Dunkels uIP Stack.","archived":false,"fork":true,"pushed_at":"2015-10-04T14:58:34.000Z","size":533,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-27T05:34:30.012Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"ntruchsess/arduino_uip","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meteran.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-10-04T14:36:12.000Z","updated_at":"2015-10-04T14:36:12.000Z","dependencies_parsed_at":"2023-03-06T09:15:10.946Z","dependency_job_id":null,"html_url":"https://github.com/meteran/arduino_uip","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/meteran/arduino_uip","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteran%2Farduino_uip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteran%2Farduino_uip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteran%2Farduino_uip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteran%2Farduino_uip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meteran","download_url":"https://codeload.github.com/meteran/arduino_uip/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteran%2Farduino_uip/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001052,"owners_count":26082991,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T09:14:05.182Z","updated_at":"2025-10-09T08:32:12.225Z","avatar_url":"https://github.com/meteran.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"This is UIPEthernet version 1.09\n\nAn plugin-replacement of the stock Arduino Ethernet library for ENC28J60 shields and breakout boards. Full support for persistent (streaming) TCP-connections and UDP (Client and Server each), ARP, ICMP, DHCP and DNS. \nJust include 'UIPEthernet.h' instead of 'Ethernet.h' and use all your code written for the stock Arduino Ethernet lib!\n\nUIPEthernet is written as a wrapper around the mature uIP Stack by Adam Dunkels, which provides the low-level implementation for all supported protocols. To overcome the memory-constrains (a 'regular' uIP-application does all processing in RAM) the ENC28J60 internal memory is used for all stream buffers (in and out). Only 400-600 Bytes of Arduinos RAM are used (depending on the number of concurrently open connections). As of Flash-memory a ATmega368-based Arduino is the minimum requirenment.\n\nThis library is written by Norbert Truchsess \u003cnorbert.truchsess@t-online.de\u003e\n\nuIP was written by Adam Dunkels of the Networked Embedded Systems group at the Swedish Institute of Computer Science.\n\nThis library was inspired by the SerialIP implementation by Adam Nielsen \u003cmalvineous@shikadi.net\u003e, actually I took this code as a starting point, but in the latest versions there are very few lines left.\n\nInstallation\n------------\n\nTo install the libraries, you need to place them into your \"libraries\" folder. You can find it within your Arduino IDE distribution within the \"hardware\" folder.\n\n    C:\\\u003e cd [path to Arduino distribution]\\libraries\n    C:\\\u003e git clone https://github.com/ntruchsess/arduino_uip UIPEthernet\n\nBe sure to restart the IDE if it was running.\n\nOn a Mac, you will want to create a folder named \"libraries\" in in the \"Documents\" -\u003e \"Arduino\" folder within your home directory. Clone the project there (and restart the IDE, if it was running during this process).\n\n    $ cd ~/Documents/Arduino/libraries\n    $ git clone https://github.com/ntruchsess/arduino_uip UIPEthernet\n    \nOr you download the zipped version of the library from https://github.com/ntruchsess/arduino_uip/releases, and copy the contained directory UIPEthernet to [path to Arduino distribution]\\libraries\\UIPEthernet.\n\nIf you are running Arduino-IDE 1.5.x use release-version 1.59 or checkout branch 'Arduino_1.5.x'\n\nAdditional information can be found on the Arduino website: http://www.arduino.cc/en/Hacking/Libraries\n\nDocumentation\n-------------\n\nFor more information visit:\n\n - UIPEthernet Repository on github:\n    https://github.com/ntruchsess/arduino_uip\n    \n - Arduino Ethernet library description \n    http://arduino.cc/en/Reference/Ethernet\n    (Arduino_uip uses the same API as that, just include \"UIPEthernet.h\", \"UIPClient.h\", \"UIPServer.h\" and \"UIPUDP.h\" instead of the stock \"Ethernet.h\", \"EthernetClient.h\", \"EthernetServer.h \" and \"EthernetUDP.h\")\n    \n - uIP API reference:\n    http://www.sics.se/~adam/uip/uip-1.0-refman/\n\n - Arduino forums\n    http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl\n\n - uIP homepage:\n    http://www.sics.se/~adam/uip/index.php/Main_Page\n\nLicenses\n-------------\n\nUIPEthernet.h\nUIPEthernet.cpp\nUIPServer.h\nUIPServer.cpp\nUIPClient.h\nUIPClient.cpp\nUIPUdp.h\nUIPUdp.cpp\nutility/mempool.h\nutility/mempool.cpp\n\nCopyright (c) 2013 Norbert Truchsess \u003cnorbert.truchsess@t-online.de\u003e\nAll rights reserved.\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n\n--------------\n\nutility/enc28j60.h\n\nAuthor        : Pascal Stang (c)2005\nModified by Norbert Truchsess\nCopyright: GPL V2\n\n--------------\n\nutility/Enc28J60Network.h\nutility/Enc28J60Network.cpp\n\nCopyright (c) 2013 Norbert Truchsess \u003cnorbert.truchsess@t-online.de\u003e\nAll rights reserved.\n\ninspired and based on enc28j60.c file from the AVRlib library by Pascal Stang.\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n\n--------------\n\nutility/uip.c\nutility/uip_arp.h\nutility/uip_arp.c\nutility/uip_arch.h\nutility/uip.h\nutility/uipopt.h\n\nCopyright (c) 2001-2003, Adam Dunkels \u003cadam@sics.se\u003e, \u003cadam@dunkels.com\u003e.\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions\nare met:\n1. Redistributions of source code must retain the above copyright\n   notice, this list of conditions and the following disclaimer.\n2. Redistributions in binary form must reproduce the above copyright\n   notice, this list of conditions and the following disclaimer in the\n   documentation and/or other materials provided with the distribution.\n3. Neither the name of the Institute nor the names of its contributors\n   may be used to endorse or promote products derived from this software\n   without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\nARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\nOR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\nHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\nLIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\nOUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGE.\n\n--------------\n\nuip-conf.h\nutility/uip-neighbor.h\nutility/uip-neighbor.c\nutility/uip_timer.h\nutility/uip_timer.c\nutility/uip_clock.h\n\nAuthor Adam Dunkels Adam Dunkels \u003cadam@sics.se\u003e, \u003cadam@dunkels.com\u003e\nCopyright (c) 2004,2006, Swedish Institute of Computer Science.\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions\nare met:\n1. Redistributions of source code must retain the above copyright\n   notice, this list of conditions and the following disclaimer.\n2. Redistributions in binary form must reproduce the above copyright\n   notice, this list of conditions and the following disclaimer in the\n   documentation and/or other materials provided with the distribution.\n3. Neither the name of the Institute nor the names of its contributors\n   may be used to endorse or promote products derived from this software\n   without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\nARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\nOR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\nHOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\nLIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\nOUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGE.\n\n--------------\n\nDhcp.h\nDhcp.cpp\n\nDHCP Library v0.3 - April 25, 2009\nAuthor: Jordan Terrell - blog.jordanterrell.com\n- as included in Arduinos stock Ethernet-library, no special licence mentioned here\n\n--------------\n\nDns.h\nDns.cpp\n\n(c) Copyright 2009-2010 MCQN Ltd.\nReleased under Apache License, version 2.0\n\n--------------\n\nclock-arch.h\nclock-arch.c\n \nCopyright (c) 2010 Adam Nielsen \u003cmalvineous@shikadi.net\u003e\nAll rights reserved.\n\nThis library is free software; you can redistribute it and/or\nmodify it under the terms of the GNU Lesser General Public\nLicense as published by the Free Software Foundation; either\nversion 2.1 of the License, or (at your option) any later version.\n\nThis library is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\nLesser General Public License for more details.\n\nYou should have received a copy of the GNU Lesser General Public\nLicense along with this library; if not, write to the Free Software\nFoundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeteran%2Farduino_uip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeteran%2Farduino_uip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeteran%2Farduino_uip/lists"}