Beginner Wifi project: ESP8266 or NRF24L01+?

Hi,

I'm trying to decide on a wifi module for a home automation project. I was going to get sparkfun's ESP8266, but a lot of people seem to be having trouble with them, especially the ESP-01.

I only need the wifi functionality and one IO pin to switch a relay... an Arduino Mini + logic converter + NRF24L01 seems overkill.

I found some Makerfocus ESP-12E NodeMcu's for $7 each - they take 5V and have plenty of IO. Does anyone have experience with those modules? Is there a reason for a beginner to go with the Arduino combo instead?

NRF24L01+ is wireless but not WiFi. Are you just asking about wireless communication in general, rather than WiFi specifically?

Beginners just have trouble with ESP8266 in general, mostly when trying to interface one running the AT firmware with a standard Arduino board. I've never heard of anything especially troublesome about SparkFun's boards.

I mostly use WeMos D1 mini (ESP8266) tboards, never had any problem with them.
The SparkFun boards don't have much memory (4Mbit = 512KB, while many other boards, including the WeMos D1 mini have 32Mbit = 4MB), and the SparkFun ESP8266 Thing doesn't have a USB interface to program it, so I wouldn't recommend it. I wouldn't recomment an ESP-01 either.

This might be of interest: A Beginner's Guide to the ESP8266

Pieter

pert:
NRF24L01+ is wireless but not WiFi. Are you just asking about wireless communication in general, rather than WiFi specifically?

Beginners just have trouble with ESP8266 in general, mostly when trying to interface one running the AT firmware with a standard Arduino board. I've never heard of anything especially troublesome about SparkFun's boards.

My mistake, I meant WiFi specifically. I need it to respond to an HTTP request - raw TCP is okay too. I guess that takes the NRF24L01 out of the running..

I'll probably be programming it directly and using it in place of an Arduino instead of using AT to interface

PieterP:
I mostly use WeMos D1 mini (ESP8266) tboards, never had any problem with them.
The SparkFun boards don't have much memory (4Mbit = 512KB, while many other boards, including the WeMos D1 mini have 32Mbit = 4MB), and the SparkFun ESP8266 Thing doesn't have a USB interface to program it, so I wouldn't recommend it. I wouldn't recomment an ESP-01 either.

This might be of interest: A Beginner's Guide to the ESP8266

Pieter

Wow, 12 IO pins, 4MB and USB support for a fraction of the price

Do you order them from aliexpress? I can't seem find the v3.0.0 flavor anywhere else

And do you use the Arduino IDE to program them or Lua / Python ?

Thanks - bookmarked that guide, I think it'll save me a lot of trouble

I ordered them from eBay for about $3.50/pc. (incl. shipping).

I prefer the Arduino IDE, but that’s a personal opinion, of course. Being able to program it using Python is great, and it works just fine. If you want full control, you can program it using the official SDK, but you need a lot of C knowledge (or a lot of time and motivation). Here’s a great place to get started if you want to go down that road: Kolban’s book on the ESP8266 | Neil Kolban Tech. I haven’t used Lua, since I’m more familiar with C/C++ and Python.

shazool:
I need it to respond to an HTTP request - raw TCP is okay too.
I’ll probably be programming it directly and using it in place of an Arduino instead of using AT to interface

The ESP8266 Arduino Core includes a complete HTTP server that’s very easy to set up (~5 lines of code to serve a hello world web page).

PieterP:
I mostly use WeMos D1 mini (ESP8266) tboards, never had any problem with them.
The SparkFun boards don’t have much memory (4Mbit = 512KB, while many other boards, including the WeMos D1 mini have 32Mbit = 4MB), and the SparkFun ESP8266 Thing doesn’t have a USB interface to program it, so I wouldn’t recommend it. I wouldn’t recomment an ESP-01 either.

This might be of interest: A Beginner’s Guide to the ESP8266

Pieter

I second the Wemos D-1 Minis and Mini Pro(If you need an antenna because your project box inhibits reception). I order directly from the link on Wemos.cc There are so many different ESP8266 boards out there.
I have not been failed by Wemos D-1 Mini’s. You can program them via Arduino .ide and do not have to use AT commands.
WemosD1Mini.jpgWemosD1MiniPro.jpgRelay.jpg

Here’s another good read: https://github.com/boseji/ESP-Store/blob/master/manuals/Kolbans-Book-on-the-ESP8266-October-2015.pdf

Most of the problems seem to be the AT command interface. Never used it myself, using the NodeMCU boards mostly. I used to have a WeMOS (the Arduino Uno lookalike version), worked fine until I connected a MOSFET wrongly and the magic smoke escaped (they obviously can't handle 12V applied to an input pin).

Lua doesn't attract me, either. It's interpreted, not compiled. I've seen quite some stories of people running into memory limits and part of the problem there is that comments in your code actually make it bigger! So to make a large program fit you'd have to strip out comments...

I love the processors for their speed and available memory. I've yet to get anywhere near the limits. Almost all Arduino libraries work out of the box making attaching sensors very easy.

Thanks everyone, just ordered two D-1 Minis to start with - in case I make a similar mistake and fry one

Comments increasing memory footprint? And I thought vb was a bad language… I’ll stick with the Arduino Core then. Maybe even give the low level SDK a go, though it seems like the kind of thing that makes WinAPI look friendly

I'm programming the ESP8266 (using the ESP12E and NodeMCU myself) using the Arduino IDE and that works great.

Memory footprint is not too much to worry about with these devices as you have a lot of memory to work with.