ESP32 Race Timer - Bluetooth support?

abarrow
Posts: 2
Joined: Wed Apr 04, 2018 6:01 pm

ESP32 Race Timer - Bluetooth support?

Postby abarrow » Wed Apr 04, 2018 6:11 pm

Hi all,
I've implemented a sailboat race timer for the ESP32, based on similar code for ESP8266. Basically it is a 5 minute countdown timer that alerts deck crew that certain flags need to be raised and lowered during the start sequence. The entire unit is battery powered and fits in your hand, and has buttons for starting the sequence and selecting start modes, as well as an OLED display to show time to start, what flags need to be displayed, etc.

One of the features of the current design is a PCM tone generator that is connected to a small audio amplifier. It counts down to the time a flag needs to be raised, starting 15 seconds from the event, flag, start or whatever. That works well.

Since I now have the capabilities of an ESP32, I'd like to use the Bluetooth functionality to connect to the stereo on the committee boat, so that the tones are more easily heard by the deck crew that needs to raise flags. So, basically, I want to send tones via bluetooth audio. My perfect scenario would be some sort of voice ("Ten Seconds to Prep Flag down" or something like that), but that might take too much memory. Right now, I'll just settle for tones.

So, does anyone have any thoughts on how one might generate a tone that would be sent via bluetooth audio?

Thanks in advance.

chegewara
Posts: 2361
Joined: Wed Jun 14, 2017 9:00 pm

Re: ESP32 Race Timer - Bluetooth support?

Postby chegewara » Thu Apr 05, 2018 10:18 am

There is few solutions you can use, but i can see two.
1. your esp32 with application you have created can be host and another esp32 can be some sort of mp3 player with voice commands; communication between two of them can be achieved with ble
2. you can try to add bluetooth streamer to your existing app that will connect and stream to bluetooth speaker

bobolink
Posts: 98
Joined: Mon Feb 26, 2018 4:17 pm

Re: ESP32 Race Timer - Bluetooth support?

Postby bobolink » Thu Apr 05, 2018 12:07 pm

Could a Bluetooth Low Energy link just send a short code to tell your current design which PCM tone to generate locally and for how long? Rather than send the audio itself.

How about the WiFi direct mode “ESP-Now” on the ESP32? No WiFi infrastructure needed. The committee boat is the “Master” and the other boats “Slaves”. It’s only 250 bytes at a time I think but it sends those bytes very fast. We put a 2.4 GHz ground plane antenna at the top of the mast on the Master boat! A cheap electrocet mic and use the onboard ADC and DACs.

Sounds like a fun project. I’ll write the code if you take me sailing :D

abarrow
Posts: 2
Joined: Wed Apr 04, 2018 6:01 pm

Re: ESP32 Race Timer - Bluetooth support?

Postby abarrow » Thu Apr 05, 2018 10:26 pm

Wow, I had a nice long reply, and the forum site went away momentarily and I couldn't post it...

Okay, let's see.

Interesting thought on just generating the PCM and expecting BLE to interpret it. Very clever. I'll have to do some research on that one.

As for the local net of devices/boats or whatever, it is definitely something I've thought about. Probably the first step is to instrument the boats that are supporting the race with sensors for wind and current. On some large events, they use little waterproof GPS modules that send data back to the mother ship via SMS where it gets processed and displayed on a web page. We priced that option for an upcoming continental event, and the cost was $5000. Ouch.

I was thinking that using a little FM broadcast transmitter might make the handheld timer a little more usable on boats that don't have bluetooth stereos. It would also be a hardware instead of a software solution, just piping the PWM output into the audio input of the FM transmitter.

chegewara
Posts: 2361
Joined: Wed Jun 14, 2017 9:00 pm

Re: ESP32 Race Timer - Bluetooth support?

Postby chegewara » Fri Apr 06, 2018 11:54 am

For longer distance, over 10m, bluetooth is bad choice, but you may be interested in Lo-Ra.

Who is online

Users browsing this forum: Majestic-12 [Bot] and 71 guests