Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


1 Follower

About inmarket

  • Rank
    µGFX Guru

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. inmarket

    STM32F746-Disco & Eclipse - Makefile approach

    Have a look in the example makefiles. It should be obvious.
  2. This has now been updated into the repository. Thanks for finding it.
  3. inmarket

    STM32F746-Disco & Eclipse - Makefile approach

    Use our file instead of the firmware file in your build. STM keep changing their firmware in incompatible ways which is why we include a particular version in our repository. @cpu20 is the expert in getting ide's to include the correct files. He has published a number of guides that may help. The other way is to not rely on the ide's build generator and to instead create a true makefile project in eclipse. It is by far the easiest way to build uGFX and it is where we as developers started. If you are nterested in this have a look at some of the prepared makefiles in the various board example directories.
  4. Thanks. I will look closely at that asap and update the repository accordingly.
  5. inmarket

    GSourceHandle ???

    If the line specified is right at the top of the function my guess is that it will work. If it is not at the top then you are running into a common C, C++ language misconception. C does not allow variable definitions except at the top of a block. Once a non-variable definition statement has occurred variable definitions are not allowed in the block. Whilst the C language does not allow this, C++ does. As many C compilers have associated C++ compilers many C compilers relax the rules and allow such definitions eg gcc. My guess is that the IAR C compiler follows the language standard and doesn't allow this. In general in C it is a good idea to seperate variable definitions from code to set the variables.
  6. inmarket

    support unicode and RTL language

    It is possible to use RTL languages with ugfx but it's a little more work for the programmer. 1. Use right justification instead of left justification for all your text boxes. 2. Reverse the characters in any string you want to print so they appear in the correct order when displayed. This can either be done programmatically (something like the gtrans module) or simply writing any fixed string with the characters reversed when programming. Eg. "abc def" would be written as "fed cba" and then right justified.
  7. inmarket

    Running µGFX on ESP32 and Arduino IDE

  8. inmarket

    Problem with low performance

    I presume you are using an M3 with the internal ltdc video controller. If that is not the case the below discussion may help even if it not directly applicable to your circumstances. The problem is likely to be related to your external sdram and it's bandwidth. The proof of this is the slow performance (noticeable redraw speed) of the gdispClear loop.The image drawing tests are therefore meaningless until that problem is solved. The first thing to try is putting the framebuffer into internal ram as a test. If that operates quickly the problem is your bus interface to the external sdram. Note that if your framebuffer is in external ram do not put any other objects, heaps, stacks, code or anything else in that external sdram. Framebuffers are extremely bandwidth intensive just with video refreshing. Other things to check are your CPU clock is running at full speed, wait states and speed and width of the sdram bus and also look for any other high speed requirement that may affect available bandwidth or speed.
  9. inmarket

    Display is intermittent - SSD1322

    Have a look at the CMD_SET_REMAP. The value 0x14 may not match your display.
  10. inmarket

    Display is intermittent - SSD1322

    It looks like the column order on your display might be a bit different to the standard arrangement. Check the initialisation sequence particularly around the column order settings. The other place to look is around the spi data format eg if you are outputting 9 bit spi bit the controller expects 8 bit spi (or visa versa) you will get similar symptoms.
  11. inmarket

    Display is intermittent - SSD1322

    What type of physical interface do you have to your display? Eg i2c, spirit, 8 bit parallel.
  12. More information... Aquire_bus and release_bus give you an opportunity to use a shared bus. Post_init is called once the controller has been initialised. Many controllers need to be initialised at a slower bus speed. Post_unit gives you the opportunity to increase the bus speed after the controller is initialised.
  13. inmarket

    TextEdit widget Issue

    This has now been fixed in the repository. Thanks for finding it!
  14. Unfortunately there are only two mechanisms, off-screen drawing (pixmaps) and double buffering. Double buffering is a big nasty topic in its own right - search the forum for some of the discussions on that subject. It is probably also not viable for you given your controller and bus interface. As far as pixmaps are concerned v3.0 will fix the incompatibility with single file make. The filled string drawing algorithm will be updated at some time in the future too but that is not a simple task as their are lots of complexities with fonts.
  15. inmarket

    A bug in gfxRealloc()

    I have seen the post and have left it open to sort out when I get time but haven't had that time yet due to various project deadlines. Thank you for finding it and I will report back when I have had time to properly investigate and correct the master sources.