{"id":17356846,"url":"https://github.com/wolffshots/esp32-wifi","last_synced_at":"2026-05-14T23:42:52.318Z","repository":{"id":144679915,"uuid":"368927113","full_name":"wolffshots/esp32-wifi","owner":"wolffshots","description":"a wrapper component from the esp-idf examples to make setting up wifi easier","archived":false,"fork":false,"pushed_at":"2021-06-05T22:58:45.000Z","size":165,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T15:53:46.268Z","etag":null,"topics":["esp32","esp32-idf"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wolffshots.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-19T16:03:57.000Z","updated_at":"2021-06-05T22:57:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"143196db-aabd-4fa8-9265-90836f00cade","html_url":"https://github.com/wolffshots/esp32-wifi","commit_stats":{"total_commits":24,"total_committers":1,"mean_commits":24.0,"dds":0.0,"last_synced_commit":"3226fbb82a4366908e36c9225ca1d21f0f276e4a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wolffshots/esp32-wifi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wolffshots%2Fesp32-wifi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wolffshots%2Fesp32-wifi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wolffshots%2Fesp32-wifi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wolffshots%2Fesp32-wifi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wolffshots","download_url":"https://codeload.github.com/wolffshots/esp32-wifi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wolffshots%2Fesp32-wifi/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267179150,"owners_count":24048289,"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-07-26T02:00:08.937Z","response_time":62,"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":["esp32","esp32-idf"],"created_at":"2024-10-15T18:59:02.326Z","updated_at":"2026-05-14T23:42:47.300Z","avatar_url":"https://github.com/wolffshots.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# esp32-wifi\nDocs: [![couldn't get build status](https://api.travis-ci.com/wolffshots/esp32-wifi.svg?branch=main \"Current doc build status\")](https://wolffshots.github.io/esp32-wifi/index.html)\n\nthis component constitutes some wrappers for the example wifi connections from esp-idf\n\nsee the [esp-idf examples](https://github.com/espressif/esp-idf/tree/master/examples/wifi/getting_started) for more detail\n\n## how to use project\n\n1. run ```git submodule add git@github.com:wolffshots/esp32-wifi.git components/esp32-wifi``` in your main project\n2. configuration of this component is required to choose one of the two modes and set the ssid, password and other wifi settings\n    1. `station mode` - this is when the esp32 acts as a client on another wifi network and receives an ip and is accessible through that network\n    2. `softap mode` - this is when the esp32 acts as a router and broadcasts its own wifi network\n3. `#include \"wifi_sta.h\"` or `#include \"wifi_sap.h\"` should give you access to the wifi station or wifi soft ap parts of this component respectively.\n\na typical use case would look like the following if you support both modes:\n```c\n#include \"sdkconfig.h\"\n#ifdef CONFIG_ESP_ENABLE_WIFI_STA\n#include \"wifi_sta.h\"\n#endif\n#ifdef CONFIG_ESP_ENABLE_WIFI_SOFTAP\n#include \"wifi_sap.h\"\n#endif\n// function definitions and other imports\nvoid app_main(void)\n{\n    // start of your main method code\n#if defined(CONFIG_ESP_ENABLE_WIFI) \u0026\u0026 defined(CONFIG_ESP_ENABLE_WIFI_STA)\n    wifi_init_sta();\n#endif\n#if defined(CONFIG_ESP_ENABLE_WIFI) \u0026\u0026 defined(CONFIG_ESP_ENABLE_WIFI_SOFTAP)\n    wifi_init_sap();\n#endif\n    // rest of your main method code\n}\n```\n\nif the above steps don't work then you may need to run ```git submodule init components/esp32-wifi``` \nand then ```git submodule update --remote --recursive``` in your main project\n\n\n\n## folder contents\n\nthe component **esp32-wifi** contains two source files in C language [wifi_sta.c](wifi_sta.c) and [wifi_sap.c](wifi_sap.c). the files are located in root folder.\n\nesp-idf projects are build using cmake. the project build configuration is contained in `CMakeLists.txt` files that provide set of directives and instructions describing the project's source files and targets (executable, library, or both). \n\nbelow is short explanation of remaining files in the project folder.\n\n```\n├── include                     header file directory\n│   ├── wifi_sap.h              the header file which describes functions for setting up wifi in softap mode\n│   └── wifi_sta.h              the header file which describes functions for setting up wifi in station mode\n├── .gitignore                  describes what files and folders git should ignore\n├── .travis.yml                 build rules for creating docs via doxygen\n├── CMakeLists.txt              base project cmake file (describes dependencies, include dir and src dir)\n├── component.mk                component make file\n├── Kconfig.projbuild           kconfig description file to add build time vars\n├── LICENSE.md                  MIT license file\n├── README.md                   this file\n├── wifi_sap.c                  src file to define how the esp is set up in softap mode\n└── wifi_sta.c                  src file to define how the esp is set up in station mode\n```\n\nfor more information on structure and contents of esp-idf projects, please refer to Section [Build System](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/build-system.html) of the esp-idf programming guide.\n\n## documentation\n\nautomatically generated API documentation (doxygen) is available [here](https://wolffshots.github.io/esp32-wifi/index.html).\n\n## license\n\nthe code in this project is licensed under the MIT license - see LICENSE for details.\n\n# helpful commands\n- ```git submodule update --remote --recursive``` - updates the checked out modules to the most recent commit to their main branch\n\n# todo\n\n - [x] nothing for now","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwolffshots%2Fesp32-wifi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwolffshots%2Fesp32-wifi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwolffshots%2Fesp32-wifi/lists"}