From 6044420b8b505262b942f82be6a57498bb05181a Mon Sep 17 00:00:00 2001 From: Eugene Crosser Date: Thu, 25 Jul 2024 22:57:26 +0200 Subject: [PATCH] Add README and picture --- README.md | 28 ++++++++++++++++++++++++++++ photo.jpg | Bin 0 -> 40132 bytes 2 files changed, 28 insertions(+) create mode 100644 README.md create mode 100644 photo.jpg diff --git a/README.md b/README.md new file mode 100644 index 0000000..88a7937 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# Use Lilygo T-Display to show ThermoBeacon measurements + +![Photo of the display in action](photo.jpg) + + +T-Display is an inexpensive dev module based on ESP32 LX6 with a 135x240 +TFT LCD display. It has built-in radio (WiFi & Bluetooth, incl. BLE) that +can be powered from 3.3 or 5 V, and programmed over USB using Arduino +tools and libraries. + +This project turns it into an autonomous temperature and humidity display +that collects data from up to two ThermoBeacon BLE sensors. BLE scanner +is passive, it only listens to the advertisement frames sent by the sensors. +If more than two sensors are present, measurements from the first two, are +displayed, based on the RSSI value (that means, presumably, the two sensos +in the closest proximity to the display module). No configuration should be +necessary. + +One of the buttons (GPIO 35) toggles between graphic display of battery +charge and signal strength, and MAC address (last three octets). + +Depnedencies: `ArduinoBLE` library and `Bodmer/TFT_eSPI`. + +## Homepage and source + +Home page is [http://www.average.org/ThermoBeaconDisplay/](http://www.average.org/ThermoBeaconDisplay/) +Get the source from the origin `git://git.average.org/ThermoBeaconDisplay.git` +or from [Github mirror](https://github.com/crosser/ThermoBeaconDisplay). diff --git a/photo.jpg b/photo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..79725088f405010073e6aec46370afe1f02ec5cd GIT binary patch literal 40132 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

hUcQW`lTVG~i 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 Z%s0}sJwAFXtDcSJbh>lWO8VY(|JkygRrUY? literal 0 HcmV?d00001 -- 2.43.0