Read battery percentage using Arduino
vijayvarghese last edited by
Is it possible to read battery info of an Android with an Arduino via Bluetooth without an external app on the Android side .
For example . Bluetooth connection to a cars media player shows battery life , signal strength ,etc....
kowshik1729 last edited by
@vijayvarghese The answer is "NO". If my guess is correct, you might have misunderstood the working of Classic Bluetooth and Bluetooth Low Energy(BLE). You cannot acquire battery percentages, RAM usage directly just by connecting HC-05 to Arduino and connecting it to mobile phones. Because our mobile phones don't share any characteristics to outside just through Bluetooth.
The example of car which you have stated is just applicable to the automobile field. If you are able to read the battery percentage, signal strength kind of parameters that means that the car's BLE has been programmed with those characteristics to be displayed. To be simple, it means that the Bluetooth inside the car has been given permission to display those. It depends upon the BLE configuration used and security levels. You cannot access any parameters from mobile phone just with Arduino and HC-05 Bluetooth module.
If you want to learn more about this please read the post in makergram named "Automatic pairing of ESP32 using BLE" where @salmanfaris has given a detailed explanation of how BLE works. If you want to work out how BLE's work, try connecting your MI Band(Or any smart wrist bands) to the nRF Connect Mobile app(Can be found in play store for free). Try seeing what parameters are displayed. please write back in case of queries.!!
vijayvarghese last edited by
@kowshik1729 Thank you ..
@salmanfaris best if you could point me to an example that works as described: getting different values depending on hoe close the finger is without really touching. nothing i tried did work yet
@salmanfaris I haven't found a good sensor module for this at all. I used a thing which was calles touch sensor and it returns only 1/0. Tried to use touchRead() but it is not sensitive apparently, only 40 and 1 more or less.
#define touch_pin_numer 33
const int VALUE_THRESHOLD = 30;
TOUCH_SENSOR_VALUE = touchRead(touch_pin_numer);
if(TOUCH_SENSOR_VALUE < VALUE_THRESHOLD)
Serial.println ("Touch ON");
Serial.println ("Touch OFF");
should show something between 40 (current max) and 1 (current min) the closer the finger gets but it shows 40/41/39 and 1 - nothing inbetween. got this code from the web
@FlorianB Can you share the code, output window/error and details of the sensor module?
Hi! I am trying to add an capacitive sensor to the ESP32, that will work through glass with 3mm thickness and an distance of 8 to 2 cm. I have bought sensors which only work on touch, i have looked into the touchRead() function but cant get a steady value increase/decrease with distance and only a real touch gets me enough difference to count it as a "touch". I have checked Arduino examples with foil where a resistor can set the sensitivity but nothing worked on my ESP32. i have spent hours looking for an example, can somebody point me to one please?
Welcome to the Second edition of MakerGram Live, a newsletter where we pull together information about Interesting projects, Industry news, upcoming events, job opportunities and other interesting bits that you may find useful.
If you are a member of makergram, you already received a mail, please check your inbox or you can read from here: MakerGram Live | May 2020 Maker Update