Git Product home page Git Product logo

freetouchdeck's Introduction

This is a fork for VSCode + PlatformIO instead of Arduino IDE

It will not follow and be updated with the original branch https://github.com/DustinWatts/FreeTouchDeck All the hard work haws been done by Dustin and the adaptation to PlatformIO by Kotl.

Installation of dependencies for VSCode and PlatformIO

  • Buy the ESP32 board and the IFI9488 display with touch - connect it all together - get an USB - MicroUSB cable, connect the ESP32 to your computer
  • Install VSCode https://code.visualstudio.com/
  • Install GIT-SCM (for VSCode to fetch github.com dependencies) https://git-scm.com/
  • Open up VSCode and go to "File - Preferences - Extention" and search for PlatformIO - install it
  • Restart VSCode
  • Download this GIT and unzip it somewhere
  • In VSCode - "File - "Open folder" and select the folder where the "platformio.ini" file is located
  • Push on the "Ant-face" on the leftside bar, expand the "nodemcu-32s-V1_ILI9488
  • Select "platform -> Build Filesystem Image" and then "Upload Filesystem Image" and wait for it to complete (the display should blink)
  • Select "General -> Build" (This will take a while) then select "Upload and monitor"
  • Bobs your Uncle! - Now select each corner of the display to calibrate the touch. And then just add the device as a "Bluetooth keyboard" in Windows/MacOS

image

FreeTouchDeck

For interfacing with Windows/macOS/Linux using an ESP32, a touchscreen and BLE.

ESP32 TouchDown users

Make sure to uncomment the line //#define USECAPTOUCH!
And if you wish to use the speaker uncomment the line //#define speakerPin 26

If FreeTouchDeck came pre-installed, you can find how to set up the configurator here:
https://github.com/DustinWatts/esp32-touchdown/wiki/With-FreeTouchDeck-pre-installed

Delete the old clone and use the new

Mixing files of different versions may cause some unexpected behavior!

Important to realise is that since this is a beta version, changes to te code happen frequently. The FreeTouchDeck.ino and other files (for example in the data folder) rely on each other, they come as one. So when you download the new version, make sure that you only use the files that come with the current download, and not files from other versions. Best practise is to completely delete the old version and then download/clone the new version to make sure you do not accidently mix files from different versions. After downloading/cloning the latest version, make sure to also upload the "data" folder again using 'ESP32 Sketch Data Upload".

Beta Version!

This version is in it's very early stages of development. Chances are that if you are not using the exact same setup as I am, you will run in to problems. But that is what this version is for: finding out what is needed to make FreeTouchDeck work across most ESP's and TFT screens. Also there is a lack of documentation which is gradually being written.

Hardware used

The hardware I currenlty use is:

For Resistive touch:

  • an ESP32 DEVKIT V1 (WROOM32) (Partition scheme: NO OTA with 2MB app and 2MB SPIFFS)
  • an 3.5" (480x320) TFT + Touchscreen with ILI9488 driver and XPT2046 resitive touch controller

For Capacitive touch:

  • an ESP32 DEVKIT V1 (WROOM32) (Partition scheme: NO OTA with 2MB app and 2MB SPIFFS)
  • an 3.5" (480x320) TFT + Touchscreen with ILI9488 driver and FT6236 capacitive touch controller

!- Library Dependencies -!

If you use capacitive touch:

Combiner PCB for an ESP32 DevKit C (38-pin only) + ILI9488 Touch Module:

https://github.com/DustinWatts/ESP32_TFT_Combiner

TFT_eSPI configuration

Before compiling and uploading the FreeTouchDeck.ino sketch, you will have to edit the user_setup.h file included with the TFT_eSPI library. This can be found in your Arduino skechtbook folder under "libraries". If you have not renamed the TFT_eSPI library folder, the file user_setup.h can be found in TFT_eSPI-master. Here you will have to uncomment the lines that apply to you hardware configuration. For example: if you have an TFT with an ILI9488 driver, you will have to uncomment that line under Section 1. Make sure all the other drivers are commented out!

The next section is Section 2. This also depends on what hardware you are using. For example for an ESP32 you'll have to uncomment the correct #define(s) under EDIT THE PIN NUMBERS IN THE LINES FOLLOWING TO SUIT YOUR ESP32 SETUP. Also if your TFT has the blacklight control pin available you will have to uncomment the lines found under #define TFT_BL and #define TFT_BACKLIGHT_ON.

"Section 3" can be left alone.

Help

You can join my Discord server where I have a dedicated #freetouchdeck channel. https://discord.gg/RE3XevS

freetouchdeck's People

Contributors

derkmdt avatar dustinwatts avatar kotl avatar tdroza avatar tubalainen avatar witnessmenow avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.