{"action":"created","issue":{"url":"https://api.github.com/repos/esp8266/Arduino/issues/849","labels_url":"https://api.github.com/repos/esp8266/Arduino/issues/849/labels{/name}","comments_url":"https://api.github.com/repos/esp8266/Arduino/issues/849/comments","events_url":"https://api.github.com/repos/esp8266/Arduino/issues/849/events","html_url":"https://github.com/esp8266/Arduino/issues/849","id":109394072,"number":849,"title":"Canonical bootstrapping approaches to user setting SSID / PSK / Method in deployment?","user":{"login":"vicatcu","id":1018382,"avatar_url":"https://avatars.githubusercontent.com/u/1018382?v=3","gravatar_id":"","url":"https://api.github.com/users/vicatcu","html_url":"https://github.com/vicatcu","followers_url":"https://api.github.com/users/vicatcu/followers","following_url":"https://api.github.com/users/vicatcu/following{/other_user}","gists_url":"https://api.github.com/users/vicatcu/gists{/gist_id}","starred_url":"https://api.github.com/users/vicatcu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vicatcu/subscriptions","organizations_url":"https://api.github.com/users/vicatcu/orgs","repos_url":"https://api.github.com/users/vicatcu/repos","events_url":"https://api.github.com/users/vicatcu/events{/privacy}","received_events_url":"https://api.github.com/users/vicatcu/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":29,"created_at":"2015-10-01T22:02:12Z","updated_at":"2015-10-08T20:21:29Z","closed_at":null,"body":"The same problem every Wi-Fi connected thing ever has to solve... how to get the target network credentials into the device without compiling them into the sketch. \r\n\r\nI've been trying to create a basic example that does this:\r\n 1. Tries to connect to the SDK stored network configuration.\r\n 2. If it can't connect to the SDK stored network configuration (or if the user pushes a button), reverts to AP_STA mode so that you can connect to the ESP8266 with a computer.\r\n 3. In AP_STA mode, runs MDNS and Webserver with a page that you can go to http://esp8266.local in a browser, be presented with a form to fill out the network credentials, and click submit.\r\n 4. Also a form submission handler page that tries to connect the STA to the network and credentials provided by the user and provides success / failure feedback to the user regarding ability to connect. On successful connection this becomes the SDK network configuration.\r\n\r\nI've been trying to put something like this together from the examples, and it's proving a bit harder than I thought it would be.  I've managed to kind of do aspects of the above by stitching together code from the library examples, but the WebServer is not very snappy to respond  in the webpage, and I have a heck of a time connecting to the SoftAP (both with my Android phone and my Ubuntu 14.04 laptop, both indicating very strong signal strength). Happy to share my (currently crappy) code [here](http://pastie.org/10454905).\r\n\r\nI recognize that this is not *really* an issue per se, an @igrr if you prefer to move this thread elsewhere please chime in. "},"comment":{"url":"https://api.github.com/repos/esp8266/Arduino/issues/comments/146674974","html_url":"https://github.com/esp8266/Arduino/issues/849#issuecomment-146674974","issue_url":"https://api.github.com/repos/esp8266/Arduino/issues/849","id":146674974,"user":{"login":"igrr","id":4349050,"avatar_url":"https://avatars.githubusercontent.com/u/4349050?v=3","gravatar_id":"","url":"https://api.github.com/users/igrr","html_url":"https://github.com/igrr","followers_url":"https://api.github.com/users/igrr/followers","following_url":"https://api.github.com/users/igrr/following{/other_user}","gists_url":"https://api.github.com/users/igrr/gists{/gist_id}","starred_url":"https://api.github.com/users/igrr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igrr/subscriptions","organizations_url":"https://api.github.com/users/igrr/orgs","repos_url":"https://api.github.com/users/igrr/repos","events_url":"https://api.github.com/users/igrr/events{/privacy}","received_events_url":"https://api.github.com/users/igrr/received_events","type":"User","site_admin":false},"created_at":"2015-10-08T20:21:29Z","updated_at":"2015-10-08T20:21:29Z","body":"Library dependency tracking is coming in the next IDE release (it is already available in nightly builds), so conditionally including EEPROM/FS is not out of the question. This said however, i think it would be in line with general Arduino philosophy to provide a simple tool first, instead of trying to cover all potential use cases. Let's bundle this library and see what people make of it. After all, Arduino is more about making than having things ready-made :)\r\n\r\nI like the idea of generic key-value storage though. Done right, it might even be more useful than a file system. But this is indeed a topic for a separate discussion."}}