Jump to content

Joel Bodenmann

Administrators
  • Posts

    2,652
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Joel Bodenmann

  1. Hi, That would be appreciated a lot! I'd recommend you to simply upload a .diff here and we'll push it to the repository.
  2. Hi, The v2.8 change log lists the changes that were applied to text rendering.
  3. Hi, If you use the forum search you'll find plenty of information regarding the double const
  4. Hi, This is basically simple math. The most commonly used interpolation algorithms are usually the extremely simple linear, quadratic or cubic ones. However, what algorithm you choose depends almost only on your application (on what kind of data you're plotting). Sometimes you might want to resort to splines instead. Regarding libraries: Usually this stuff is extremely simple (it's basic math). I am sure that there are tons of great libraries for generic data interpolation and so on, but on an µGFX application you're usually dealing with quite a static environment where your data is always very similar. Therefore, I'd recommend to just figure out what matches your data the best and then implement that function in your application. TL;DR: What algorithm to use really just depends on the data you're plotting.
  5. Glad to hear that you managed to get it working. I can't check right now but as far as I know there's no high-level API call for that at the moment.
  6. gmvmt is a VMT (virtual method table). calsave is a function pointer in that table. Your custom saving routine is registered there. Therefore, gmvmt(m)->calsave() will call your custom saving function. If you get a hard-fault at that point your function is either not properly registered (wrong address?) or the implementation of your own function is causing the hardfault. Step into that function to check which one is the case.
  7. Glad to hear that you managed to get it working
  8. Hello & welcome to the µGFX community! That's not correct, see below. Did you enable the label widget in the configuration file? If that's not the case you're most likely not including all files properly.
  9. Hello & welcome to the µGFX community! Please excuse the late reply. This issue has been fixed now. There seemed to be a caching issue with the SSL cert where the SSL cert did get renewed but not properly cached. Your account has also been activated. Thank you for bringing this to our attention!
  10. Sorry, I do not understand your question.
  11. Glad to hear that you got everything working
  12. Did you have a look at this? https://wiki.ugfx.io/index.php/FreeRTOS Also make sure that you're using the latest master branch.
  13. It seems that you're confusing transparency and alpha-channel. If you're using GIF then that's expected as GIF doesn't support alpha buy only transparency. If you're using PNG you should refer to the documentation: https://wiki.ugfx.io/index.php/Images#Alpha_.26_Transparency
  14. Hi, You just need to use an image format which supports transparency. The existing GIF and PNG image decoders will handle transparency out of the box.
  15. Hello @chrisdf and welcome to the µGFX community! Thank you very much for sharing your experience here. We appreciate it a lot and I'm sure it will help countless people in the future as well! This is definitely interesting.
  16. Nice, glad to hear that you got everything working! We'd appreciate it if you could create a ready-to-run example for the downloads page and maybe some documentation for the wiki. Have a look at /demos/gos. The scheduler is also used for things like GTIMER which in turn is used by GINPUT and GWIN. As mentioned above, /demos/gos should help.
  17. I'd recommend you to have a look at the buffer in the GConsoleObject object (cast from GHandle).
  18. https://wiki.ugfx.io/index.php/Touchscreen_Calibration#Extreme_coordinates What do you mean by "not very responsive"? What's the behavior in a regular GWIN application like?
  19. That's interesting. Could you please leave some detailed information of the compiler you're using and also your build flags? What does that mean? Can you please give some more details?
  20. Have a look at the /demos directory. Especially /demos/tools in your case.
  21. Welcome to the µGFX community! Happy to hear that you managed to get things up and running
  22. Hello and welcome to the µGFX community! Unfortunately, there isn't an existing GINPUT driver for that touch screen controller. However, it's very easy to add a new one. Take the existing drivers as an example. You can simply copy the one who matches your controller the best (eg. don't take the ones which use the microcontroller's ADC to determine the touch coordinates) and modify from there. The entire driver interface is well documented in the corresponding GINPUT documentation. Please don't hesitate to ask if you have any questions - we're happy to help wherever we can!
  23. Thank you for bringing this to our attention. I've modified the documentation accordingly.
  24. Thank you for sharing your progress & files with everybody - much appreciated! µGFX can definitely do a lot better than that. µGFX does provide those kind of features as well (in a much bigger scope even). We basically call those "hardware acceleration". There are a number of functions that a GDISP driver can implement to use hardware acceleration. For rectangles that would be the `fill area` function. You can have a look at existing drivers. As you'll see it's simply a matter of turning the hardware support for a feature on in the drivers configuration file and then implementing the corresponding function. Have a look at the ST7735 driver for an example. You can see that GDISP_HARDWARE_FILLS is enabled in the drivers config file (gdisp_lld_conf.h) and that the drivers implementation file (gdisp_lld_ST7735.c) is implementing the corresponding hardware filling function named gdisp_lld_fill_area(). The actual implementation of such a function varies a lot. Some display controller have a simple command which takes X, Y, width, height and color while other drivers rely on using DMA and similar techniques to speed things up.
×
×
  • Create New...