🤖Have you ever tried Chat.M5Stack.com before asking??😎
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
M5Stack Community
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Bitcoin / Multi Crypto Coin Ticker with 24 candlesticks chart

PROJECTS
24
88
319.2k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • X
    xvr
    last edited by xvr Mar 24, 2021, 6:12 AM Mar 9, 2021, 8:26 PM

    SOLVED!!!!!. My arduino software was not compiling the program correctly. Thank frittna for her work and willingness towards the community. Thanks for everything.

    alt textalt text

    Hello . I have a problem, as you can see in the image. Do you know how I could solve it? When it starts if it connects. but then the loop problem. Thanks.

    Wifi connection Lost!

    I help, please

    When the program loads, it connects to the Wi-Fi correctly, but then it only makes it connect and disconnect, and the Wi-Fi connection lost message appears.

    WiFiClientSecure client;
    if (!client.connect(restApiHost, 443)) {
    error("\n\nWiFi connection lost!");
    wifi_error = true;
    return false;
    }
    client.print("GET " + getRestApiUrl() + " HTTP/1.1\r\n" +
    "Host: " + restApiHost + "\r\n" +
    "Accept: application/json\r\n" +
    "User-Agent: BuildFailureDetectorESP8266\r\n" +
    "Connection: close\r\n\r\n");

    while (client.connected()) {
    M5.Lcd.fillCircle(101, topPanel + (infoPanel / 2), 4, TFT_YELLOW); //busy light yellow
    String line = client.readStringUntil('\r');
    line.trim();
    if (line.startsWith("[") && line.endsWith("]")) {
    DeserializationError err = deserializeJson(jsonDoc, line);
    if (err) {
    error(err.c_str());
    ws_error = true;
    return false;
    } else if (jsonDoc.as<JsonArray>().size() == 0) {
    error("Empty JSON array");
    ws_error = true;
    return false;
    }

    B 1 Reply Last reply Apr 3, 2021, 12:52 AM Reply Quote 1
    • B
      batucker @xvr
      last edited by Apr 3, 2021, 12:52 AM

      @xvr Do you have any details on how you fixed it not compiling correctly ? Currently experiencing the exact same issue with it connecting on startup but looping that Wifi connection lost thereafter...

      F 1 Reply Last reply Apr 3, 2021, 12:00 PM Reply Quote 0
      • F
        frittna @batucker
        last edited by frittna Apr 5, 2021, 3:34 AM Apr 3, 2021, 12:00 PM

        @batucker
        Hi, i was not able to track down the compatibility issue you both have. But it has to be related with my or your arduino version or wifi version used in it. It would be helpful if i would know if anybody has NO issues with my installation guide, since i know it is working for otheres too.. I was testing it on a fresh Win7x64 pc, my usual pc is win10 x64, Standalone or MS-AppStore-Version was no different and both are working good.

        But after all it would be best to make a quick version to load a precompiled BTC-PriceTicker file with the common SD-Loader App like many other apps from the community. With a seperate "settings.cfg" file which will be edited to only contains personal wifi settings and the coins you like to see. >>update: >>I tested the a promising ardunio library "SDConfig" which would be perfect but it will take some time to implement it..)

        even better would be an simple osd-settings menu with button access inside the PriceTicker but that's no easy job for me without the experience of coding this on the m5 yet.
        ...

        1 Reply Last reply Reply Quote 0
        • F
          frittna
          last edited by frittna Apr 24, 2021, 12:19 AM Apr 4, 2021, 3:23 PM

          I will post the end of my compiling log below so you can see my used lib versions.

          log:
          ...
          ...
          ...
          ...
          Multiple libraries were found for "WiFi.h"
          Used: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\WiFi
          Not used: D:\TMP\ARDUINO\arduino-1.8.13\libraries\WiFi
          Multiple libraries were found for "SD.h"
          Used: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SD
          Not used: D:\TMP\ARDUINO\arduino-1.8.13\libraries\SD
          Multiple libraries were found for "ArduinoJson.h"
          Used: C:\Users\myusername\Documents\Arduino\libraries\arduino_639782
          Not used: C:\Users\myusername\Documents\Arduino\libraries\arduino_333198
          Using library M5Stack at version 0.3.1 in folder: C:\Users\myusername\Documents\Arduino\libraries\M5Stack
          Using library WiFi at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\WiFi
          Using library Preferences at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\Preferences
          Using library Wire at version 1.0.1 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\Wire
          Using library SPI at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SPI
          Using library FS at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\FS
          Using library SD at version 1.0.5 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SD
          Using library SPIFFS at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\SPIFFS
          Using library Timezone at version 1.2.4 in folder: C:\Users\myusername\Documents\Arduino\libraries\Timezone
          Using library Time at version 1.6 in folder: C:\Users\myusername\Documents\Arduino\libraries\Time
          Using library WebSockets at version 2.3.0 in folder: C:\Users\myusername\Documents\Arduino\libraries\WebSockets
          Using library WiFiClientSecure at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\WiFiClientSecure
          Using library arduino_639782 at version 6.17.3 in folder: C:\Users\myusername\Documents\Arduino\libraries\arduino_639782
          Using library M5Stack-SD-Updater at version 0.5.2 in folder: C:\Users\myusername\Documents\Arduino\libraries\M5Stack-SD-Updater
          Using library Update at version 1.0 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\Update
          Using library Adafruit_NeoPixel at version 1.7.0 in folder: C:\Users\myusername\Documents\Arduino\libraries\Adafruit_NeoPixel
          Using library HTTPClient at version 1.2 in folder: C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\HTTPClient
          "C:\Users\myusername\AppData\Local\Arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0/bin/xtensa-esp32-elf-size" -A "C:\Users\myusername\AppData\Local\Temp\arduino_build_405473/Crypto_Coin_Ticker.ino.elf"
          Sketch uses 1079642 bytes (82%) of program storage space. Maximum is 1310720 bytes.
          Global variables use 52312 bytes (15%) of dynamic memory, leaving 275368 bytes for local variables. Maximum is 327680 bytes.

          btw: the one warning from "timezone" concerning a possible wrong architecture type while compiling the code is ok.. does not matter

          have luck

          1 Reply Last reply Reply Quote 0
          • S
            Silvereq
            last edited by Apr 8, 2021, 10:34 PM

            Ran into same problem.

            For me it was an issue with library/package versions - its important to stick exactly to the versions listed by @frittna
            // name: from: version search library manager exactly for:
            // ---------------------------------------+------------------------------------------+------ + --------------------------------------------------------------|
            #include "Free_Fonts.h" // Library | Arduino | | |
            #include <WiFi.h> // Board-pkg| -> Problems? look in the compiler log window what version of WiFi.h is used -> its the ESP32 version **see below |
            #include <Preferences.h> // Library | Arduino | | |
            #include <M5Stack.h> // Library | Arduino Librarymanager M5Stack | 0.3.1 | "M5Stack" |
            #include <Timezone.h> // Library | Arduino Librarymanager Jack Christensen | 1.2.4 | "Timezone" |
            #include <time.h> // Library | Arduino Librarymanager Michael Margolis | 1.6 | "timekeeping" |
            #include <WebSocketsClient.h> // Library | Arduino Librarymanager Markus Sattler | 2.3.0 | "Websockets" watch for the exact version! |
            #include <ArduinoJson.h> // Library | Arduino Librarymanager Benoit Blanchon | 6.17.3| "ArduinoJson" |
            #include "M5StackUpdater.h" // Library | Arduino Librarymanager SD-Menu Loader | 0.5.2!| "M5Stack SD" i use 0.5.2 , not new 1.0.2 because of problems |
            #include <Adafruit_NeoPixel.h>// Library | Arduino Librarymanager Adafruit NeoPixel | 1.7.0 | "Adafriut Neopixel" |
            #include "FS.h" // Tool | github: esp32fs for SPIFFS filesystem | 1.0 | https://github.com/me-no-dev/arduino-esp32fs-plugin |
            // ---------------------------------------+------------------------------------------+-------+----------------------------------------------------------------

            Also, be sure to use esp32 version 1.04 from the Board Manager. 1.06 did not work for me given the above versions.

            Cheers,
            Silvereq

            F 1 Reply Last reply Apr 9, 2021, 7:47 PM Reply Quote 0
            • F
              frittna @Silvereq
              last edited by frittna Apr 10, 2021, 3:52 AM Apr 9, 2021, 7:47 PM

              @silvereq
              thank you very much for your information

              i will update the instruction and btw, i am almost finished with a modified version of the code so that you can insert a config text file onto a sd card wich only has to contain the wifi-settings, timezone, pairs and the color of its name. I will updatede https://github.com/frittna/Crypto_Coin_Ticker soon.
              It will then be much easier to "burn" the compiled app into the M5 and nobody needs to compile on its own if he is not intended to change or improove the bitcoin price ticker

              thx!

              1 Reply Last reply Reply Quote 0
              • F
                frittna
                last edited by frittna Apr 18, 2021, 5:55 AM Apr 17, 2021, 9:53 PM

                Finally i updated my project to a version with a SD-Card config file for Wifi-Settings and coinpars, colors, etc.

                Now if you don't want to compile on your own you can load the precompiled .bin file with populair SD-Menu Loader App and get around all the hardcoding in Arduino-IDE with all the librarys and esp32 board manager..

                all you need is to flash my .bin and have a sd card with a folder in root called "ccticker" which holds the file "ccticker.cfg" and the "data" folder for the graphic files.

                I do not use SPIFFS memory anymore because it is easier without for the most people.. (btw: does anyone know if it is possible to burn with m5burner AND flashing spiffs together? Any info on m5burner to get the file and folder format right to flash a custom program like this?)

                have luck

                download my app at https://github.com/frittna/Crypto_Coin_Ticker/

                0_1618696511084_IMG_9.jpg

                W 1 Reply Last reply Apr 22, 2021, 7:17 PM Reply Quote 0
                • W
                  wwhite @frittna
                  last edited by Apr 22, 2021, 7:17 PM

                  @frittna I'm trying to build the application using the Arduino interface and I get one warning:

                  WARNING: library Timezone claims to run on avr architecture(s) and may be incompatible with your current board which runs on esp32 architecture(s).

                  I read a few article that say it still works even though the warning is displayed so I continued to try uploading to my M5Stack

                  When I compile and upload it completes 100%

                  Hash of data verified.

                  Leaving...
                  Hard resetting via RTS pin...

                  However the M5Stack never does anything other than display a blank (black) screen.

                  Any thoughts on why that would happen?

                  Thanks,

                  Walt

                  F 1 Reply Last reply Apr 22, 2021, 9:20 PM Reply Quote 0
                  • F
                    frittna @wwhite
                    last edited by frittna Apr 23, 2021, 5:26 AM Apr 22, 2021, 9:20 PM

                    @wwhite
                    hi!
                    maybe it is the wrong board manager? at menu: tools -> boards -> boardmanager - search for esp32 -> select version 1.0.4, not the new 1.0.6
                    have you tried the serial monitor to see what the serial output is? is there any, at 115200 baud rate?
                    btw: the one warning about avr architecture is no problem, its ok.

                    W 3 Replies Last reply Apr 22, 2021, 11:01 PM Reply Quote 0
                    • W
                      wwhite @frittna
                      last edited by Apr 22, 2021, 11:01 PM

                      @frittna Thanks for responding I appreciate your help. Thanks for confirming the Warning issue would be ok. I made certain I installed the 1.0.4 version per the instructions. I was able to grab some output from the serial monitor and it's this 9 lines constantly scrolling? Thanks again.

                      rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      ets Jul 29 2019 12:21:46

                      rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      invalid header: 0xffffffff
                      ets Jul 29 2019 12:21:46

                      1 Reply Last reply Reply Quote 0
                      • W
                        wwhite @frittna
                        last edited by Apr 22, 2021, 11:37 PM

                        @frittna OOPS - I lied to you! I seems that I no sooner installed the esp 1.0.4 version and the ide came up and said I had libraries with updates and I must have selected update. I found this because I thought I'd double check all of the libraries and the board versions. When I looked the board had changed to the latest version so I removed it and installed the 1.0.4. In a few minutes I was prompt regarding updates and this time I didn't allow the updates!

                        The good news is I'm up and running but stuck at Connecting to.........

                        If I'm compiling this way can I still use the config files on the sd card or do I have to hard code the wifi info?

                        Thanks again.

                        Walt

                        1 Reply Last reply Reply Quote 0
                        • W
                          wwhite @frittna
                          last edited by Apr 22, 2021, 11:49 PM

                          @frittna YAY I got it running. There was something strange with my sd card so I formatted it and out the config files back on it and now it's working. This is an awesome application you put together! This is going to be fun.

                          F 1 Reply Last reply Apr 23, 2021, 3:15 PM Reply Quote 0
                          • F
                            frittna @wwhite
                            last edited by frittna Apr 24, 2021, 12:24 AM Apr 23, 2021, 3:15 PM

                            @wwhite

                            Yeah !!! - I'm glad you figured out that the board manager was updated without your notice! This is helpfulf for others as they can easiliy run into the same scenario i guess. If the SD-Card in not read correctly it will at least give you some lines on the display and serial output. I use FAT32 on a 2GB SD and always "safe remove" before unplugging the card from cardreader.

                            @wwhite said:

                            If I'm compiling this way can I still use the config files on the sd card or do I have to hard code the wifi info?/

                            You can hardcode network settings but it doesn't matter and it's not intendet to do so in this sd-card version. When a sd-card is read-in and if the config file contains a ssid/password, it will use it. They will be stored in internal memory aswell (only ssid/pw1+2) and be used if no SD-card is inserted by accident.
                            In this case it should connect as usual but with the 4 default coinpairs and missing images from the /data/ folder as they are loaded from there.
                            BTW: I have an identical SPIFFS version on github (public folder) where you hardcode every setting in Arduino and have to upload all graphic files to the internal SPIFFS memory with esp32-data-upload tool, so no sd-card at all is needed.

                            But for me it was important to make a SD-card version to provide an much more "easy solution" - without compiling by yourself.
                            So theres no need to edit the Adruino code.

                            1 Reply Last reply Reply Quote 0
                            • A
                              Albman
                              last edited by May 4, 2021, 10:26 AM

                              Hi
                              thanks for setting this great project up! I got it running and I love it. I was looking quite some time for exactly this thing.

                              One question, when I would have the pair BTC EURO, how would I set that up in the code? Thanks! Timo

                              1 Reply Last reply Reply Quote 0
                              • A
                                Albman
                                last edited by May 4, 2021, 1:44 PM

                                Hi,
                                I figured it out by myself (so proud ;-) ) how to have BTC/€ displayed:

                                byte pairs = 2; // default: 8, total numbers of currency pairs, max 255
                                String pair_name[] = {"BTC/EUR", " BTC/$", }; //name for TopPanel (6-8 letters)
                                String pair_STRING[] = {"BTCEUR", "BTCUSDT", }; //name for url in BIG LETTERS
                                String pair_string[] = {"btceur", "btcusdt", }; //name for url in small letters
                                uint32_t pair_color[] = {TFT_ORANGE, TFT_PINK, }; //color in uint32_t format

                                Greetings Timo

                                1 Reply Last reply Reply Quote 0
                                • F
                                  frittna
                                  last edited by frittna May 5, 2021, 6:37 PM May 5, 2021, 10:31 AM

                                  thx!!
                                  Hi, yes you got it right. The name must be the same when you look at the part of the url accessing a usual binance market with your webborwser.

                                  But i wanted to mention that i have updated the App a bit more.
                                  There is no modification with Arduino in the code needed for adjusting the settings.
                                  Now you can easily burn the app with few clicks, no Arduino needed, if you don't want. You only need a config text file on the root of your sd-card from where settings are read in, then you can eject it or not as you want.
                                  All settings including wifi, coinpairs, etc will be saved internal. They will update when you put in a modified configuration. No data folder on SD-Card is needed for graphics anymore as they moved back to internal spiffs memory.

                                  You can simply use M5Burner_Crypto_Coin_Ticker.zip and edit the config file. All done.

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    kevinbrice
                                    last edited by May 16, 2021, 2:19 PM

                                    Hello all, thank you so much for the hard work on this project! I created a video demo flashing the M5Stack with the FW, changing the SD card configurations, and 3D printing a desk stand. I hope this helps more novice users get started https://youtu.be/3uQINs6fpio

                                    1 Reply Last reply Reply Quote 0
                                    • greenleafG
                                      greenleaf
                                      last edited by May 30, 2021, 10:01 PM

                                      Has anyone been able to port this to the Core 2? I tried but the SD Card library seemed to be incompatible.

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        m5er
                                        last edited by Jun 10, 2021, 8:11 PM

                                        I saw a crypto project on the M5Stack and had to comment!

                                        First of all congrats to @frittna for the good execution of the concept. Didn't try it myself, but looks great on the photos!

                                        Seven years ago I started working on a similar crypto project. Decided to go all the way from idea to market, not just because I love crypto, but because I wanted to gain the learning and experience on the way. It was worth it!

                                        I've seen a lot of "weekend projects", but none of them had the features I wanted or was easily configurable by non-technical people. So I brought my crypto project to a full commercial product. I call it the TicrThing - your dedicated price ticker. (sorry for the obvious ad)

                                        The previous versions had custom-made hardware, but they always lacked something... Once I discovered the M5Stack, I thought it was a perfect fit. So I completely re-wrote my code for the M5Stack, wrote also the server side, and released the new product earlier this year. Hope this helps bring the M5Stack platform to a wider audience!

                                        0_1623355690432_bg_2_detail.jpg

                                        P.S. It was not my intention to hijack the thread, but to share the story of a similar crypto project and how it evolved to use the M5Stack.

                                        1 Reply Last reply Reply Quote 0
                                        • F
                                          frittna
                                          last edited by frittna Jun 11, 2021, 11:47 PM Jun 10, 2021, 8:27 PM

                                          Hi, really nice to explore your project! You have really gone thought all the steps which i skipped so far on my ticker. (mobile app to config, fw updates, multiple sources, webstore) NICE and very professional.

                                          1 Reply Last reply Reply Quote 1
                                          • First post
                                            Last post