logo elektroda
logo elektroda
X
logo elektroda

SmallTV-Ultra which is a small display on ESP8266 showing weather forecast, photos, animations

p.kaczmarek2 5520 34
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
  • Small device with a display showing time, date, and weather forecast. .
    Measuring 35x39x45 mm, this compact gadget is equipped with a 1.5-inch IPS TFT display with a resolution of 240x240 pixels. The device is able to download the current time and weather forecast for a selected city from the web. In addition, it offers a gallery of images and animations that can be easily uploaded via a browser. The whole device is fully customisable, including a skin system, allowing you to adapt the appearance of the device to your own preferences.

    SmallTV-Ultra Kit .
    The kit is available to buy for around £40, depending on promotions:
    Small, yellow electronic gadget with a display showing weather and time. .
    Quote extracts from the offer:
    Information about the new Smalltv-Ultra model. .
    Let's start with the presentation of the kit. In the box, I also received a USB C cable and a QR code from the manufacturer:
    Cardboard box with a label containing a barcode and product information. .
    SmallTV-Ultra kit box with USB-C cable. .
    SmallTV-Ultra box with USB-C cable on a wooden surface. .
    Label inside a box with a QR code and the text Smart Weather Clock. .
    Small yellow gadget with a display and black USB-C cable on a wooden surface. .

    Starting SmallTV-Ultra .
    I started the adventure by connecting the hardware to the computer. I was hoping for the familiar sound of a new USB device being recognised, but nothing. The display came on, so the gadget works, but the USB to UART converter is unlikely to be in there.... which is a shame, it would be easier to change the firmware.
    The device starts in AP mode, you have to connect to the WiFi with the name shown, it doesn't have a password set, and only configure our network data there. The IP of the configuration page is the usual 192.168.4.1:
    Small, yellow device with a display showing a WiFi setup screen. .
    Small yellow gadget with a screen displaying a QR code and WiFi information. .
    The configuration page is quite elaborate. Someone must have worked hard. We start the configuration by entering our town - this will be used to download weather information.
    SmallTV-Ultra configuration page with a field for entering city location. .
    We then search for our WiFi network and enter the password for it:
    Configuration interface of the SmallTV-Ultra device .
    Configuration page of SmallTV-Ultra with a list of WiFi networks and settings options.
    The device will restart and try to connect to it:


    SmallTV-Ultra device configuration with SSID and password fields. .
    The new IP will appear on the screen and after a while we will also get weather information:
    Yellow SmallTV-Ultra gadget displaying a new IP address 192.168.0.214. .
    Compact SmallTV-Ultra display with weather and time information.


    The capabilities of SmallTV-Ultra .
    This device, however, can do much more. On the configuration web page we have a whole range of possibilities
    SmallTV-Ultra configuration interface with theme selection options. .
    Let's start with the clock styles:
    Yellow gadget with digital display showing numbers 20 and 22. .
    Yellow gadget with a display showing time 20:22, day of the week, and date. .
    Yellow gadget with a display showing the time 20:22. .
    Yellow electronic gadget with a display showing clouds, temperature 2°C, and time 20:23. .
    Not bad, but that's not all.
    We also have the weather forecast for the next few days:
    Small electronic device with a weather display. .
    It is also possible to present photos and. animated GIFs :
    Small device with a screen displaying an image in a yellow casing. .
    Yellow gadget with IPS TFT display showing a graphic of a cat. .
    Yellow SmallTV-Ultra device with a display showing an image of an artist surrounded by sunflowers. .
    Here is the video with the GIF:


    .
    What's more, everything is configurable. Our city, measurement format and weather refresh rate can all be changed:
    Screenshot of the SmallTV-Ultra device configuration page. .
    An animated GIF of the weather, too:
    Configuration panel of SmallTV-Ultra for managing GIF animations. .
    Same with time - the format of the date, time and even the summer/winter time DST is configurable:
    Configuration panel of the SmallTV-Ultra device .
    The gallery is also editable, existing images can be downloaded and new images can be uploaded:
    Image management interface in SmallTV-Ultra .

    Interior of SmallTV-Ultra .
    The housing is held in place by two screws:
    Yellow casing with two visible screws on a wooden background. .
    Compact gadget with IPS TFT display and orange casing. .
    Inside you can already see the 3.3V LDO (AMS1117-3.3V) and the WiFi module, more specifically the ESP12F:
    Close-up of the WiFi ESP-12F module on a PCB. .
    Close-up of the interior of a device showing the ESP12F module. .
    ESP8266 module inside SmallTV-Ultra casing .
    Close-up of the inside of the SmallTV-Ultra gadget with the ESP8266 WiFi module. .
    Those pads visible in the photo are probably IO0 and the UART for ESP programming.
    The board is signed by the author (?) - robotcity(_at_)foxmail.com , the display is connected to it by a ribbon:
    Close-up of the SmallTV-Ultra display with manufacturer name and marking GMT154-06 .
    Marking on the ribbon: GMT154-06
    So it's probably a display similar to 1.54 inch TFT display 240×240 ST7789T3 GMT154-01/GMT154-02 .
    Diagram of a 1.54-inch TFT display .
    Table with pin numbers and their symbols for the display. .
    You might have guessed it was an SPI interface, presumably pixels are sent via DMA:
    Table with pin definitions for the electronic module by GoldenMorning Electronics Co., Ltd. .
    I found a sample driver for it on the internet, but haven't fired it up yet:
    Interior of the source code file for the TFT display. .
    For reference:
    Code: C / C++
    Log in, to see the code
    .
    I still unscrewed one screw just to be sure, but there is nothing else on the PCB:
    Close-up of a USB-C port on a circuit board. .
    Close-up of a PCB with a WiFi module and a USB-C port. .

    Summary .
    SmallTV-Ultra is a small gadget based on a module with ESP8266 and a colour TFT display. Once configured, the gadget shows the current time, date, weather and even the weather forecast, but this is all taken from the internet, there are no sensors. In general, hardware-wise, it is kept to a minimum, there is not even a USB to UART converter, so we can't program it out of the box like we can, for example, program the NodeMCU. This is where the rather refined firmware shines, which by the way can be downloaded here:
    https://github.com/GeekMagicClock/smalltv-ultra
    I couldn't find the source code, by the way, most of the magic here is in the code, so no wonder. Surely a hardware SPI was used there, because everything refreshes so nicely quickly. Surely in LVGL they draw, LVGL I already presented a bit .
    Now all that's left is to try to change the firmware, but I'll do that in a separate topic.
    Do you like such a gadget, do you see any practical use for it? .

    Cool? Ranking DIY
    Helpful post? Buy me a coffee.
    About Author
    p.kaczmarek2
    Moderator Smart Home
    Offline 
    p.kaczmarek2 wrote 11928 posts with rating 9987, helped 572 times. Been with us since 2014 year.
  • ADVERTISEMENT
  • #2 21381008
    TechEkspert
    Editor
    Such a sensorless weatherman could make a good home in a kitchen or staff room in a company. ESP8266 and ESP32 are hard to beat for such applications, price/speed/capability are hard to beat.
  • #3 21381086
    jaskol24
    Level 12  
    Very useful review. Weather for the next few days how activated. Factory oprogromation or modifications?
  • ADVERTISEMENT
  • #4 21381088
    p.kaczmarek2
    Moderator Smart Home
    In the settings you choose what you want to display. Either rigidly, or there is also an experimental option that one by one each screen is.

    Software settings panel with options for selecting and auto-switching themes. .
    Vendor authored software, the vendor does not share the source code, but the binaries on Github are.
    Helpful post? Buy me a coffee.
  • #5 21381255
    popek9
    Level 13  
    >>21381008 Probably in a child's room. This gadget is so small that looking at it and seeing anything on such a small screen (on top of the hopeless quality) is a torture for most adults.
    A work buddy bought this thing and after opening the package asked everyone if anyone wanted to buy it back from him - zero takers. I wouldn't even want this electro-junk for free.
  • #6 21381266
    John Yossarian
    Level 10  
    I recommend the ThinkPulse project much cooler:)
    https://github.com/nicek/esp8266-weather-station-color.
    You just need to pull the API from the meteo service, get the location ID and complete the sketch. I have one modified for touch with a TFT 2.4' ILI9341, 8 moon phases, sun etc.
    Works great
  • ADVERTISEMENT
  • #7 21381274
    p.kaczmarek2
    Moderator Smart Home
    >>21381266 Interesting design, only now the question is, does it walk on this display what is presented here?

    >>21381255 do you know of anything better, with a larger display?
    Helpful post? Buy me a coffee.
  • #8 21381372
    John Yossarian
    Level 10  
    It works for me on this display (TFT 2.4" 320x240 ILI9341 touch). I haven't seen any finished projects with other displays. But we have the code available:) .
  • #10 21381585
    John Yossarian
    Level 10  
    Well a nice design, it looks nice. But it's already with sensors. ThingPulse gets its data from OpenWeatherMap + 5-day forecast.
  • #11 21381891
    xirtam1
    Level 11  
    >>21380761 .

    I purchased this gadget with the idea of adding external wired sensors. I've been playing around for a few days now and adding more sensors so far all in the development phase. The aim is:
    - measurement of outdoor temp BPM280 - I2C
    - measurement of indoor temp, humidity - BME280 - I2C
    - air quality measurement AHTX0+ENS160 - I2C
    - motion sensor s3km1110 - UART
    - adding buzzer and button
    - sending data to zabbix
    - displaying part of the data on the display
    - presentation of data in html format (simple page)
    - audio alarming about certain events (also based on data downloaded from the net)
    What I changed is that I moved the display backlight to GPIO16 (I had to release GPIO5 on software serial), I freed GPIO15 which was directly connected to GND. Overall it is possible to acquire 4 pins not counting TX and RX. I am still struggling for pins. I am of a good mind. Even if I don't manage to achieve all the goals, a lot of fun for many evenings is assured. What still puzzles me is the durability of this LCD and the killer static images. I have something similar running at my place in the form of a cobweb on modOLED091_I2C and after 6 months there are clouds, darker and lighter pixels.
    I was tempted by the looks when I bought it, but if I had a 3D printer I would make something similar on e.g. esp32-c3. There is of course a PRO version of the aforementioned gadget just for esp32.
  • #12 21382473
    perfi
    Level 14  
    Nice disassembly :) .
    I see correctly that the USB C is only used to provide power (to the AMS1117-3.3)? Or is there a usb controller hidden in there somewhere?
  • #13 21382478
    p.kaczmarek2
    Moderator Smart Home
    Only power, it was checked, there is not even sound when the cable is connected, although the cable itself has data lines (I checked later with my phone, it's a plus, such a cable will come in handy). Which is a pity, because if they had given the CH340 on board it would have been a nice platform to learn on.
    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #14 21382665
    John Yossarian
    Level 10  
    >>21381891 No need to fight over pins:) Better to extend the circuit with pceefa8574 and there you go.
  • #15 21383221
    Andrzej Ch.
    Level 33  
    I have had this device for a long time. When I started playing with this device it was firmware version 9.0.19. I reported to the project's author problems resulting from the device running on underdeveloped firmware (e.g. fading or disappearing animations, problem with wifi). It is now at version 9.0.26 and works rather stably.
    The openweathermap itself likes to show silly things sometimes. For the configuration I entered my own key obtained from openweathermap
    In general, I had a problem with the configuration at the beginning, because instead of the city code I entered the name: Rzeszów. It turned out that in the openweathermap system, "Rzeszów" is entered twice and in addition to that, a third time as the city code. Between these three places, the weather did not match, even though the location indications on the map were correct.

    So, for those to whom the indications and weather forecast do not agree too much with reality or other reliable forecasts, I suggest checking the website www.openweathermap.org for similar problems with duplicate locations.

    Ps. Somewhere on the internet I saw an article on how to get this device to work to upload ESPhome.
  • #17 21384397
    John Yossarian
    Level 10  
    As far as openweathermap is concerned, I have had as good an experience as possible. The indications and forecasts are very close to the measured ones. Only the pressure, but you know that the meteo service shows for sea level, and I measure at the actual altitude. The difference is 11.3Pa at 1m altitude. In the code, you only need to fill in the correct location ID https://openweathermap.org/find for the indications to be ok. It has been working for me for almost 2 years, modified project https://nicuflorica.blogspot.com/2023/03/statie-meteo-pe-afisaj-tactil-de-28-cu.html.
  • #18 21384486
    Karol966
    Level 31  
    Blimey, I already thought it was a perfect device (it could be a bit bigger) but it lacks an alarm clock. So, you still have to build a similar one yourself, e.g. on those yellow boards with ESP32 and TFT display, using the examples presented on the electrode I have set up a weathervane, added UTC time handling and wifi manager from the manufacturer's examples. All that's left to do is the alarm clock function + some icons and there's a finished device. With your own/open code, you can also add your googled notes and immediately upon waking up see what there is special in your plan for the day.

    PS. I know, I know, the phone has it all but the idea is to just get the phone out of the bedroom and not be disabled.
  • #19 21384793
    Andrzej Ch.
    Level 33  
    >>21384486 .

    How would this device wake you up if it doesn't even have a speaker by default?
    Firmware alone does not take care of the issue.
  • #20 21385609
    Karol966
    Level 31  
    Andrzej Ch. wrote:
    How would this device wake you up when by default there isn't even a speaker there?
    .
    Karol966 wrote:
    Shucks, I already thought this device was perfect


    Do you see what I wrote? I clearly wrote that
    Karol966 wrote:
    That means you still have to build a similar one yourself though
    .
  • #21 21386090
    p.kaczmarek2
    Moderator Smart Home
    If you have any project ideas then I would welcome submissions and suggestions as to what I can present and discuss further. What board with what display would I run?

    For the next part I plan to upload an ArduinoOTA to the gadget shown here, and then try to posterize it educationally from 0 via SPI. Then maybe LVGL separately, or some ready-made solution from the open source network.
    Helpful post? Buy me a coffee.
  • #22 21408783
    efi222
    Level 19  
    The gadget looks pretty cool. Only rather for users with good eyesight.
    I, however, am an advocate of weathervanes with local sensors.
  • #23 21472150
    p.kaczmarek2
    Moderator Smart Home
    I have been experimenting a bit more with this display recently. Based on the example code from the manufacturer, I managed to run the SPI in Mode3 and send sample colours to it:
    Green display with connected wires on a breadboard. .
    Code: C / C++
    Log in, to see the code
    .
    Helpful post? Buy me a coffee.
  • #24 21493876
    EmperorProdigy
    Level 4  
    Hello, does anyone know how to get the display working in Arduino IDE? I'm trying the following code but it's not working


    
    #include <Adafruit_GFX.h>
    #include <Adafruit_ST7789.h>
    
    #define TFT_DC    2    
    #define TFT_RST   4 
    #define TFT_CS    5  
    Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
    
    void setup() {
      Serial.begin(9600);
      Serial.print(F("Connexion ok"));
      tft.init(240, 240);
      tft.setSPISpeed(1000000); 
      tft.setRotation(2);
      
      tft.fillScreen(ST77XX_WHITE);
      testdrawtext("Hello Word", ST77XX_BLUE);
      
    }
    
    void testdrawtext(char *text, uint16_t color) {
      tft.setTextSize(3);
      tft.setCursor(0, 0);
      tft.setTextColor(color);
      tft.setTextWrap(true);
      tft.print(text);
    }
    void loop() {
      // put your main code here, to run repeatedly:
    
    }
    
  • #25 21493924
    p.kaczmarek2
    Moderator Smart Home
    I'm not sure if you're using a correct library for that, but even if you do, do you set SPI_MODE3?


    I can try that library later with my screen, if you're interested.
    Helpful post? Buy me a coffee.
  • #26 21494096
    EmperorProdigy
    Level 4  
    I think i tried setting it to SPI MODE 3 once but still it didn't seem to work. Im not sure if the issue is the spi mode or im setting the pins wrong, or this library has a CS pin option but display doesn't have CS pin i think...

    If you could figure it out how to get working with this library, or any other library that I can import into arduino, I'd really appreciate it 🙏
  • #27 21494179
    p.kaczmarek2
    Moderator Smart Home
    This code works for me:
    Code: C / C++
    Log in, to see the code

    Is it working for you?
    Helpful post? Buy me a coffee.
  • #28 21494545
    EmperorProdigy
    Level 4  
    Unfortunately while trying to solder a jumper board onto it i accidentally put too much solder on one point (was my first time soldering) , ill have to somehow figure out a way to clean it up then gonna test this code
  • #29 21494620
    p.kaczmarek2
    Moderator Smart Home
    Please post the high quality photo of the current state of the board and I will try to suggest some solutions.
    Helpful post? Buy me a coffee.
  • #30 21494900
    EmperorProdigy
    Level 4  
    I ended up just copping another one of the GeekMagic ultra as I didn't want to mess with the solder as it has lead and spilled on a large section of the board

    It wouldve been cheaper to probably work on a generic ESP8266 board with the TFT display but im working on a video series on the GeekMagic ultra specifically and already invested quite a bit of time into it so I dont mind spending the extra couple bucks

    I'll def run up the code as soon as it arrives xD

Topic summary

SmallTV-Ultra is a compact weather display device powered by the ESP8266, featuring a 1.5-inch IPS TFT screen with a resolution of 240x240 pixels. It can fetch real-time weather data and time from the internet, and allows users to upload images and animations via a web interface. The device is customizable, including a skin system for personalizing its appearance. Users have discussed its potential applications in various settings, such as kitchens and children's rooms, while also comparing it to other projects like the ThinkPulse weather station. Some users have expressed concerns about the display size and quality, while others have successfully integrated additional sensors for enhanced functionality. The device's firmware has been updated to improve stability and performance, and users have shared experiences with configuring weather data sources like OpenWeatherMap.
Summary generated by the language model.
ADVERTISEMENT