Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
There's quite a few of these open source touch deck clones now. This one is by far the cheapest and also one of the best looking. I'm calling it the winner right now !! Great job !
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Thanks Dustin awesome project. I love the open source community people are so generous. This is an amazing projects thanks for sharing it with us all for free. I already ordered a couple pcb boards and will be building my own soon.
The device is great! It would be nice for the device to read the actual state of functions it controls instead of device side latch. Might be impossible with it emulating just a usb keyboard though.
I was thinking about that. The difficulty is that would mean some kind of integration with the application or operating system. I'm currently working on a host application that run on the computer that act's as go between.
@@DustinWatts I could easily write a Windows program that sends the currently in-focus program via telnet. This would also allow the touchdeck to send commands a keyboard can't handle, ie: open a program
I have all of the parts on my bench and this is so well done, that I'm sad I have no need for such a device. Kudos to you, Dustin. I also appreciate your shout-out to the other makers that inspired and facilitated this project.
Thank you Andrew for your nice complement! Maybe a future version will include a feature you do need ;) Without other makers, I would probably not be a maker.
Amazing work. One suggestion I'd like to make though is F24 compatibility. Adding the possibility to use macros with the F24 key would allow for an incredible amount of variety
I wanted to build this but there are so many good Alternatives using old phones or Tablets Like Touch-Portal. But cool Project to build and i think its more about Creating than using.
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Very nice job. I have one comment about your use of a latching button for mute: because you are using the same key code (F11) for both mute and unmute, it would be easy for this to get out of sync, and end up indicating the opposite of what the state is in OBS. For example, if for any reason OBS missed a keystroke, or if you had muted it from the computer's F11 key, the state shown on the TouchDeck would be incorrect. What I would suggest is having TouchDeck generate different codes for mute and unmute, and setting OBS up similarly.
Hi Jim. you are absolutely right. There is no feedback between OBS (or the whole computer for that matter) and FreeTouchDeck. Although I never had OBS skip a keystroke, if the initial state of both is not the same or indeed if you use your regular keyboard this can happen.
Nice video, but I would suggest Touch Portal instead, it’s much more powerful than all the alternatives out there and can be used on almost any mobile device you have! There is also a Linux release coming soon. Keep up the good work!
Fantastic! I have one of these screens -- was going to use it for a different project, but that fell through. Gonna see if I can build one of these, for sure... but I think I'm going to try to put a couple encoders on it, so there is a sort of 'scroll' function... maybe even put a couple hard coded buttons to act as mouse buttons.
I just use my old phone, which has better touch, haptic, speaker, even motion and video (which i don't use yet). An html+css interface offers many "widgets", and uses "ajax" to ping an ESP32 acting as a BT keyboard. For more complex PC actions, i use AutoHotKey.
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
looks cool, did not even know touch screens are so available, gave me lots of ideas, but i guess that the whole appeal of the "eltago streamdeck" is the tactile feedback that a button would give you;
Thanks! The are becoming more and more cheaply available. And I agree if you want a tactile feel, this might not be for you. Luckily, there are some tactile DIY projects out there. FreeDeck (which was a big inspiration for this project) is one of them!
Great stuff, the Deck market is so new Elgato has the monopoly and can afford to charge upwards of 120-200$ for one of these things. I always wondered why not a single other brand was selling these, I then thought about patents, but it's such a weird thing to have exclusive rights of, the truth is, these Open Source solutions made by engineers on their free time, are absolutely crucial and the proof these devices are very overpriced. I've been using an old 'Revoltec Fightpad advanced' from 2007 that came as an offer with the Keyboard, it has included software and ~20 programmable keys (with Macro/Toggle/Key Press), I've been printing plastic Stickers to put on top of each Keycap, and it has worked very nicely so far, but this new 20$ solution is just great, with the added functionalities of Stroke and Color for the 'Mute', it's really tempting me to spend the 20$ for the DIY.
Truth be told, Elgato's Stream Deck works quite a bit different then a macro keypad. But for most tasks a simple keypad is more then sufficient! And regarding patents, I'm not a lawyer, but doing something in a similar way is not a patent violation. Using copyrighted designs/software is. The thing is, that to get a commercial product up to a level that is can compete with Stream Deck is very costly.
@@DustinWatts Actually it is the over way around. Patents avoid building other products in simular way. They should be granted only if they are something new beyond something being a normal developement any avarage engeneer can do. Sadly it's often granted for trivial developments, and it is hard and costly prozess to fight against trivial patents. On the other side patents only avoid commercial use. Anyone can make a copy themself for privat use, so patents practicly have very low effect on open source projects. Patents only aply to "technical solutions". Software is only a technical solution if part of a technical product. It is valid for 20 years. The patent has to be published (with some exeptions to military inventions). On the other side there is the protection for pieces of art, which is called copyright. "Art" ist keept very wide; even the one milionst photo of the sunset on a beach is copyrighted (but only forbids to copy or modify the picture, not to take your own at sunset on ther same beach). copyright is valid until 80 years after death of the person who made the piece of art. Copying a piece of art is forbidden, exeptions are different depending of the country you live (f.e. in germany you are allowed making a private copy for yourself and close friends unless working around a copy protection system). But you are not allowed to publish copyrighted material or any modification of it without the owners permission. Such copyrighted material can be icons, a special GUI design etc., depending on your country´s laws also software. So if you use only parts you developed yourself or used parts being open source, no problem with copyright. Also no problem with patents if you stay open source. But even a donation button can push you over the line of "commercial". One prominent example of open source wich would be illegal if sold commercialy: "lame" as an alternative for mp3 encoder. The Frauenhofer Institut had the patent (it is expired some years ago). "Lame" used same patented methods, but was not commercial. But many software using lame was (even a "donation" button makes a software commercial). So many software was prepeared to use lame, but the user independently had to download and install it, as the maker of the software with donation button would have to pay for the patend usage if he would have delivered his software with lame. After patent expired for mp3 now, independend programmed mp3 encoders can now be shipped with commercial software. The original mp3-codec of course can not, as in most countrys the software itself has still copyright. So for mp3 alternative commercial (!) encoders where illegal for 20 years (and a 1:1 copy from the original was illegal of course too) due to the patent, but now only a normal copyright apllys, so now alternative programs using the same principle are legal even commercially.
Awesome Dustin. If possible, could you add this functionality to Home Assistant? FreeTouchDeck + Home Assistant = The scenarios are unimaginable. Would be great if possible. Thanks
you should look into hooking a websocket connection to obs with this then you won't need to program hotkeys you can just have the websocket directly interact with obs for a more seemless integration
Yes, I have looked in to that option the issue atm is that the screen, BLE and WiFi take up a lot of resources. So it is not really an option to use them all at he same time without running in to issues.
@@DustinWatts I only mention it since I've done something similar in the past using it and it'll work from virtually any device with a webbrowser, so raspberry pi, phone, ipad, or pc of any OS link to screenshot as example -> cdn.discordapp.com/attachments/551840398016774193/813676399357460490/unknown.png
Curious if i can make this work on the cheap yellow display without having to make any adjustments. ( incase you dont know the cheap yellow display is basically an esp32 with the screen already attached to it)
You can, but not with my version. There is a version (Github fork) that does kinda work. Don't remember the link, but if you join my Discord, the person who made it is there!
That is absolutely an option. You can, if you want, not display the buttons but just the logos so that you can have the physical boundaries as buttons. Colin Hickey I believe is taking that approach.
This looks brilliant - well done - a few questions if you please: 1) Do I need to know any coding for this is it so simple a non coder can set it up? 2) Can you use 2 at the same time? What would happen if 2 people (me and my daughter) were to use them at the same time? can this be done?
Hi Matty! 1) You do not need to know any coding. Although you will need to know how to upload code using the Arduino IDE. 2) You can use as many of these as your computer supports keyboards. 3) There is a design for a 3D printed case freely available. If you need some help, you can join my Discord server!
@@DustinWatts Thank you. Unfortunately I just asked my daughter if she wants one and she is determined to get the 15 button Elgato one. I'm sure I could have at least 5 of these for the cost of one of them, I'll put this on the todo list. :)
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Can you show how you powered these? I wouldn't mind building one of these for a gift (but mostly for fun) but figuring out power isn't something that comes easy to me.
Any chance this project example can be updated to the ESP32-S2? They're eveerywhere these days, more powerful, more easily programmable, and just as affordable as the original.
Well... you would be missing BLE. Full S3 version is coming and the current build should support it both BLE and ESP32's USB keyboard, but I have had no real time to see if it stays stable.
@@DustinWatts Is Bluetooth really necessary when it has proper host mode support and device emulation? It's your project ultimately, no criticism meant, just floating ideas.
@@KiraSlith Not taken as criticism, don't worry :D Not strictly needed, but it would be so much re-writing that I personally skip the S2 and go for the S3.
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Does this work with the online freedeck web app? Or is it only with the freetouchdeck configurator? Also is it possible to print text with this setup? Like is there an option to do that on the configurator? I ordered an ESP32 touchdown and can’t wait to get it! Looking forward to your response!
No... those configurators are not compatible. Text on a button is not an option in the current version. But there is a development version on Github with lots of different features including that one. The one that is missing is the configurator. So you manually need to edit the .json config files. Thanks for ordering and ESP32 TouchDown!
@@DustinWatts thank you for the response! I’ll have to look into it as I am not familiar with json. Fingers crossed it goes smooth. If you have any guidance on this please let me know!
@@DustinWatts I think I miss understood what you meant by the text part. I was asking if there is an option in the configurator to send plain text. I use pre written emails and would like the option to press a button to past the template. Hopefully that made more sense!
You skipped over the PCB, which is another thing added to the cost. (because i highly doubt you bird nested the circuit between the LCD breakout and the ESP32)
Well the part about the configurator show a bit on how to do this. The button matrix is in this version fixed. But will be fully customisable in version 2. Which is now on the `-development` branch on Github.
This is great! I think I'd like to make a version of this that incorporates a rotary encoder for precisely adjusting things like frame position in a video editor!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Yes it will work. Just have to change the User_Setup.h of the TFT_eSPI library to the correct pins. But I am sure the documentation of the WT32-SC01 will tell you all that you need to know!
@@DustinWatts thanks for your answer. I already ordered that module. I want to contribute in that project. I wonder if ips module has compatible driver too
@@vavanbonus I depends on the driver, look at the TFT_eSPI library to see if it supports it. If not, open an issue because Bodmer does his best to support as much modules as possible!
This is amazing, I'd love to use something like this but with USB integration instead of Bluetooth. Is it currently not possible because of the lack of libraries for it? Anyway, good job!
Thanks Sam! Currently it is not possible by the lack of an USB HID on the ESP32. You could connect the ESP32 to an USB HID IC that would make it possible. I have an CH559 to play with. I'll let you know if that is an option!
Would it be possible to turn this into a remote control for smart home via Home Assistant? I can imagine having this mounted next to my bed for quick scene access.
Hi, Am working for 2.4inch SPI TfT LCD with Arduino ide on Arduino Uno r3, But after uploading the code it is showing only white screen. Have reconnected multiple times, check with different codes. But same issue. Mine lcd is non touch, and am not using Arduino shield tft lcd. How to solve this issue . any idea
This project is not for an Arduino. But if you have issues with your screen, it is usually a wiring issue. You can always search the issues on the TFT_eSPI library or open a new issue.
There is. But only with the ESP32-S3 which has native USB HID support. You also will need to compile the code (the Arduino Sketch) yourself because you will need to change some #defines in the code. With the original project it is not possible.
Unfortunately when I made it, I hard coded it al. So yes, you are "stuck" with 5 menus, with 5 buttons, and 3 actions. We are really far in unlimited menus, buttons, and actions in version 2. The only thing is that in the V2 there in no configurator yet. So you have manually edit the JSON. So, the answer is "no", with the addition '"not yet" :)
It is possible. But unfortunately, due to the large RAM footprint of this code. BLE and Wifi can not run at the same time. But I have some examples for my ESP32 TouchDown that show you how to do this: github.com/DustinWatts/esp32-touchdown/blob/main/Examples/ESP32_TouchDown_HA/ESP32_TouchDown_HA.ino
I've been playing with this idea myself, but something that's a must for me is being able to control the backlighting through software. On/off is a must, dimming would be very nice. Does anyone know of an affordable touch screen that has this functionality? I have a Raspberry Pi and ESP32s laying around, so a screen that works with either would be fine.
Hi Tim, the screen I use has backlight control and is dimmable through FreeTouchDeck. On/off is not out of the box possible but is easy to implement by allowing dimming to 0%.
@@DustinWatts Interesting. Do you know if those screens are available in larger sizes? 3.5" is a bit small for me, but I can't find anything bigger, probably since I'm not quite sure what to look for.
@@timderks5960 No you are correct. The biggest screen If found as a module that you can directly use with a microcontroller is 3.5". I also can't find any bigger.
There is a 6 different "colours" on Ali Color: ESP-WROOM-32 Color: ESP-32 30Pin unweld Color: ESP-32 38Pin Color: ESP32-WROOM-32D Color: ESP-32 30Pin weld Color: ESP32-WROOM-32U Which one should I take?
@@DustinWatts You're very welcome. I am immediately replicating your result, and will be using it as my FreeTouchDeck for streaming and filming in The Makers Workshop studio! Should be fun.
4mb of Flash Memory don’t seem to be enough, or am I doing something wrong. It says it uses 123% of the variable space, is there a way to increase that without buying a new board? (Doit esp32 devkitv1)
Absolutely. If you change the partition scheme you have more room for the sketch. In the Arduino IDE, under "Tools" -> "Partition Scheme", select: "NO OTA (2MB APP/2MB SPIFFS)". Now I don't believe the DOIT board has that option. But you could add that yourself. github.com/espressif/arduino-esp32/issues/1906 may be a starting point for you.
I would love to make this but I am realy bad at elektronics, I also have some outher extra's in mind and I have an arduino uno instead of what you have
Hi Wolf! Using an Arduino is going to be quite difficult, as the code is written for an ESP32 using Bluetooth and WiFi. Also the Arduino has 5V on it's IO's and the screen uses 3.3V logic. I would suggest picking up a ESP32 DevKitC, which is just a few dollars. If you like some help soldering, join my Discord server and I'm sure we will get it working!
There is a step by step video here :ruclips.net/video/s2X4BQ9VmEU/видео.html Also in the comment section of that video you will find written versions of a step by step guide. Have fun!
I'd like to have something like this to input stings, like usernamepassword with multiple user/passwords. We support remote computers for a customer with multiple computers at each site, each requiring a different user/password, and some are quite complex, but the same user/password is used for each same computer at each site"so like "Primary Server", "Secondary Server", "Manager PC" etc.. So even a primary button like "Servers" with secondary buttons appearing as "Primary Server", "Secondary Server" etc would be nice. It seems your script only allows for a single character for each command, but would be nice if it could produce a sting. Do you have any project like this? Thanks.
@@DustinWatts After watching your 2nd video, you used the ESP32-WROOM-32D, not the one listed as "38 PIN" on AliExpress. If I'm right, the only difference is the mounting holes on the PCB board.
@@RobertCole1981 On the PCB I'm using the 38 pin version. If you are not using the PCB it doesn't matter which ESP32 you get. If you use the PCB, you will need the 38-pin version, because the pins are in different places on different boards.
I have written an helper app that runs on the host computer, where you can execute a command-line/terminal commands. For example run a script, but a telnet command should also work. The app is not public yet, but you can join my Discord server where I have shared the first version.
Sadly toasted 2 ESP32 boards while trying to get a DRV8825 functioning with a stepper motor today. I hate wiring those up on a breadboard, but when tried a PCB designed for a single driver, it was so weak. Not a fan of questionable products in between known good products, but I'd like to find an easier solution than a driver on a breadboard. @@DustinWatts
@@DustinWatts What capacitive touchscreen module is most recommendable right now? (touchscreen only, not entire kit including ESP32) Or is it more cost effective to simply buy some combo and desolder touchscreen later if I want to use it without the ESP32 board it ships with?
@@OMNI_INFINITY Unfortunately the latter won't work. This is different type of module that after desoldering you can't connect any where else then the same SMD footprint. The one linked in the description is one of the cheapest modules I can find. And I regularly update it. But, maybe if you search for and ILI9488with touch screen, you get a cheaper board with all the pins broken out. Make sure you get a TOUCH version! :D
Hard, not really. But a lot of work! Because when I starting coding, I didn't make it flexible enough for myself. But as this is requested a lot, I am writing an update. But it could take some time...
@@sancon_off9400 Well I am working on a ESP32 S3 version which can do USB. But it is not yet ready for any release. If you do not have BLE, I recommend the Bluetooth CSR 4.0 Dongle. It is $10 and it works like a charm. It is the same I am using.
@@sancon_off9400 I also have a bunch of them. Maybe too much... haha) The problem is all the tasks that need to be done on an Arduino. An Arduino runs at 20Mhz, the ESP32 at 240Mhz. An arduino would be to slow to have a nice experience. I have an Instructable, a step by step guide and link is below. A link to a working ESP32 is also below.
This is a fantastic result mate! Well done!
Thanks Seon! It took some time to get it to this point. I've had a lot of cold coffees the past few months ;)
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
There's quite a few of these open source touch deck clones now.
This one is by far the cheapest and also one of the best looking.
I'm calling it the winner right now !! Great job !
Wow! Thanks @Edward Fletcher!
Amazing. I think this is a fantastic adaptation. Nice one Dustin, I’m buying bits straight away...
Thanks Adam! Thanks for the inspiration!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Best Stream Deck Alternative I have seen.
Wow! Thank for that compliment!
Thanks Dustin awesome project. I love the open source community people are so generous. This is an amazing projects thanks for sharing it with us all for free. I already ordered a couple pcb boards and will be building my own soon.
You are welcome @mad! I hope you enjoy it and if there is anything you need help with, just ask!
The device is great!
It would be nice for the device to read the actual state of functions it controls instead of device side latch. Might be impossible with it emulating just a usb keyboard though.
I was thinking about that. The difficulty is that would mean some kind of integration with the application or operating system. I'm currently working on a host application that run on the computer that act's as go between.
@@DustinWatts I could easily write a Windows program that sends the currently in-focus program via telnet. This would also allow the touchdeck to send commands a keyboard can't handle, ie: open a program
I have all of the parts on my bench and this is so well done, that I'm sad I have no need for such a device. Kudos to you, Dustin. I also appreciate your shout-out to the other makers that inspired and facilitated this project.
Thank you Andrew for your nice complement! Maybe a future version will include a feature you do need ;) Without other makers, I would probably not be a maker.
Amazing work. One suggestion I'd like to make though is F24 compatibility. Adding the possibility to use macros with the F24 key would allow for an incredible amount of variety
In the newest release, F13-F24 is supported! :)
This looks great! I might have to pickup a couple of those displays...
A couple? How many are you planning to make? :)
This is super cool!
You are welcome BDscenes, glad you like it! :)
I wanted to build this but there are so many good Alternatives using old phones or Tablets Like Touch-Portal. But cool Project to build and i think its more about Creating than using.
Web interface looks great! Well done app, feature rich, gonna build one righ tnow!
Thanks Tablatronix! Let me know how it goes!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Really cool project, great documentation, and active responses to comments. More people need to see your content
Thanks! What a lovely comment! I try to respond to all comments, because the community helps me out a lot and I really appreciate it!
This is excellent guide Dustin! I've seen Adam Welch video a long time ago and this is really great adaptation or improvement on FreeDeck!!!
@BeardedTinker Thanks! I prefer adaptation, to not take away from the greatness of FreeDeck ;)
Another cool project Dustin.
Thank you pileofstuff! I appreciate it!
Very nice job. I have one comment about your use of a latching button for mute: because you are using the same key code (F11) for both mute and unmute, it would be easy for this to get out of sync, and end up indicating the opposite of what the state is in OBS. For example, if for any reason OBS missed a keystroke, or if you had muted it from the computer's F11 key, the state shown on the TouchDeck would be incorrect. What I would suggest is having TouchDeck generate different codes for mute and unmute, and setting OBS up similarly.
Hi Jim. you are absolutely right. There is no feedback between OBS (or the whole computer for that matter) and FreeTouchDeck. Although I never had OBS skip a keystroke, if the initial state of both is not the same or indeed if you use your regular keyboard this can happen.
As allways nice Project from Dutch Engeneer. Thanks for Sharing.
seriously well put together video
Thank you Mark, I appreciate the compliment!
wow, great work Dustin.
Thanks John!
This is great! Congratulations
Thanks James!
@@DustinWatts oh and if you want a wired USB version, then an STM32 module, like a blue pill, might be the answer.
Nice video, but I would suggest Touch Portal instead, it’s much more powerful than all the alternatives out there and can be used on almost any mobile device you have! There is also a Linux release coming soon. Keep up the good work!
Fantastic! I have one of these screens -- was going to use it for a different project, but that fell through.
Gonna see if I can build one of these, for sure... but I think I'm going to try to put a couple encoders on it, so there is a sort of 'scroll' function... maybe even put a couple hard coded buttons to act as mouse buttons.
That is a good idea! There are plenty of GPIOs unused, so plenty of room for expansion!
Are you insane? this thing is awesome!! Great job!
Thanks! About insanity... opinions vary! :)
@@DustinWatts hehe you should be a guest on my podcast and we can let the audience decide!
The man is a legend
I do not agree, but thank you for your compliment! :D
That touchscreen is a nice find. You can get them from several places, but not for that low a price.
If you are willing to wait, from AliExpress they are not that expensive.
This is really cool! Thanks!
Thanks Mat! Appreciate it!
Wow awesome. I ll build it. Thanks for the great work
Thank you Andrea, for your great compliment! Have fun building it :)
I just use my old phone, which has better touch, haptic, speaker, even motion and video (which i don't use yet). An html+css interface offers many "widgets", and uses "ajax" to ping an ESP32 acting as a BT keyboard. For more complex PC actions, i use AutoHotKey.
Now I will be able to find it! Should have subbed straight away!
Indeed! Regardless of this project ;) Just kidding, thanks for the sub and I'm looking forward to your build!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
looks cool,
did not even know touch screens are so available, gave me lots of ideas,
but i guess that the whole appeal of the "eltago streamdeck" is the tactile feedback that a button would give you;
Thanks! The are becoming more and more cheaply available. And I agree if you want a tactile feel, this might not be for you. Luckily, there are some tactile DIY projects out there. FreeDeck (which was a big inspiration for this project) is one of them!
@@DustinWatts i hoped that the "eltago streamdeck"© reference would have come through :)) ; i saw video;
keep up the good work,
cheers!
Just coming up to a task using OBStudio and I think this may be a HUGE help to automate it a bit. Thanks.
It is used a lot for OBS :)
GREAT!!! Cheers from Italy!
Thanks from The Netherlands! ;)
Well done! Will try to do this one....
Thanks! Let me know how it works for you!
Great stuff, the Deck market is so new Elgato has the monopoly and can afford to charge upwards of 120-200$ for one of these things. I always wondered why not a single other brand was selling these, I then thought about patents, but it's such a weird thing to have exclusive rights of, the truth is, these Open Source solutions made by engineers on their free time, are absolutely crucial and the proof these devices are very overpriced.
I've been using an old 'Revoltec Fightpad advanced' from 2007 that came as an offer with the Keyboard, it has included software and ~20 programmable keys (with Macro/Toggle/Key Press), I've been printing plastic Stickers to put on top of each Keycap, and it has worked very nicely so far, but this new 20$ solution is just great, with the added functionalities of Stroke and Color for the 'Mute', it's really tempting me to spend the 20$ for the DIY.
Truth be told, Elgato's Stream Deck works quite a bit different then a macro keypad. But for most tasks a simple keypad is more then sufficient! And regarding patents, I'm not a lawyer, but doing something in a similar way is not a patent violation. Using copyrighted designs/software is. The thing is, that to get a commercial product up to a level that is can compete with Stream Deck is very costly.
@@DustinWatts Actually it is the over way around. Patents avoid building other products in simular way. They should be granted only if they are something new beyond something being a normal developement any avarage engeneer can do. Sadly it's often granted for trivial developments, and it is hard and costly prozess to fight against trivial patents.
On the other side patents only avoid commercial use. Anyone can make a copy themself for privat use, so patents practicly have very low effect on open source projects.
Patents only aply to "technical solutions". Software is only a technical solution if part of a technical product. It is valid for 20 years. The patent has to be published (with some exeptions to military inventions).
On the other side there is the protection for pieces of art, which is called copyright. "Art" ist keept very wide; even the one milionst photo of the sunset on a beach is copyrighted (but only forbids to copy or modify the picture, not to take your own at sunset on ther same beach). copyright is valid until 80 years after death of the person who made the piece of art. Copying a piece of art is forbidden, exeptions are different depending of the country you live (f.e. in germany you are allowed making a private copy for yourself and close friends unless working around a copy protection system). But you are not allowed to publish copyrighted material or any modification of it without the owners permission.
Such copyrighted material can be icons, a special GUI design etc., depending on your country´s laws also software.
So if you use only parts you developed yourself or used parts being open source, no problem with copyright. Also no problem with patents if you stay open source. But even a donation button can push you over the line of "commercial".
One prominent example of open source wich would be illegal if sold commercialy: "lame" as an alternative for mp3 encoder. The Frauenhofer Institut had the patent (it is expired some years ago). "Lame" used same patented methods, but was not commercial. But many software using lame was (even a "donation" button makes a software commercial). So many software was prepeared to use lame, but the user independently had to download and install it, as the maker of the software with donation button would have to pay for the patend usage if he would have delivered his software with lame. After patent expired for mp3 now, independend programmed mp3 encoders can now be shipped with commercial software. The original mp3-codec of course can not, as in most countrys the software itself has still copyright.
So for mp3 alternative commercial (!) encoders where illegal for 20 years (and a 1:1 copy from the original was illegal of course too) due to the patent, but now only a normal copyright apllys, so now alternative programs using the same principle are legal even commercially.
Excellent ordering parts now 😎👍
Excellent! The more people built it, with their help I can make it better!
Awesome Dustin. If possible, could you add this functionality to Home Assistant? FreeTouchDeck + Home Assistant = The scenarios are unimaginable. Would be great if possible. Thanks
Hi Bharath! I'm working on some features that allow some form of MQTT communication or even API calls!
@@DustinWatts thanks. Awaiting for the integration
This is great!
Thanks! Glad you like it!
Amazing! I love it!!
Thanks! Glad you like it :D
@@DustinWatts would love to see more like this o_o
@@DanelonNicolas There are some more videos on my channel and I am also working on an update video
you should look into hooking a websocket connection to obs with this then you won't need to program hotkeys you can just have the websocket directly interact with obs for a more seemless integration
Yes, I have looked in to that option the issue atm is that the screen, BLE and WiFi take up a lot of resources. So it is not really an option to use them all at he same time without running in to issues.
@@DustinWatts I only mention it since I've done something similar in the past using it and it'll work from virtually any device with a webbrowser, so raspberry pi, phone, ipad, or pc of any OS link to screenshot as example -> cdn.discordapp.com/attachments/551840398016774193/813676399357460490/unknown.png
Curious if i can make this work on the cheap yellow display without having to make any adjustments. ( incase you dont know the cheap yellow display is basically an esp32 with the screen already attached to it)
You can, but not with my version. There is a version (Github fork) that does kinda work. Don't remember the link, but if you join my Discord, the person who made it is there!
Superb. GitHub starred :) I might adapt the case you've done so that there's physical dividing strips for the buttons, I like a bit of touch feedback
That is absolutely an option. You can, if you want, not display the buttons but just the logos so that you can have the physical boundaries as buttons. Colin Hickey I believe is taking that approach.
that honestly looks better than the stream deck
Thanks XPVM!
This looks brilliant - well done - a few questions if you please:
1) Do I need to know any coding for this is it so simple a non coder can set it up?
2) Can you use 2 at the same time? What would happen if 2 people (me and my daughter) were to use them at the same time? can this be done?
Hi Matty! 1) You do not need to know any coding. Although you will need to know how to upload code using the Arduino IDE. 2) You can use as many of these as your computer supports keyboards. 3) There is a design for a 3D printed case freely available. If you need some help, you can join my Discord server!
@@DustinWatts Thank you.
Unfortunately I just asked my daughter if she wants one and she is determined to get the 15 button Elgato one.
I'm sure I could have at least 5 of these for the cost of one of them, I'll put this on the todo list. :)
This is great! Would it also be possible to adapt your code to a larger display with more buttons?
Possible yes... easy no. But you are welcome to give it a shot. There a people in my Discord who also are working on this so feel free to join!
Great work
Thanks
Really like it :)
Thanks Aaron! A wearable version would be nice ;)
No worries Dustin. Aaron will use one of those cheap Chinese Bluetooth thermometers and hack that functionality into it 😅
@@Hasitier I'm keeping my fingers crossed! :)
It's a really nice project Dustin! This video also made me remember that I need to sharpen my OBS skills :)
Thanks! With this... almost no skill required ;)
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Can you show how you powered these? I wouldn't mind building one of these for a gift (but mostly for fun) but figuring out power isn't something that comes easy to me.
You can power it via the ESP32. Via a USB cable straight in to the micro USB socket.
@@DustinWatts lol thats it? i didnt think it would provide enough for the screen and the bord together. thank you!
Looks like something I might have to look in to, as I can never find the mouse on the bench when using OBS.
I regularly grab the wrong mouse... either my laptop mouse or the one attached to my microscope :)
Wow, absolutely wonderful. Great job. Is it possible to connect a larger touchscreen with a bigger resolution?
Thank you in advance
Any chance this project example can be updated to the ESP32-S2? They're eveerywhere these days, more powerful, more easily programmable, and just as affordable as the original.
Well... you would be missing BLE. Full S3 version is coming and the current build should support it both BLE and ESP32's USB keyboard, but I have had no real time to see if it stays stable.
@@DustinWatts Is Bluetooth really necessary when it has proper host mode support and device emulation? It's your project ultimately, no criticism meant, just floating ideas.
@@KiraSlith Not taken as criticism, don't worry :D Not strictly needed, but it would be so much re-writing that I personally skip the S2 and go for the S3.
That look so good !
I have 2 left hand but i’ll try it. Just to know, the 2 lines of 3 icons is a limitation or just an aesthetic choice? Thanks
For now it is a limitation. But not because it has to be. I'm constantly improving on the code, and more buttons per screen is high on my list!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
Does this work with the online freedeck web app? Or is it only with the freetouchdeck configurator? Also is it possible to print text with this setup? Like is there an option to do that on the configurator? I ordered an ESP32 touchdown and can’t wait to get it! Looking forward to your response!
No... those configurators are not compatible. Text on a button is not an option in the current version. But there is a development version on Github with lots of different features including that one. The one that is missing is the configurator. So you manually need to edit the .json config files. Thanks for ordering and ESP32 TouchDown!
@@DustinWatts thank you for the response! I’ll have to look into it as I am not familiar with json. Fingers crossed it goes smooth. If you have any guidance on this please let me know!
@@DustinWatts I think I miss understood what you meant by the text part. I was asking if there is an option in the configurator to send plain text. I use pre written emails and would like the option to press a button to past the template. Hopefully that made more sense!
@@nerdtowncity5930 Both are not an option in the current version. But both of them are possible in de -development branch.
You skipped over the PCB, which is another thing added to the cost. (because i highly doubt you bird nested the circuit between the LCD breakout and the ESP32)
Well I mentioned that it is optional. Absolutely not necessary.
hey super leuke video. Dit is echt handig bedankt
Graag gedaan! :D
how could I add physical buttons and knobs to control each setting?
There are some unused pins broken out you can use for pushbuttons. Als you could connect a I2C GPIO expander if you need a lot :)
do you have a video how to make GUI and change the icon
Well the part about the configurator show a bit on how to do this. The button matrix is in this version fixed. But will be fully customisable in version 2. Which is now on the `-development` branch on Github.
This is great! I think I'd like to make a version of this that incorporates a rotary encoder for precisely adjusting things like frame position in a video editor!
That would a be a great addition!
Zack Freedman did a built like that.
Looked out for a makro keyboard - found your video - exactly what i hoped to find :) hope i'll get it to run..🙈
Well I think you'll be alright! And if not, just let me know and we'll try to figure it out!
Looks awesome. I hope with some tweaking in the code this could be used for home automation sending MQTT commands on every button press.
I ran into some memory issues when using the TFT library, BLE, WiFi and MQTT. But I was able to get it working. And if you drop BLE, it worked fine!
Hello, this is Allison from Beijing DWIN Technology from China. We are the manufacturer of Android screen, touch panel, Smart LCD display. And we specialize in this field for 17 years. We have rich experience in providing screens for car touch screen. We hope to get in touch with you. If you are interested, you can contact me through email:yangxi1@dwin.com.cn.
great work! thanks! do you think WT32-SC01 module will work in this project? Seems like it has ESP32-D0WD cpu
Yes it will work. Just have to change the User_Setup.h of the TFT_eSPI library to the correct pins. But I am sure the documentation of the WT32-SC01 will tell you all that you need to know!
@@DustinWatts thanks for your answer. I already ordered that module. I want to contribute in that project. I wonder if ips module has compatible driver too
@@vavanbonus I depends on the driver, look at the TFT_eSPI library to see if it supports it. If not, open an issue because Bodmer does his best to support as much modules as possible!
This is amazing, I'd love to use something like this but with USB integration instead of Bluetooth. Is it currently not possible because of the lack of libraries for it? Anyway, good job!
Thanks Sam! Currently it is not possible by the lack of an USB HID on the ESP32. You could connect the ESP32 to an USB HID IC that would make it possible. I have an CH559 to play with. I'll let you know if that is an option!
@@DustinWatts Ohhh that sounds like a good solution. Just looked up the CH559 and looks somewhat straight forwards to use
@@sameyebam797 Yes. @Aaron Christophel has done a lot of work on making these chips easy to use: ruclips.net/video/EMDJe7JQ76g/видео.html
Would it be possible to turn this into a remote control for smart home via Home Assistant? I can imagine having this mounted next to my bed for quick scene access.
Yes it can... there is some special software for that!
I can't buy it on aliexpress its broken my delivery address dosent work can you pleaseeeeeeeee give a amazon link?
Thanks
I added one in the description for you: amzn.to/3Bd3WoM
@@DustinWatts omg u are the best :D
@@DustinWatts Thank you but can I also have a Amazon link for this please? 38-pin ESP32-WROOM-32 Development Board
Leuke video Dustin! Heb je Touch Portal ooit gebruikt?
This is great Dustin. I want to build one but I don’t have any idea for what I could use it.
Build it and the ideas will come! Just kidding... I have lot's of ideas if you need inspiration.
congratulations !
Dankjewel Maico! :)
Hi,
Am working for 2.4inch SPI TfT LCD with Arduino ide on Arduino Uno r3,
But after uploading the code it is showing only white screen.
Have reconnected multiple times, check with different codes.
But same issue.
Mine lcd is non touch, and am not using Arduino shield tft lcd.
How to solve this issue . any idea
This project is not for an Arduino. But if you have issues with your screen, it is usually a wiring issue. You can always search the issues on the TFT_eSPI library or open a new issue.
Just subbed... great project
Thanks Drew! Subs are always appreciated. I just hope I can keep up with the expectations. But there is more to come on this project!
Hey Dustin, amazing project!
I'm interested to build my own FreeTouchDeck, is there a way to connect it via USB instead of bluetooth?
There is. But only with the ESP32-S3 which has native USB HID support. You also will need to compile the code (the Arduino Sketch) yourself because you will need to change some #defines in the code. With the original project it is not possible.
could you attach a esp8266 to a nano (for scetch) and use the esp8266 just for wifi?
It might be possible... but there would be some code re-writing to do!
Could it work with a Raspberry Pi and Pi touch screen?
Running on a RaspberryPi? No. But it will work with a RaspberryPi.
Superb 👍😍
Thank you! Cheers!
Great application
Thank you Balthazar!
Is free touch deck limited to only 3 key binds or can you add more?
Unfortunately when I made it, I hard coded it al. So yes, you are "stuck" with 5 menus, with 5 buttons, and 3 actions. We are really far in unlimited menus, buttons, and actions in version 2. The only thing is that in the V2 there in no configurator yet. So you have manually edit the JSON.
So, the answer is "no", with the addition '"not yet" :)
@@DustinWatts thank you for your reply Dustin, great video
this would be great for my stream with 2 people
You mean two people watching? Let me know when you are streaming and you have 3 people watching :)
Amazing!!! Great Job Man !!! Its possible to send a http request when a button is pressed for control on-off light for exemple ?
Best regards
It is possible. But unfortunately, due to the large RAM footprint of this code. BLE and Wifi can not run at the same time. But I have some examples for my ESP32 TouchDown that show you how to do this: github.com/DustinWatts/esp32-touchdown/blob/main/Examples/ESP32_TouchDown_HA/ESP32_TouchDown_HA.ino
@@DustinWatts Thanks for your answer 😊
Very Cool
Thanks! Glad you like it!
I've been playing with this idea myself, but something that's a must for me is being able to control the backlighting through software. On/off is a must, dimming would be very nice. Does anyone know of an affordable touch screen that has this functionality? I have a Raspberry Pi and ESP32s laying around, so a screen that works with either would be fine.
Hi Tim, the screen I use has backlight control and is dimmable through FreeTouchDeck. On/off is not out of the box possible but is easy to implement by allowing dimming to 0%.
@@DustinWatts Interesting. Do you know if those screens are available in larger sizes? 3.5" is a bit small for me, but I can't find anything bigger, probably since I'm not quite sure what to look for.
@@timderks5960 No you are correct. The biggest screen If found as a module that you can directly use with a microcontroller is 3.5". I also can't find any bigger.
@@DustinWatts That's a shame, thanks for sharing the info though.
There is a 6 different "colours" on Ali
Color: ESP-WROOM-32
Color: ESP-32 30Pin unweld
Color: ESP-32 38Pin
Color: ESP32-WROOM-32D
Color: ESP-32 30Pin weld
Color: ESP32-WROOM-32U
Which one should I take?
Color: ESP32-WROOM-32D
You can 3d print an enclosure
Yes. It is in the repository for the combiner board.
Fantastic!
Thank you Martin!
@@DustinWatts You're very welcome. I am immediately replicating your result, and will be using it as my FreeTouchDeck for streaming and filming in The Makers Workshop studio! Should be fun.
I really hope people make these and sell them on etsy or something
The more the merrier!
Can this work with the ESP32 LVGL too?
The ESP and the screen yes, The Arduino sketch called FreeTouchDeck.ino, no.
4mb of Flash Memory don’t seem to be enough, or am I doing something wrong. It says it uses 123% of the variable space, is there a way to increase that without buying a new board? (Doit esp32 devkitv1)
Absolutely. If you change the partition scheme you have more room for the sketch. In the Arduino IDE, under "Tools" -> "Partition Scheme", select: "NO OTA (2MB APP/2MB SPIFFS)". Now I don't believe the DOIT board has that option. But you could add that yourself. github.com/espressif/arduino-esp32/issues/1906 may be a starting point for you.
What about same, but through Raspberry Pi? Yeah i have Raspberry Pi but don't have and can't buy ESP
Have a look at StreamPi ;)
How can I create an interface with an image matrix
Can I use this for Vmix instead of OBS?
You should be able to use it with any software that supports shortcuts/hotkeys/macros!
it can be sold?
What do you mean?
Is there Any bigger screen that can be used for this? Perhaps with a 5x4 grid?
I would love to make this but I am realy bad at elektronics, I also have some outher extra's in mind and I have an arduino uno
instead of what you have
Hi Wolf! Using an Arduino is going to be quite difficult, as the code is written for an ESP32 using Bluetooth and WiFi. Also the Arduino has 5V on it's IO's and the screen uses 3.3V logic. I would suggest picking up a ESP32 DevKitC, which is just a few dollars. If you like some help soldering, join my Discord server and I'm sure we will get it working!
can you show how to asembelit
There is a step by step video here :ruclips.net/video/s2X4BQ9VmEU/видео.html Also in the comment section of that video you will find written versions of a step by step guide. Have fun!
In case I upload via web, how can I acess the wifi? I can't find the password anywhere
If you boot it up, go to the Wifi mode, it tells you the SSID (FreeTouchDeck) on the screen as well as the password. Which is "defaultpass".
I'd like to have something like this to input stings, like usernamepassword with multiple user/passwords. We support remote computers for a customer with multiple computers at each site, each requiring a different user/password, and some are quite complex, but the same user/password is used for each same computer at each site"so like "Primary Server", "Secondary Server", "Manager PC" etc.. So even a primary button like "Servers" with secondary buttons appearing as "Primary Server", "Secondary Server" etc would be nice. It seems your script only allows for a single character for each command, but would be nice if it could produce a sting. Do you have any project like this? Thanks.
The link to the esp32-wroom-32 has multiple models. Which one? esp-wroom-32d or esp-wroom-32u or Esp32 38 pin?
The combiner PCB is made for the ESP32 38-pin one. If you are NOT using the combiner PCB you can use any ESP32. Good luck building!
@@DustinWatts thanks!
@@DustinWatts After watching your 2nd video, you used the ESP32-WROOM-32D, not the one listed as "38 PIN" on AliExpress. If I'm right, the only difference is the mounting holes on the PCB board.
@@RobertCole1981 On the PCB I'm using the 38 pin version. If you are not using the PCB it doesn't matter which ESP32 you get. If you use the PCB, you will need the 38-pin version, because the pins are in different places on different boards.
@@DustinWatts Doesn't the 32D also have 38 pins? Its just the holes on the board for screw mounts?!
Maaaaaaan I wish there was a way to send telnet commands, I could do so much with this.
I have written an helper app that runs on the host computer, where you can execute a command-line/terminal commands. For example run a script, but a telnet command should also work. The app is not public yet, but you can join my Discord server where I have shared the first version.
You could create a shortcut on ahk and run more advanced scripts from there
Thanks!
You are welcome! Hope you get something out of it!
Sadly toasted 2 ESP32 boards while trying to get a DRV8825 functioning with a stepper motor today. I hate wiring those up on a breadboard, but when tried a PCB designed for a single driver, it was so weak. Not a fan of questionable products in between known good products, but I'd like to find an easier solution than a driver on a breadboard. @@DustinWatts
@@DustinWatts What capacitive touchscreen module is most recommendable right now? (touchscreen only, not entire kit including ESP32) Or is it more cost effective to simply buy some combo and desolder touchscreen later if I want to use it without the ESP32 board it ships with?
@@OMNI_INFINITY Unfortunately the latter won't work. This is different type of module that after desoldering you can't connect any where else then the same SMD footprint.
The one linked in the description is one of the cheapest modules I can find. And I regularly update it. But, maybe if you search for and ILI9488with touch screen, you get a cheaper board with all the pins broken out. Make sure you get a TOUCH version! :D
@@DustinWatts I have one of those, but it’s not capacitive. Found a capacitive SPI on taobao today so may try that
Is it streaming for only?
No it is for anything you can think of that you can use hotkey's/macro's for!
How hard would it be to use a bigger screen? I would like to have more buttons.
Hard, not really. But a lot of work! Because when I starting coding, I didn't make it flexible enough for myself. But as this is requested a lot, I am writing an update. But it could take some time...
@@DustinWatts Awesome. Will follow to see how it comes out. Thank you. :)
Does that mean i have to buy a Bluetooth dongle to use it?
Yes. Unless you PC has Bluetooth.
Bonjour, serait il possible de faire la même chose mais en utilisant un Arduino plutôt qu'un ESP, désolé 😅 mais je suis débutant dans le domaine
Hi! If possible could you use English next time? Save me google translating. But.... the answer is no, Arduino does not have Bluetooth and WiFi.
Thanks for the answer, and excuse me for my Bad english skills. And if i want to do One with USB connection, do you think its possible to do ?
@@sancon_off9400 Well I am working on a ESP32 S3 version which can do USB. But it is not yet ready for any release. If you do not have BLE, I recommend the Bluetooth CSR 4.0 Dongle. It is $10 and it works like a charm. It is the same I am using.
I will try to find an ESP32, if i have asked about Arduino nano, its because i buy 3 of them
@@sancon_off9400 I also have a bunch of them. Maybe too much... haha) The problem is all the tasks that need to be done on an Arduino. An Arduino runs at 20Mhz, the ESP32 at 240Mhz. An arduino would be to slow to have a nice experience. I have an Instructable, a step by step guide and link is below. A link to a working ESP32 is also below.