I am using the ESP32 WROOM as well as a single LoRa Ra-02 SX1278. Now I have made a burglar alarm with micropython and what I really want is to send a text message to my mobile phone via the Lora module when the alarm goes off. I've been looking for examples in micropython for a while but can't really find anything. My question is can you send a message via bluetooth with a single LoRa Ra-02 SX1278 module and the ESP32 WROOM.
Related
My setup is as follows. An ESP32 devkit and a Sonos music player. The idea is to control the Sonos box, using a WiFiClient. With the ESP32 and its connected buttons, I send commands to the Sonos, to play a certain music file, set the volume and many other things. Works well.
The music files are just urls that direct the Sonos to fetch the music file from.
The next step was to add an SD card to my ESP32 and store musicfiles on the SD. I used ESPAsyncWebser, and I can retrieve the music files from my ESP32. Sonos plays them perfectly.
It's the combination that fails sometimes. While the asyncwebserver does it's job and sends out the music data, and the ESP talking to the same Sonos to change volume or add a song to the playlist/queue, it sometimes hangs just there, and the WifiClient is not able to connect or reconnect anymore, and no more music data is sent out. The ESP32 does not really crash, it still functions, the buttons keep working etcetera.
My WifiClient only connects to port 1400 on the Sonos. The Sonos gets the music from the webserver at port 80.
The bare question is, is it even possible to use WiFiClient objects together with the ESPAsyncWebServer when both are connected to the same IP address (the Sonos box) ?
Thanks in advance for any pointers ;-)
I have an arduino Uno which collect data from sensor, i want to send this data to the cloud using wifi esp8266 who support SSL using the library WifiClientSecure, is there an alternative to send data from arduino to the esp card and esp8266 read this data and send it after that to the cloud, i'm able to work with mqtt but i want to know if there is a way to have a directly connection between the arduino uno and esp8266 without having a third part, any help will be gratefull.
According to my research, the ESP8266 AT Command API does not support SSL. This means you will need to use the Arduino (as an FTDI converter) to program the ESP8266 with custom firmware. This will enable you to use WiFiClientSecure and pubsubclient.
To use the Arduino as an FTDI:
load a sketch that does not use Serial, such as the "Blink" example
connect the Arduino's TX pin to the ESP8266 RX pin
connect the Arduino's RX pin to the ESP8266 TX pin
Now you need to setup Arduino IDE so it can program an ESP8266
In Arduino IDE -> File -> Preferences, paste this into the Additional Boards Manager URLs: http://arduino.esp8266.com/stable/package_esp8266com_index.json (just copy the link as it is instead of clicking)
go to Tools -> Boards -> Boards Manager. Find "esp8266" in the list of boards and click "Install"
Set your board to "Generic ESP8266 Module" in Tools -> Boards
Arduino IDE is ready! But before you caan program an ESP8266 with it you need to connect a reset button and a program button to the ESP8266.
connect a push-button between GND and the ESP8266 GPIO_0 pin
connect a push-button between GND and the ESP8266 RESET pin
add a 10K-ohm pull-up resistor between 3.3V and ESP8266 pin (defaults the reset pin to HIGH)
When you are ready to upload a sketch to the ESP8266, use those buttons like this:
press both buttons
release RESET button
release GPIO_0 button
This puts the ESP8266 in program mode! You should now be able to click the "Upload" button in Arduino IDE. I would suggest using one of the provided ESP826a6 example sketches (like this one) to test everything out.
Here's an overview of the project:
. Arduino Uno sketch: read sensor data, send via Serial to ESP8266
. ESP8266 sketch: connect to WiFi network, receive sensor data from Serial, send via WiFiClientSecure to the cloud.
I will leave the actual code of these two programs up to you, but if you get stuck just leave a comment. Hope this helps!
I've got a Windows 10 based Mobile phone and want to receive a broadcast UDP packages send by a esp8266 breadboard. My mobile phone and esp8266 board are not connected to any wifi network or router so both have a fixed IP-addresses which can be completely different like: Mobile Phone => 10.0.0.1, esp8266 board => 192.168.1.1. The both have to communicate directly without a wifi-router.
Does somebody made this work or can tell me how get this working.
Regards, Wamor
You could set the esp8266 up as an AP (access point). This allows you to connect to the esp8266 from your phone like you would to a wifi router.
Check out https://learn.sparkfun.com/tutorials/esp8266-thing-hookup-guide/example-sketch-ap-web-server for a tutorial on how to do this.
Another useful link to a project that is similar to yours:
https://www.hackster.io/rayburne/esp8266-access-point-using-arduino-ide-19f632
I am working on a project where in I have coupled the arduino uno board and an ESP8266 module. I want to send an URL from my browser provided I am connected to the ESP8266 01 AP. For ex, is it possible to send "www.xyz.com" from the browser and it should be received at the ESP8266 module and the request should dumped to the arduino board.
Yes, this can be done by making the ESP a captive portal, especially since you have set the ESP as an access point. There is an example in the esp wifi library for Arduino. Check out https://github.com/esp8266/Arduino and the examples. In addition, there is a nice WifiManager lib that goes further with a demo of a captive portal at https://github.com/tzapu/WiFiManager
HTH
I've got my CC3000 Wifi shield and Arduino Uno working as intended using the several libraries, including the aRest.h library. In order for me to control the Arduino from anywhere across the web, I configured the port-forwarding settings on the router to address the Arduino via the routers ip address.
My question is this: If I had a multiple Arduino modules/devices that relied on two way communication (client/server), how is the setup configuration automated for each device so that I could target a specific Arduino with regional data? I don't expect the end user to know how to access the router and configure port forwarding.
I hope this makes sense, I'm a newbie to the world of micro-controllers, but have had some success with progress as of late
You should be able to make a simple way to setup the Wifi, when this job is done you connect via socket so a socket server ( python,node,etc... ) and this will avoid any port-forwarding.
You will not need to care about all this messy tasks, you can have as many as you want arduino in the same network and access from the internet.