Selecting the most appropriate bluetooth/ wifi controller with integrated microcontroller

I am new in the bluetooth/wifi integrated controllers. I have a strong background in embeded microcontrollers development with Assembler.
Since I have not doe any development for years I want your support in making decision which bluetooth/wifi board to select for my development project.
The project is simple access control which should be controlled by smart phone’s blue tooth.
I will use 2 inputs ( end switches for the actuator), and 3 outputs. 2 outputs for the actuator control in both direction and one for the strike. The logic level conversion etc will be done by optocouplers and transistor drivers for the relays who will control the electromagnetic strike and the actuator both operating on 12VDC.
My application will be server IoT cloud based. Every user of the app should be registered with the service and each time they want to gain access they will login to the server who after it checks their credentials and their authority ( based on some rules for frequency of the access, have they broken the rules previously etc.) to gain access to the premises. Upon approval, the server will send a unique code to the user and the user can now open the door. The door will be opened as long as the user wants. Once they finish the work they press the close button from the mobile. The server will then get the time of closing and will know how long the door has been opened and by whom.
So, please help me chose a bluetooth development boards that has the following:

  1. I can put a couple of hundred bites of code into the non volatile memory and I do not need any special PROM programmers.
  2. the board is simple and cost effective. I only need a couple of IOs.
  3. The development tools are simple, available ether free of for a low cost.
    4.I will need simple low level compiler, solid debugger with brake points and step by step tracing
  4. There is a technical support
    I did some research and found ESP32 preatty cloose to what I want. My only warry is the development tools. How reliable are they, do the work at all without too much hustle and how is the support for it.
    Obviously I will need to use the most popular low cost Bluetooth and Microcontroller board.
1 Like

Hi Georgi,

Welcome to the forum!!

Yeah it sounds like the ESP32 will do the job :smiley:
To answer your questions:

  1. Most of them feature an onboard USB to serial converter for programming, the CH340 is a common one used on the ESP32 modules
  2. Definitely cheap for what it offers, a fast processor, both WiFi and Bluetooth, and a great community backing
  3. Just about all hobby level software is open source meaning it’s free and community-driven. You might not see a feature available but it would be in the works. Breakpoints are a bit harder with microcontrollers but if you opt for Micropython you can step into the REPL and run code line-by-line.
  4. Technical support shouldn’t be a worry, many makers use them and with the forum you’ll have an answer ASAP. ESP32’s are pretty common place these days and go in a massive range of projects.

If you are after some documentation ESPRESSIF has you covered:

Of course Arduino’s documenation

I’m also curious why you’ve gone for Bluetooth instead of WiFi here?


Hi Liam,
Thank you for the reply.
I don’t know all the aspects but the reason I picked Bluetooth is that after the pairing is done it will be easy to control the device from the mobile phone and the only infrastructure will be the Bluetooth module and the smart phone.
To my knowledge if I want WiFi than I will need an introduction of WiFi router who will route the communication and that is extra unnecessary infrastructure which I will have to add to the existing network and also make sure I have a wifi coverage.
With bluetooth I will be close to the module and I will make sure it is within the range to communicate.
Can I communicate Pear to Pear between the WiFi module and Mobile phone without any WiFi Router?


Yes. See, for instance:
ESP32 Access Point (AP) for Web Server | Random Nerd Tutorials


Thanks Jeff

Kind Regards,

Georgi Ristov