Jump to content

Joel Bodenmann

Administrators
  • Posts

    2,620
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Joel Bodenmann

  1. You have to write what's called a Toggle driver for the GINPUT module. There's no way to register an IRQ in the upper levels. You'll find information about this on this forum. It's still possible to hack it into the GINPUT driver though.
  2. That project will most likely use auto-flushing or timer based flushing which is simply a setting in gfxconf.h.
  3. Can you post a screenshot that shows the problem? Also, there are the high-level calls gwinHide() and gwinShow() which you should use. gwinSetVisible() is fine too though, but check the last parameter. You should definitely not manually touch the flags.
  4. The SSD1306 is a flush-based GDISP driver. The driver maintains a framebuffer itself which needs to be copied to the actual display controller's framebuffer. That operation is called flushing. Try to call gdispFlush() after rendering. You will find configuration options for flushing in the configuration file and more information in this forum.
  5. Yes, that's possible. With µGFX, almost anything is possible in these regards. You can use a pixmap which is only the size of the button, render the button and then blit the finished one to the actual framebuffer You can also implement full-screen double buffering You can also implement driver level double buffering You can also implement hardware supported double buffering ... What works best (and what's possible) depends on the application, used platform, available resources and so on. There's no general guide to double buffering. In our daily work for customers we use all of the methods above. As always: The right tool for the right job. Each method has different advantages, disadvantages, requirements, complexities and so on. You might also want to keep in mind that flickering can occur from different sources.
  6. I don't want to disturb the conversation, I just feel like these two are worth mentioning/showing: They are both using µGFX on an STM32F407 with no external RAM:
  7. The migration has been completed successfully. The online font converter is available again.
  8. We're physically migrating the online font converter server to a different location. Therefore, the online font converter service will be unavailable for a couple of hours up to two days if things go wrong. You can always use the offline font converter built into the µGFX-Studio.
  9. You might need to increase the values of GMOUSE_ADS7843_FINGER_CALIBRATE_ERROR and GMOUSE_ADS7843_PEN_CALIBRATE_ERROR in your board file. They are currently set to 20 and 2. Those are the distances in pixels which the fourth control crosshair is allowed to have as tolerance after the calibration has been applied. 2 and 20 are some very low values. Try higher ones.
  10. If you wrote the code for those functions but you're getting an undefined reference error you simply forgot to include the files in the compilation/linking process properly.
  11. Thank you very much - we appreciate it! I've added this to our internal ToDo list.
  12. The error message is definitely showing that something went wrong with including the GDISP driver as @inmarket mentioned. Maybe @cpu20 can help as he's our IDE integration specialist.
  13. You should start off by getting µGFX running on your platform. There's a guide on how to integrate µGFX into an existing Arduino project. The one for Teensy might be helpful too. Furthermore, you'll find plenty of information in this forum.
  14. Just create a new topic where you ask your questions that we can answer.
  15. We're happy to help, but you have to ask specific questions that we can answer. Also, please don't post in old/existing topics if you're content is unrelated.
  16. That's completely unrelated to this topic. Also, please only post English in this forum.
  17. 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.
  18. Hi, The v2.8 change log lists the changes that were applied to text rendering.
  19. Hi, If you use the forum search you'll find plenty of information regarding the double const
  20. 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.
  21. 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.
  22. 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.
  23. Glad to hear that you managed to get it working
×
×
  • Create New...