I love your videos . I am super new to esp32 arduino stuff. But i want to develop a mini display for my pickup s dashboard that displays various information like trip computer ,what doors are open and some fault codes on the car s ecu. Hopefully it's possible .
Just wanted to mention, most of car makers since around '96 no longer display the actual coolant temperature. Instead, the arrow stays exactly in the middle in the range of about 75-115 degrees. This is probably because dealerships were flooded with unnecessary questions about the temperature fluctuations (raises in the traffic jam, goes down on the highway), and this solution definitely refuced their headache. I know several "happy" car owners proudly telling the cooling system in their car is so well-designed and working properly that the gauge shows exactly 90 degrees no matter what 😅
It’s not that they don’t display the real temperature they are just heavily dampened to the middle portion of the scale. Toyota did this by the addition of a resistor on the pcb, if memory recalls correct, simply removing the resistor and shorting the 2 pins would make the gauge ‘responsive’ again.
That´s a very good point. Yes, most of the temp. gauges work in a way that that you only have three states - cold, OK, too hot. It´s quite unfortunate.
Unless you have a 1998 - 2010 Volkswagen Beetle, then there’s no gauge. Just a blue warning light for “engine is cold” and a red warning light for “engine too hot”
This is awesome. Your channel literally shows me how to do the projects I been meaning to do for years now. Can't wait to get started. I hope one day you get around to doing a race car style G-force meter with accelerometers or other sensors. That would be sick.
That’s great, thank you for letting me know! Yes, the g-force meter is definitely something that I would like to try. Is there anything else you might be interested in?
This is great! Been wanting a nice clean and affordable way to monitor intake temps at various points throughout my intake system. This is awesome. Thanks!
This is awesome! if you have a more accurate thermometer, you can measure the temperature at different points with both -> then insert it into a graph -> subtract the function of one line from the other -> add this new function to the temperaturereader. anyways awesome that you show this stuff.
Thank you. Actually this thermometer is quite accurate - given that it can measure values in quite a big range. If you need a better accuracy, you can try different (and more expensive) thermocouple sensors with the same board.
It would be nice to use two temp sensors and have the ability to read each sensor and also the difference between them. Say for instance if you want to know how much heat your intercooler is dropping... Hmm how about a percentage display showing you percentage of temp drop? Lots of possibilities if you can read two sensors :)
rpm gauge next i need one for my old 12v Cummins. already made a boost gauge for my tdi and 12v ! amazing work! iv learned lots from your videos thanks
My friend, instead of a separate image for each position of the indicator needle, it would be much better for your storage unit if you left the background fixed and used a code that would mathematically rotate the pixels of the indicator needle :)
I'm curious - is there a benefit to the multiple background approach vs the needle only approach mentioned above? I assume that the needle approach would reqauire using sprites (pushRotated seems pretty simple here). Any thoughts on this? BTW - awesome as always. I've learned a lot from your videos - keep up the great work!
I wonder if his approach achieves a more fluid and optimzed way since it's so crude, but I would like to see the results of just rotating the needle as well
You can achieve this via Sprite drawing and it's better this way since we don have to redraw the entire lcd again which is what I did for my boost gauge based on upir's video.
I will cover rotating the needle in the code in my next video. I haven´t had too much success from the visual standpoint - you can rotate the needle, but you can have only 1bit transparency = no glow or anti-aliased edges, and also the rotated image is not anti-aliased, so it´s not very smooth. I´m sure there are ways how to make it look good, but perhaps not with the used tft_ESPI library. Anyway, I will share my finding in the next video.
@@upir_upir The way you have it very crisp and clean which makes it very attractive. It looks like an analog gauge! Anything you can do visually to prevent it from giving away that it's actually digital is for the best.
Great tutorial series! I‘m currently working on creating a dashboard for a raspberry pi connected to a 5“ screen. I‘m trying to use your gauges on multiple overview sites and collect the OBD data straight from the car to display them on the gauges. I just have to find out how to work with the images in python and then I should be good to go. :) Thanks a lot for your great work!
Eres bueno en la creación de videos, y la temática es de mi gusto. Te pido por favor que hagas los videos también en el idioma hablado en español, he visto que otros TH-camrs sí que tienen esta opción .
Hey, love your style of videos, not only do you create really simple and clean looking displays, but explain in great detail how to build them! I was wondering if you would be interested in doing a video on Air Fuel Ratio Gauges? Many of us own project cars and bikes and its really important to fine tune the map / carbs to ensure the stoich value of 14.7:1 using either a wide band or narrow band o2 sensor. Kits are available but cheap ones are always narrow band, and even pricey ones are very cheap looking. Something that you could definitely improve? Thnaks!
Thank you! I might create the AFR gauge, but the main issue is that I have no way how to test if that works and test if the values are correct. I will keep that in mind though and perhaps think of something.
Love your work. if you ever decide to make a video about using off the shelf automotive sensors like a VDO Pressure sensor and "normal" automotive temp sensors that would be awesome. the real issue here is getting 12v sensors to work with the 5v arduino...
Yeah, I currently use an innovate oil temp/pressure gauge, but i was wondering if I could use one of this displays instead, but keeping the installed sensors.
Чувак! В чем твоя проблема? Уложить шкалу датчика 12В на шкалу Ардуино 5В? Резистивный делитель тебе в помощь! На понижение как раз не проблема, а вот в обратную сторону посложнее задача.
Yes, I do plan to cover that in the future tutorials. Like someone mentioned, the ESP32 is not very good in this, since even when you use a voltage divider to get the 12V down to 3.3V, the ADC is nonlinear. It will probably make more sense to use a dedicated ADC chip/module.
This looks great. It would be nice to see examples of how to implement alarming thresholds where the screen would blink or some other way to get the drivers attention. Also, is this just a proof of concept or would you recommend using this hardware in a car? Are the displays bright enough? Will they survive a car’s harsh environment (heat, cold, sun, vibration, etc)?
Thank you. Yes, I will cover those in the future videos. You can use it in the car, but the screen is not extremely bright - you will probably don´t see anything on direct sunlight. I will try other displays that might be a better fit.
Can you give this two sensor inputs and do processing between them? Could figure out percentage of slip between wheels or temperature drop or increase between ambient and intake or across an intercooler! Really appreciate these videos man. As someone who learns by doing having a purpose to understand something makes a big difference - these are terrific!
After your videos I'm thinking about adding digital temperature/pressure gauge to my espresso machine :) There is Gagguino project, current version uses nextion display, but LVGL interface in development. I think there is a great option to add round screen also :)
Top-notch content as always! Do you recon it is possible to write a code that way so the image goes a bit dull at night time. e.g. a positive/negative input from the car to esp32 board that tells it to decrease brignness of the display when headlights are on? just a suggestion
Another great video. I'm curious, what is your recording setup? I'm trying to make some videos of a synth I'm building that includes a 128x32 monochrome oled display, and I've seen you capture similar displays beautifully before. What camera do you use, and do you have some tips for setting it up? Thanks in advance, I love watching your vids!
Thank you. I use an old iPhone, but I have found out that the biggest difference makes using different OLED screens. I don´t know why, but some are flickering all the time - like the small 0.9", while others looks very nice. I believe the best one is the 1.3" version, that looks perfect most of the time.
Do you have any videos on actually designing the gauges that you use in your videos? I have seen you show the program you use with short descriptions, but an in depth video of drawing the gauge and then all the corresponding "copies" of it for the gauge moving would be great!
Not yet, but I do plan to record those videos soon. In the meantime, please feel free to download source files from GitHub, you can open them in Photopea and kind of see how those were done.
OBDII for sure, that´s something I´m trying to sort out right now. As for NTC/PTC sensors - what would be the advantage over the used thermocouple sensor?
Mentioned some libraries and components something must have triggered the cancel algorithm. For the resistor sensors...... most older cars have such sensors threaded in the engine , so a good AD and option for calibration curve would help a lot. Built a temp display using lilygo display and the available libraries for bluetooth obd ........... adapters. But yours look soooooo much better. There are some modern combined oil pressure and temperature sensors which i am not allowed to mention here in the comments ?????
Hey cool another great video from you, i like the last few videos of the round display and thanks to your great instruction i managed to run it by myself ...but do you think you could maybe make a instruction to combine all these nice gauges with the data output from speeduino ? Im messing around with it in the moment and i cant get it working rn it would be really cool if you maybe do a sneak peak in this topic
Thank you for your comment. Yes, I would like to cover Speeduino, but I don´t have any car with this ECU. Do you know if there is any Speeduino emulator out there? I would prefer to test my project outside the car first.
@@upir_upir you can easyly flash the arduino mega2560 or the STM32F407VET6 with the cube progammer and arduino ide to Flash the stm you need to connect some boot pins to ground and 3.3v but it is all described in the speeduino manual or git ...for the protocol i just get it so far to read the map value with the esp32s3 display from the stm32 but with some wrong values, im working on it to fix that
@@upir_upir you can sim9le use a mega2560 or a STM32F407VET6 the flashing ist described in git and i think in the speeduino manual. To Flash the stm you need to connect 2 boot pins to gnd and 3.3v then its ready to Flash , if you need help please let me know we get this sick project running 😉
I'm also looking to add temp and pressure gauges to my car. I have a Superlite SLC with Megasquirt MS3 engine management. I was monitoring temps and pressures using Shadow Dash on my phone connected via BT. But android updates have made it where it doesn't work anymore. Your videos are priceless. I really appreciate the time, care, and how thorough you are. My request is to take 6 of these gauges and put them on a single larger display. I saw your Focus RS video, something like that but 2 rows. If it's the same process but just alter the resolution, what display would you recommend? 7" is the largest I have room for.
Thank you! Could you please send me an email to utuber.upir(at)gmail.com? I would like to experiment with aftermarket ECUs and I´m looking for someone with Megasquirt for testing. Would you perhaps have time to help in exchange for getting such display? Thanks!
Awesome Video! Looking forward to the touch version vid, since I’m trying to get mine working. Seems like there is no custom partitioning scheme option available in the IDE and the now the file is to big. You guys have any ideas?
Thank you. Yes, I will most likely use microSD soon, since I have a different board that already has the microSD slot... so it would make sense to try to use it.
Hi Great videos Would it be possible to use one display with two or three sensors and display the values for each sensor by pressing a momentary button. Thanks
I don´t see a reason why it should not be possible, but I would probably prefer to show those two or three values at the same time, without the need to switch content.
great job my friend for one more time, thanks for your videos. i want to ask you if you try to increase memory with hardware for more images. i try to use your ford focus gauge(oil press and oil temp so we talk for about 220 image) but need too many of memory.
Thank you. There is probably no simple way how to add more memory on this board, but you can try storing the images in some compressed file formats - like JPG, and see what would be the performance.
thanks for this new item each time explanations are quite clear. Now after the temperature and the boost it remains the engine rpm counter- 😁😁 is it planned?
What do you think about interpolating the temperature values to make the needle smoother at cost of responsiveness ? That or some kind of rate that limits how fast it changes. Probably not that useful for water or oil, but who knows.
Well, if you used LVGL, there's an animation feature and with it the display values don't change instantly. In this case, he's using images, so that wouldn't work there.
This is awesome, shame its only a 1.28inch screen, as they are too small to be use full in the car! Will you ever do projects with a Esp32 S3 Development Board 1.85 Inch or the Esp32 S3 2.1 Inch?
Dear friend, could you replace the oil can graphic with the letters CVT? Is it very complicated? The reason is that my Subaru vehicle has a CVT transmission. Great job you did!!!
That should be as simple as adjusting one variable in the code - when calculating the temperature interpolated, just increase the last value from 5.0 to some higher number.
congratulations and many thanks ! its a great project ! Im trying to upload your code into a waveshare esp32s3 lcd 1.28" (non touch) display, upload process finished succesfully (with no errors), but cannot turn on the screen... could you let me know wich driver version of espressiff esp32 are you using? (if we use v2.0.12 I cant get a custom partition scheme, if I use a latest 3.0.1 version can use custom partition from .csv, is this what should I use?) , and please, let me know about correct library version (Ive installed ver 2.5.43 of TFT_eSPI by Bodmer library, is this ok?) many thanks again !!!
@@ninjameep8616 I don't "need" any of the projects I'm doing with microcontrollers and SBCs. In fact, my wallet (and wife) would probably be happier if I didn't engage in those projects 😅
Yes, I would like to cover getting the data from OBDII in the next video. As for the other comment, I agree that my wallet would also be much happier without having all those displays :)
@@upir_upir Volos forced me, FORCED ME, I SAY, to order 2 Lilygo T-Panels this week. I have PTSD from the blatant disregard for my financial stability. I just hove I get time to finish my M5Dial project before they arrive 😂
Thanks for this tutorial, Is it possible to run miltiple sensors and gauges from one Audrino device? Like could i make one unit thats has oil, water, egt, a/f ratio etc...
I'm keen for this too, either utilising a button to switch between the selected thermocouple/sensor or just having it cycle through each sensor at a defined interval.
In today's vehicles, these values are already recorded and can be accessed as CAN bus parameters. Why take individual extra measurements? Classic cars are of course an exception.
Maybe you don´t have such sensor in the car? Maybe you want to measure temperature that you usually don´t measure? Or - as you have mentioned, there are plenty of old cars, project cars, kit cars...
Is there a way to set a warning limit if the temperature gets too hot? I’m sure it’s simple to do with the bitmap images, but what about with the code? For example, if it reaches 200F, set a warning message on the display to “stop, turn off engine, overheating” type message. This would be an awesome modification for a 1998-2010 Volkswagen New Beetle that didn’t come with any coolant temperature sensor for the driver.
Yes, you can surely do that - I just didn´t know how to do it and keep the anti-aliased edges. The libraries that I have tried all rendered non-pleasing rotated images.
@@upir_upir Thank you for reply! PS. I wonder I still need to use this amplifier board for EGT sensor when temps are around 900C and moves by dozens in a second
I have used the latest ESP32 version, that way, the menu was there. You can add a new item to that menu, but an easier solution is to just include the file in the project folder.
Hello. Very good channel with good information. Would it be possible for you to make a waveshare round screen project that can display information from OBD and can-bus. Or just only canbus. I am in a pickle. Trying to change racing dash with more custom option that suits old cars better. Also I could not find your e-mail.
Thank you. I have a few videos about interfacing OBDII - please see some newer ones for more details. The email is on the about page, but sometimes it´s only visible on the desktop, not on phone.
One question, why u not push one image to rotate? There is any benefits to use rotated static needle exept use function: needleLeft.pushRotated(&gaugeBack, angle, TFT_TRANSPARENT);
Hmm ... even without knowing the exact signature of map(), your needle_image is an integer, so the result of map() will be an integer in any case. The round() call in the next line is therefore useless. When carefully looking at the video, you can actually see it is off (at 34:19, needle shows 33° but digits show 35°). Better manually do the mapping into a float, then use a round().
That´s a good point, and I´m pretty sure you are right about the map() function returning an integer value, and that using a manual mapping to float would make more sense. Thank you for your comment.
@@upir_upir Yes, but LCD is bigger,1.38"+... Also supports battery... Maybe only issue is programming it, I don't think those processors will works with Python like rasberry pi... 🥲
Upir, all your videos is so good, im brazilian, sry bad english, you NEED TO MAKE a video tutorial HOW TO MAKE A WIDEBAND GAUGE, because in brazil wideband gauges high custs, like 1000 brl, in dolar like 1000 dolars, because if you take minimal payment in brazil like 1300 brls, can u make?
I have a e36 here in brazil, and i have a ideia, i want to put a custom wideband inside my original pannel, with a led display to make the color same, if the sensor taking work temperature in display say M for m3, and if the temperature ok, display tells me the air/gasoline, this is my idea
@@upir_upir yes, if we can get the lambda numbers and print in screen, its so good to make a video tutorial to custom cars and original, because custom cars needs this piece, if we make a good theme and display, i thing you get A LOT off Brazilian viewers and subscribes, if you can make a video tutorial or send me the link, help a lot!!!
I wanted to make digital touch screen for my car for controlling the lights ( high beam ,low beam and the climate control . Can you guide me in the right direction ? Thank you !
Are you trying to just replace physical buttons? In that case, you should probably be able to just use some relays to switch the original buttons, instead of trying to mess with canbus.
Yes, that should be possible. There are many oil pressure sensors on AliExpress that works in the similar way as the pressure sensor that I have used in the previous video.
Got a couple questions: 1. On your Github page you have what looks to be a 1/8 NPT but no indication on what it is....if it's usable or does it run on the 12v? 2. Is there a way to do a video on how to make the guages on photopea...not very good with photoshop and any guidance would be helpful
Can you please do a tutorial on those oled display with grayscale feature? I just bought a ssd1322 256x64 3.12'', it works great with 4spi config but u8g2 doesn't support grayscale I think. I'm trying to put this display into my bluetooth speaker to show battery, volume, audio visualizer and stuff (I use pretty much all of your tutorials), I've got everything else working fine thought, but having some grayscale bit animations behind the info would be awesome.
I have tried grayscale in the past, but haven´t found a decent library. As you said, u8g2 does not support grayscale. The u8g does, but only partially - you must draw every color separately, i.e. storing one image as multiple arrays, and it was just way too complicated to use it for a project. I might take a second look if there are some better libraries out there that could be used, perhaps from Adafruit. That said, if you only want to show grayscale image, that should be possible even with u8g2 - I might record a tutorial about that.
i m trying to use a esp32 and an ili9341 2.2 tft display and cant make it work becase the needle cpp is too big, how does you made it work?? thanks, is a very nice gauge!
This board has 16MB of flash memory, I´m using I believe around 10MB. If you don´t have that much flash memory, you can just rotate the image of the needle - I will describe it in a future video.
I have other version of this (using a ESP32-C3 and the same controller for screen GC9A01) that i can not put a simple "hello world" working on screen....
this type contents are Awsome but for me as a mechanic need coding knowladge to make this type guages if it posible put coddind and even graphic sections in any type (comment section. link. or etc) to easy reach for my type people i really apriciated to share your knowladge with us
nice work overall. however, using gpio as a power source is strongly ill-advised. It is true that the gpio can source up to 40mA in default configuration on the ESP32 chip, which is sufficient for the thermocouple chip. Unlike a proper voltage regulator, however, gpio have no over-current limiting protection. If you make a wiring mistake and short out a voltage regulator, as long as it is only temporary, the regulator usually recovers when the short is removed, and nothing is damaged. If you make a mistake wiring the gpio as power source and short it to ground (or the module is damaged.. or you make a code error setting the pins), the ESP chip is destroyed and unrecoverable. There is literally 3 decades of literature related to microcontrollers illustrating why using a GPIO as a power source is a mistake and should never be done. This very literature will make the compromise that its "ok" to source an (low current) LED as an output, such that code logic is not inverted (pin HIGH = LED ON), but always caveats that the "correct" way is to sink the LED (VCC through LED and resistor, INTO the GPIO). This however creates a logic inversion in code, that pin HIGH = LED OFF. The other option being to drive it via transistor/FET. The D13 LED schematic on older or cheap clone Arduino Uno is "accepted" but not correct. The R3 version fixes this without requiring code changes by wedging an op-amp between the IO and LED.
You are right, that´s something you want to avoid, but unfortunately the board (for some unknown reason) doesn´t have any 3.3V pins. Again, not quite sure what is the reason for that. I wanted to make it as simple as possible and used this shortcut, but I will see how I can update the project with a more proper power source.
@upir_upir is there a 5 volt source? Use a secondary 3.2v regulator? You can even choose one with an enable pin and drive THAT with a gpio to to some power management.
Ah never mind about power management. Forgot this is about an automotive gauge. Check that chip or module may be 5v tolerant? Choose another part which is? Lots of options here. Heck a zener diode in a pinch is a [slightly] better option.
UPIR: I want to put a hidden automated realtime camera at work that takes photos of women standing by the coffee machine and compares the facial characteristics against the golden ratio mask (the one that shows the most attractive facial features). I want a large gauge like this on top of my laptop monitor that lights up and shows the "hotness temperature" only when women that scores more than 70 is visiting the coffe machine so I "accidentally" can walk over to stand in line for coffe while trying to strike up a conversation. If you can make it trigger especially for asian women it would be perfect. Can you make this project?
All the source files are on GitHub: github.com/upiir/arduino_temperature_gauge
I love your videos . I am super new to esp32 arduino stuff. But i want to develop a mini display for my pickup s dashboard that displays various information like trip computer ,what doors are open and some fault codes on the car s ecu. Hopefully it's possible .
Thank You :)
got error related to int16 or kind of fontHeight when trying to upload your file into ESP32 LCD 1.28. Please check your github and help me. Thank you.
Just wanted to mention, most of car makers since around '96 no longer display the actual coolant temperature. Instead, the arrow stays exactly in the middle in the range of about 75-115 degrees. This is probably because dealerships were flooded with unnecessary questions about the temperature fluctuations (raises in the traffic jam, goes down on the highway), and this solution definitely refuced their headache. I know several "happy" car owners proudly telling the cooling system in their car is so well-designed and working properly that the gauge shows exactly 90 degrees no matter what 😅
And since around that era, cars have CAN bus, so you can still get the real coolant temperature.
Like jaguar, they went the whole hog and deleted the temp gauge altogether!
It’s not that they don’t display the real temperature they are just heavily dampened to the middle portion of the scale. Toyota did this by the addition of a resistor on the pcb, if memory recalls correct, simply removing the resistor and shorting the 2 pins would make the gauge ‘responsive’ again.
That´s a very good point. Yes, most of the temp. gauges work in a way that that you only have three states - cold, OK, too hot. It´s quite unfortunate.
Unless you have a 1998 - 2010 Volkswagen Beetle, then there’s no gauge. Just a blue warning light for “engine is cold” and a red warning light for “engine too hot”
This is awesome. Your channel literally shows me how to do the projects I been meaning to do for years now. Can't wait to get started. I hope one day you get around to doing a race car style G-force meter with accelerometers or other sensors. That would be sick.
That’s great, thank you for letting me know! Yes, the g-force meter is definitely something that I would like to try. Is there anything else you might be interested in?
Valeu!
Thank you for your support, I really appreciate it!
This is great! Been wanting a nice clean and affordable way to monitor intake temps at various points throughout my intake system. This is awesome. Thanks!
Cool, I´m glad this is helpul! Good luck with your project.
All these mods you do combined would make a sick tricked out Sim Racing Rig.👍👍
Thank you. I already have a video how to use shifter knob with SimHub, I might try to add more displays.
This is something I was looking for 10 years ago, but couldn't find anything. I might need to revisit my old plans.
Cool, I´m glad you were finally able to find it!
This is awesome! if you have a more accurate thermometer, you can measure the temperature at different points with both -> then insert it into a graph -> subtract the function of one line from the other -> add this new function to the temperaturereader. anyways awesome that you show this stuff.
Thank you. Actually this thermometer is quite accurate - given that it can measure values in quite a big range. If you need a better accuracy, you can try different (and more expensive) thermocouple sensors with the same board.
It would be nice to use two temp sensors and have the ability to read each sensor and also the difference between them. Say for instance if you want to know how much heat your intercooler is dropping... Hmm how about a percentage display showing you percentage of temp drop? Lots of possibilities if you can read two sensors :)
You make awesome projects.
Thank you!
rpm gauge next i need one for my old 12v Cummins. already made a boost gauge for my tdi and 12v ! amazing work! iv learned lots from your videos thanks
Yep, RPM gauge is definitely on my todo list!
another. amazing video, bravo!
Thank you, I´m glad you like it!
This is just so cool! Thank you 😊
You are welcome, I´m glad you like it!
Another great video with a detailed walkthrough, thanks
Thank you, I´m glad you like it!
Outstanding tutorial!
Thank you!
babe wake up, upir uploaded??!!!?!
:)
My friend, instead of a separate image for each position of the indicator needle, it would be much better for your storage unit if you left the background fixed and used a code that would mathematically rotate the pixels of the indicator needle :)
I'm curious - is there a benefit to the multiple background approach vs the needle only approach mentioned above? I assume that the needle approach would reqauire using sprites (pushRotated seems pretty simple here). Any thoughts on this? BTW - awesome as always. I've learned a lot from your videos - keep up the great work!
I wonder if his approach achieves a more fluid and optimzed way since it's so crude, but I would like to see the results of just rotating the needle as well
You can achieve this via Sprite drawing and it's better this way since we don have to redraw the entire lcd again which is what I did for my boost gauge based on upir's video.
I will cover rotating the needle in the code in my next video. I haven´t had too much success from the visual standpoint - you can rotate the needle, but you can have only 1bit transparency = no glow or anti-aliased edges, and also the rotated image is not anti-aliased, so it´s not very smooth. I´m sure there are ways how to make it look good, but perhaps not with the used tft_ESPI library. Anyway, I will share my finding in the next video.
@@upir_upir The way you have it very crisp and clean which makes it very attractive. It looks like an analog gauge!
Anything you can do visually to prevent it from giving away that it's actually digital is for the best.
Great tutorial series! I‘m currently working on creating a dashboard for a raspberry pi connected to a 5“ screen. I‘m trying to use your gauges on multiple overview sites and collect the OBD data straight from the car to display them on the gauges. I just have to find out how to work with the images in python and then I should be good to go. :) Thanks a lot for your great work!
That sounds like a great project! Would you mind sharing videos of your progress?
i hope my future car someday isn't 34 celsius
You mean cool it down to 34 or heated up?
Or it's like the 13th floor or a seat, doesn't exist?
I would be glad to have only 34°C during summer... Actually, I would be even more happy to have 34°C during winter!
@@upir_upir i need to move continents... :D
Eres bueno en la creación de videos, y la temática es de mi gusto. Te pido por favor que hagas los videos también en el idioma hablado en español, he visto que otros TH-camrs sí que tienen esta opción .
I would love to publish my videos in other languages as well, hopefully in the future!
Hey, love your style of videos, not only do you create really simple and clean looking displays, but explain in great detail how to build them! I was wondering if you would be interested in doing a video on Air Fuel Ratio Gauges? Many of us own project cars and bikes and its really important to fine tune the map / carbs to ensure the stoich value of 14.7:1 using either a wide band or narrow band o2 sensor. Kits are available but cheap ones are always narrow band, and even pricey ones are very cheap looking. Something that you could definitely improve? Thnaks!
Thank you! I might create the AFR gauge, but the main issue is that I have no way how to test if that works and test if the values are correct. I will keep that in mind though and perhaps think of something.
Love your work.
if you ever decide to make a video about using off the shelf automotive sensors like a VDO Pressure sensor and "normal" automotive temp sensors that would be awesome.
the real issue here is getting 12v sensors to work with the 5v arduino...
Yeah, I currently use an innovate oil temp/pressure gauge, but i was wondering if I could use one of this displays instead, but keeping the installed sensors.
And even more complicated because ESP32 work on 3.3V and has totaly bad ADC.
You could probably just buck down the signal, not sure how it would affect the signal quality.
Чувак! В чем твоя проблема? Уложить шкалу датчика 12В на шкалу Ардуино 5В? Резистивный делитель тебе в помощь! На понижение как раз не проблема, а вот в обратную сторону посложнее задача.
Yes, I do plan to cover that in the future tutorials. Like someone mentioned, the ESP32 is not very good in this, since even when you use a voltage divider to get the 12V down to 3.3V, the ADC is nonlinear. It will probably make more sense to use a dedicated ADC chip/module.
This looks great. It would be nice to see examples of how to implement alarming thresholds where the screen would blink or some other way to get the drivers attention.
Also, is this just a proof of concept or would you recommend using this hardware in a car? Are the displays bright enough? Will they survive a car’s harsh environment (heat, cold, sun, vibration, etc)?
Thank you. Yes, I will cover those in the future videos. You can use it in the car, but the screen is not extremely bright - you will probably don´t see anything on direct sunlight. I will try other displays that might be a better fit.
Amazing piece of coding! Nice work! 👍
Thank you, I´m glad you like it!
Very nice project sir...❤👍👍👍
Thank you, I´m glad you like it!
Can you give this two sensor inputs and do processing between them? Could figure out percentage of slip between wheels or temperature drop or increase between ambient and intake or across an intercooler!
Really appreciate these videos man. As someone who learns by doing having a purpose to understand something makes a big difference - these are terrific!
Yes, you can use multiple sensors without any problems. Thank you for your nice comment!
Looks very cool!
👍
Thank you!
After your videos I'm thinking about adding digital temperature/pressure gauge to my espresso machine :) There is Gagguino project, current version uses nextion display, but LVGL interface in development. I think there is a great option to add round screen also :)
Cool, I wasn´t aware of the Gagguino, looks interesting!
Nice work. I'm looking to rebuild the dashboard in my kit car!
Cool! What´s your kit car?
I like how the needle moves! Cool!
Thank you!
That would be pretty rad if you could out put some PWM control for cooling fans with curves.
Probably beyond my knowledge for now, but I agree that it would be cool!
Excelente! 🙂👍🏻
Thanks!
Awesome!
Thank you!
Top-notch content as always!
Do you recon it is possible to write a code that way so the image goes a bit dull at night time. e.g. a positive/negative input from the car to esp32 board that tells it to decrease brignness of the display when headlights are on? just a suggestion
Thank you. Yes, I will cover setting the screen brightness in a future video. Thank you for the suggestion.
Another great video. I'm curious, what is your recording setup? I'm trying to make some videos of a synth I'm building that includes a 128x32 monochrome oled display, and I've seen you capture similar displays beautifully before. What camera do you use, and do you have some tips for setting it up?
Thanks in advance, I love watching your vids!
Thank you. I use an old iPhone, but I have found out that the biggest difference makes using different OLED screens. I don´t know why, but some are flickering all the time - like the small 0.9", while others looks very nice. I believe the best one is the 1.3" version, that looks perfect most of the time.
Do you have any videos on actually designing the gauges that you use in your videos? I have seen you show the program you use with short descriptions, but an in depth video of drawing the gauge and then all the corresponding "copies" of it for the gauge moving would be great!
Not yet, but I do plan to record those videos soon. In the meantime, please feel free to download source files from GitHub, you can open them in Photopea and kind of see how those were done.
It would be great if you combine all those car esp projects to one, with a touch key to change from temperature to axels to pressure to to to...
Yes, that´s the plan :)
really really cool
Thank you!
How about a halleffect sensor tacho ??? Very well done...thanks.
Yes, that´s something I would like to try as well.
Very nice,
might be You add support for ntc/ ptc sensors and obd in the future ?
OBDII for sure, that´s something I´m trying to sort out right now. As for NTC/PTC sensors - what would be the advantage over the used thermocouple sensor?
Sorry but my answers here are somehow deleted ....
Mentioned some libraries and components something must have triggered the cancel algorithm.
For the resistor sensors...... most older cars have such sensors threaded in the engine , so a good AD and option for calibration curve would help a lot.
Built a temp display using lilygo display and the available libraries for bluetooth obd ........... adapters. But yours look soooooo much better. There are some modern combined oil pressure and temperature sensors which i am not allowed to mention here in the comments ?????
Excelente.
Thank you!
Very cool! TNX
Thank you, I´m glad you like it!
Nicely done! How do these gauges screens look in the sunlight?
They are bright, but not super bright. Probably unreadable on direct sunlight, but fine for normal usage.
Hey cool another great video from you, i like the last few videos of the round display and thanks to your great instruction i managed to run it by myself ...but do you think you could maybe make a instruction to combine all these nice gauges with the data output from speeduino ? Im messing around with it in the moment and i cant get it working rn it would be really cool if you maybe do a sneak peak in this topic
Thank you for your comment. Yes, I would like to cover Speeduino, but I don´t have any car with this ECU. Do you know if there is any Speeduino emulator out there? I would prefer to test my project outside the car first.
@@upir_upir you can easyly flash the arduino mega2560 or the STM32F407VET6 with the cube progammer and arduino ide to Flash the stm you need to connect some boot pins to ground and 3.3v but it is all described in the speeduino manual or git ...for the protocol i just get it so far to read the map value with the esp32s3 display from the stm32 but with some wrong values, im working on it to fix that
@@upir_upir you can sim9le use a mega2560 or a STM32F407VET6 the flashing ist described in git and i think in the speeduino manual. To Flash the stm you need to connect 2 boot pins to gnd and 3.3v then its ready to Flash , if you need help please let me know we get this sick project running 😉
Sick!
Thank you!
So cool bro, i am planning to try this, but i wanted to ask, do u have a bigger display in mind? Having 2inch would be cool af
Yes, I will cover bigger displays in the next video. I have some 2inch and I believe also 3inch round displays to play with.
I'm also looking to add temp and pressure gauges to my car. I have a Superlite SLC with Megasquirt MS3 engine management. I was monitoring temps and pressures using Shadow Dash on my phone connected via BT. But android updates have made it where it doesn't work anymore. Your videos are priceless. I really appreciate the time, care, and how thorough you are.
My request is to take 6 of these gauges and put them on a single larger display. I saw your Focus RS video, something like that but 2 rows. If it's the same process but just alter the resolution, what display would you recommend? 7" is the largest I have room for.
Thank you! Could you please send me an email to utuber.upir(at)gmail.com? I would like to experiment with aftermarket ECUs and I´m looking for someone with Megasquirt for testing. Would you perhaps have time to help in exchange for getting such display? Thanks!
Thank you
You are welcome!
Awesome Video! Looking forward to the touch version vid, since I’m trying to get mine working. Seems like there is no custom partitioning scheme option available in the IDE and the now the file is to big. You guys have any ideas?
Thank you. Do you have the latest ESP32 boards installed?
Great idea,
I want to see a tutorial from you of how to use MicroSD card with Ardiuno or Esp32,
and Thank you ♥.
Thank you. Yes, I will most likely use microSD soon, since I have a different board that already has the microSD slot... so it would make sense to try to use it.
@@upir_upir okey thanks 👍
Good job
Thank you!
Hi
Great videos
Would it be possible to use one display with two or three sensors and display the values for each sensor by pressing a momentary button.
Thanks
I don´t see a reason why it should not be possible, but I would probably prefer to show those two or three values at the same time, without the need to switch content.
@@upir_upir would it be possible to do a video or code and schematic for that.
Sensors would be
Oil temp
Oil pressure
Water temp
great job my friend for one more time, thanks for your videos. i want to ask you if you try to increase memory with hardware for more images. i try to use your ford focus gauge(oil press and oil temp so we talk for about 220 image) but need too many of memory.
Thank you. There is probably no simple way how to add more memory on this board, but you can try storing the images in some compressed file formats - like JPG, and see what would be the performance.
thanks for this new item each time explanations are quite clear. Now after the temperature and the boost it remains the engine rpm counter- 😁😁 is it planned?
Actually, there is also a speedometer - I will do that one first, and than move to tachometer :)
What do you think about interpolating the temperature values to make the needle smoother at cost of responsiveness ?
That or some kind of rate that limits how fast it changes.
Probably not that useful for water or oil, but who knows.
Well, if you used LVGL, there's an animation feature and with it the display values don't change instantly. In this case, he's using images, so that wouldn't work there.
The temperature is already interpolated between frames, so it´s just a matter of tweaking how fast you want those jumps to be.
This is awesome, shame its only a 1.28inch screen, as they are too small to be use full in the car! Will you ever do projects with a Esp32 S3 Development Board 1.85 Inch or the Esp32 S3 2.1 Inch?
Thank you. Yes, I would like to try those bigger round displays as well.
Dear friend, could you replace the oil can graphic with the letters CVT? Is it very complicated? The reason is that my Subaru vehicle has a CVT transmission. Great job you did!!!
That should be simple. There is a PSD file on GitHub, you just need to modify it in Photopea and export those images again.
When will there be a video on LVGL with SquareLine Studio?
Hopefully soon, but I have like dozen of projects going on at the same time..
Would be cool if it moved the arrow slowly, like a real meter.
That should be as simple as adjusting one variable in the code - when calculating the temperature interpolated, just increase the last value from 5.0 to some higher number.
congratulations and many thanks ! its a great project ! Im trying to upload your code into a waveshare esp32s3 lcd 1.28" (non touch) display, upload process finished succesfully (with no errors), but cannot turn on the screen... could you let me know wich driver version of espressiff esp32 are you using? (if we use v2.0.12 I cant get a custom partition scheme, if I use a latest 3.0.1 version can use custom partition from .csv, is this what should I use?) , and please, let me know about correct library version (Ive installed ver 2.5.43 of TFT_eSPI by Bodmer library, is this ok?) many thanks again !!!
Let me check the versions and get back to you. Thank you!
Do you do payed project with my specs if I would need one? :D
Maybe :) Please send me an email. Thanks!
Could the sensor maybe get data from an OBD-II reader with Bluetooth?
You don't need this at all if your trying to do that, they make stuff like that already
@@ninjameep8616 I don't "need" any of the projects I'm doing with microcontrollers and SBCs. In fact, my wallet (and wife) would probably be happier if I didn't engage in those projects 😅
Yes, I would like to cover getting the data from OBDII in the next video. As for the other comment, I agree that my wallet would also be much happier without having all those displays :)
@@upir_upir Volos forced me, FORCED ME, I SAY, to order 2 Lilygo T-Panels this week. I have PTSD from the blatant disregard for my financial stability. I just hove I get time to finish my M5Dial project before they arrive 😂
34:20 35 as number but not by pointer
It’s because of the rounding.
Hi. Thanks for you video.
Can you tel me please what Font you use?
This one uses Chakra Petch font.
@@upir_upir thanks a lot
wow
Thanks!
Thanks for this tutorial, Is it possible to run miltiple sensors and gauges from one Audrino device? Like could i make one unit thats has oil, water, egt, a/f ratio etc...
I'm keen for this too, either utilising a button to switch between the selected thermocouple/sensor or just having it cycle through each sensor at a defined interval.
Yes, you can do that. I will cover it in some future videos.
Hi, would you consider building gauges on demand ?
Maybe. Could you please send me an email? Thank you.
thx for the feedback, can you share your email pls?
Sure, it´s utuber.upir(at)gmail.com
I would like to see an energy monitor that measures voltage , current ,watt etc...
Do you mean for home energy monitoring?
@@upir_upir yes..
In today's vehicles, these values are already recorded and can be accessed as CAN bus parameters.
Why take individual extra measurements?
Classic cars are of course an exception.
Maybe you don´t have such sensor in the car? Maybe you want to measure temperature that you usually don´t measure? Or - as you have mentioned, there are plenty of old cars, project cars, kit cars...
I am going to build this for my 1981 300GD Gelandewagen ;-), absolutely no OBD or other fancy electronics in it so this will be perfect ;-)
Hello, good job, is it possible to use the same screen to have multiple gauges, for example, press a button and change from temperature to boost?
Yes, that should be possible. There is even a version with touchscreen, so there is no need for physical button in that case.
Is there a way to set a warning limit if the temperature gets too hot? I’m sure it’s simple to do with the bitmap images, but what about with the code? For example, if it reaches 200F, set a warning message on the display to “stop, turn off engine, overheating” type message.
This would be an awesome modification for a 1998-2010 Volkswagen New Beetle that didn’t come with any coolant temperature sensor for the driver.
This should be as simple as having one more if statement and comparing the temperature against some set of rules.
Is there a reason why it is not done with a background image and superimpose the pointer over it?
Or even rotate the pointer based on the values?
Yes, you can surely do that - I just didn´t know how to do it and keep the anti-aliased edges. The libraries that I have tried all rendered non-pleasing rotated images.
@ challenge accepted when the time comes :-)
Hi Upir.
Is it possible this gauge shows Boost and EGT at the same time?
Thanks!
Yes, that should be possible. Probably the easiest way would be to split the display in half to show two gauges.
@@upir_upir Thank you for reply!
PS. I wonder I still need to use this amplifier board for EGT sensor when temps are around 900C and moves by dozens in a second
Would it be possible to use multiple displays on 1 arduino uno? So multiple different temp gauges?
Yes, you can use multiple displays.
What was the ESP32 lib version installed and how the custom partition is added in the menu
I have used the latest ESP32 version, that way, the menu was there. You can add a new item to that menu, but an easier solution is to just include the file in the project folder.
A range of -30 to +30/40°C would probably be more reasonable here
For measuring air temperature - yes. For my testing, I wanted something I can easily change using just my finger temperature.
Hello.
Very good channel with good information.
Would it be possible for you to make a waveshare round screen project that can display information from OBD and can-bus. Or just only canbus. I am in a pickle. Trying to change racing dash with more custom option that suits old cars better.
Also I could not find your e-mail.
Thank you. I have a few videos about interfacing OBDII - please see some newer ones for more details. The email is on the about page, but sometimes it´s only visible on the desktop, not on phone.
One question, why u not push one image to rotate? There is any benefits to use rotated static needle exept use function:
needleLeft.pushRotated(&gaugeBack, angle, TFT_TRANSPARENT);
I will cover this question in my next video. In short - you can definitely do that, but it will not look that good.
For a german, the joke was ok
There was a joke?
Hmm ... even without knowing the exact signature of map(), your needle_image is an integer, so the result of map() will be an integer in any case. The round() call in the next line is therefore useless. When carefully looking at the video, you can actually see it is off (at 34:19, needle shows 33° but digits show 35°). Better manually do the mapping into a float, then use a round().
That´s a good point, and I´m pretty sure you are right about the map() function returning an integer value, and that using a manual mapping to float would make more sense. Thank you for your comment.
Any chance to make with smart watch display & board...? they are cheaper... 🙂
But probably also even smaller, right?
@@upir_upir Yes, but LCD is bigger,1.38"+... Also supports battery...
Maybe only issue is programming it, I don't think those processors will works with Python like rasberry pi... 🥲
Do you have the reference of a larger screen (2.5 inches) which will work with your approach (by adapting the image sizes of course)
Yes, I´m currently testing some bigger round displays, and I will cover them in a future video - hopefully soon.
Upir, all your videos is so good, im brazilian, sry bad english, you NEED TO MAKE a video tutorial HOW TO MAKE A WIDEBAND GAUGE, because in brazil wideband gauges high custs, like 1000 brl, in dolar like 1000 dolars, because if you take minimal payment in brazil like 1300 brls, can u make?
I have a e36 here in brazil, and i have a ideia, i want to put a custom wideband inside my original pannel, with a led display to make the color same, if the sensor taking work temperature in display say M for m3, and if the temperature ok, display tells me the air/gasoline, this is my idea
I have found some Wideband lambda sensor control shield for Arduino, maybe you can use that one? Unfortunately I haven´t found the price.
@@upir_upir yes, if we can get the lambda numbers and print in screen, its so good to make a video tutorial to custom cars and original, because custom cars needs this piece, if we make a good theme and display, i thing you get A LOT off Brazilian viewers and subscribes, if you can make a video tutorial or send me the link, help a lot!!!
@@upir_upir do u can get me your instagram to tell you more the ideia?
Instagram or telegram or WhatsApp
Can this display and technique be used with a transducer and show psi instead of temperature.
I have a second video where I use the very same display as a turbo gauge. Perhaps that´s the one you are looking for?
I wanted to make digital touch screen for my car for controlling the lights ( high beam ,low beam and the climate control . Can you guide me in the right direction ?
Thank you !
Are you trying to just replace physical buttons? In that case, you should probably be able to just use some relays to switch the original buttons, instead of trying to mess with canbus.
Wonder if i could use this for oil pressure also?
Yes, that should be possible. There are many oil pressure sensors on AliExpress that works in the similar way as the pressure sensor that I have used in the previous video.
Got a couple questions:
1. On your Github page you have what looks to be a 1/8 NPT but no indication on what it is....if it's usable or does it run on the 12v?
2. Is there a way to do a video on how to make the guages on photopea...not very good with photoshop and any guidance would be helpful
Can you please do a tutorial on those oled display with grayscale feature? I just bought a ssd1322 256x64 3.12'', it works great with 4spi config but u8g2 doesn't support grayscale I think.
I'm trying to put this display into my bluetooth speaker to show battery, volume, audio visualizer and stuff (I use pretty much all of your tutorials), I've got everything else working fine thought, but having some grayscale bit animations behind the info would be awesome.
I have tried grayscale in the past, but haven´t found a decent library. As you said, u8g2 does not support grayscale. The u8g does, but only partially - you must draw every color separately, i.e. storing one image as multiple arrays, and it was just way too complicated to use it for a project. I might take a second look if there are some better libraries out there that could be used, perhaps from Adafruit. That said, if you only want to show grayscale image, that should be possible even with u8g2 - I might record a tutorial about that.
Could you do it with heart rate sensor?
Yes, that should be possible.
Can you create a tutorial about it
hi can i use another screen?, because in my country cant find the same screen
You can use any screen with ESP32 that is supported by the tft_ESPI library, but you would need to update the code accordingly.
@3:00 why is it so bright in here !?!? LOL
What?
i m trying to use a esp32 and an ili9341 2.2 tft display and cant make it work becase the needle cpp is too big, how does you made it work??
thanks, is a very nice gauge!
This board has 16MB of flash memory, I´m using I believe around 10MB. If you don´t have that much flash memory, you can just rotate the image of the needle - I will describe it in a future video.
@@upir_upir thanks I'm on it!
Can I order it all set from you?
Not yet...
this could work for my pizza oven 😦
I haven´t thought about that, that´s surely an interesting usage!
I have other version of this (using a ESP32-C3 and the same controller for screen GC9A01) that i can not put a simple "hello world" working on screen....
I would think that the C3 version would work in the very same way as the S3 version, but maybe something else is different.
Hello. Make a project "Eye of the devil" in car headlights.
That´s interesting, I will see what´s possible.
@@upir_upir Thank you
SOOO CUTE FİNE
Thanks!
Anyone knows is it possible to adjust the display brightness?
Yes, one of the pins is for backlight. Just set it to PWM and you will be able to change backlight brightness.
Can you tap into a cars OBD signal and show the engine temp ?
Yes, you should be able to do that as well. I will cover getting data from OBDII in a future tutorial.
@@upir_upir oh man , that would be great , thank you 😊 👍
this type contents are Awsome but for me as a mechanic need coding knowladge to make this type guages if it posible put coddind and even graphic sections in any type (comment section. link. or etc) to easy reach for my type people
i really apriciated to share your knowladge with us
Thank you. All the source files are on GitHub, the link is in the description.
@@upir_upir thank you bro
nice work overall. however, using gpio as a power source is strongly ill-advised. It is true that the gpio can source up to 40mA in default configuration on the ESP32 chip, which is sufficient for the thermocouple chip. Unlike a proper voltage regulator, however, gpio have no over-current limiting protection. If you make a wiring mistake and short out a voltage regulator, as long as it is only temporary, the regulator usually recovers when the short is removed, and nothing is damaged. If you make a mistake wiring the gpio as power source and short it to ground (or the module is damaged.. or you make a code error setting the pins), the ESP chip is destroyed and unrecoverable.
There is literally 3 decades of literature related to microcontrollers illustrating why using a GPIO as a power source is a mistake and should never be done. This very literature will make the compromise that its "ok" to source an (low current) LED as an output, such that code logic is not inverted (pin HIGH = LED ON), but always caveats that the "correct" way is to sink the LED (VCC through LED and resistor, INTO the GPIO). This however creates a logic inversion in code, that pin HIGH = LED OFF. The other option being to drive it via transistor/FET. The D13 LED schematic on older or cheap clone Arduino Uno is "accepted" but not correct. The R3 version fixes this without requiring code changes by wedging an op-amp between the IO and LED.
You are right, that´s something you want to avoid, but unfortunately the board (for some unknown reason) doesn´t have any 3.3V pins. Again, not quite sure what is the reason for that. I wanted to make it as simple as possible and used this shortcut, but I will see how I can update the project with a more proper power source.
@upir_upir is there a 5 volt source? Use a secondary 3.2v regulator? You can even choose one with an enable pin and drive THAT with a gpio to to some power management.
Ah never mind about power management. Forgot this is about an automotive gauge. Check that chip or module may be 5v tolerant? Choose another part which is? Lots of options here. Heck a zener diode in a pinch is a [slightly] better option.
Hey the thermocouple module has a 3.2v regulator on it. Just hook to vsys.
UPIR: I want to put a hidden automated realtime camera at work that takes photos of women standing by the coffee machine and compares the facial characteristics against the golden ratio mask (the one that shows the most attractive facial features). I want a large gauge like this on top of my laptop monitor that lights up and shows the "hotness temperature" only when women that scores more than 70 is visiting the coffe machine so I "accidentally" can walk over to stand in line for coffe while trying to strike up a conversation. If you can make it trigger especially for asian women it would be perfect. Can you make this project?
Not quite sure if that´s a joke or not..
@@upir_upir Maybe it was a little bit meant as a joke ....
wtf did i just read….