Skip to content

Qt for MCUs

Discussions and questions about Qt Quick Ultralite and using Qt on microcontrollers in general

141 Topics 438 Posts
  • 0 Votes
    3 Posts
    732 Views
    Also try to add in Text: horizontalAlignment: Text.AlignJustify
  • 0 Votes
    1 Posts
    319 Views
    No one has replied
  • 0 Votes
    15 Posts
    2k Views
    @sandip-nandwana You are trying to use setNameFilters() to filter the directories/folders shown, is that right? I would not expect that to work in any situation, whether you set it initially or change it? The name filters are intended to be like *.txt to filter the files being shown within each directory, but not for the directory names themselves (else e.g. *.txt would never be useful). Is that your situation? If so, I think you need to find another approach, writing your own filter for directory names. You might interpose a QSortFilterProxyModel for this. There is an example in the accepted solutuon at e.g. https://stackoverflow.com/a/56627595/489865. It's a bit old but looks OK, use setFilterRegularExpression() instead of setFilterRegExp(). I am not sure whether that example will mean that your your whole tree will only display the (filtered) directories now, and nothing else. If you have to be smarter I think you will need to: subclass QSortFilterProxyModel, override QSortFilterProxyModel::filterAcceptsRow(), implement your logic there. Use that instead of setting a regular expression filter on the proxy so that you can implement logic to test for the item type to see whether it is a directory or a file, since you want these to behave differently.
  • Assembly file generation

    Unsolved 5 Sept 2022, 10:39
    0 Votes
    2 Posts
    610 Views
    @sathishgkg This has nothing to do with Qt. With GCC you pass -S parameter to the compiler, so it stops after generating Assembler files.
  • Qt for MCU is not installed!

    Unsolved 5 May 2022, 08:03
    0 Votes
    3 Posts
    990 Views
    @Farid_86 Tatiana's response is the right way to install Qt for MCU package. If you want to get access please ask for an evaluation package from Qt website. https://www.qt.io/product/develop-software-microcontrollers-mcu#getstarted
  • Problem creating project in QT for MCUs

    Unsolved 22 Feb 2022, 08:05
    1 Votes
    3 Posts
    955 Views
    If this problem still persists it means your environment is not correct. We have seen this issue when the Qul build system can not locate the required desktop packages in QtMCU installation directory. Please refer to the documentation https://doc.qt.io/QtForMCUs-2.2/qtul-setup-development-host.html.
  • 0 Votes
    6 Posts
    1k Views
    The Root cause for this issue: "Cache" is a property of Image Object and its default value is true. So the image was not taken from the path given in the "source". When the value of "Cache" is changed to false, the issue is solved. Thank you
  • This topic is deleted!

    Locked Unsolved 13 Jul 2022, 17:12
    0 Votes
    2 Posts
    23 Views
  • Problem with standards c and c++ include

    Unsolved 25 Oct 2021, 13:00
    0 Votes
    3 Posts
    606 Views
    this problem is happen when your visual studio version is not suitable. https://doc.qt.io/QtForMCUs-2.1/qtul-msvc-compiler.html
  • STM32H750B-DK demo

    Unsolved 18 Nov 2020, 12:43
    0 Votes
    3 Posts
    794 Views
    Hi, Did you find any solution for this issue? I have same issue.
  • I.MX RT1050 LCD another resolution

    Unsolved 29 Jun 2022, 06:23
    0 Votes
    1 Posts
    350 Views
    No one has replied
  • where does my backend live?

    Unsolved 26 Mar 2022, 13:54
    0 Votes
    2 Posts
    590 Views
    @rlushster said in where does my backend live?: The blocking serial example is helpful but I need something that runs in the background Then don't use Qt serial port module in blocking way. See https://doc.qt.io/qt-5/qtserialport-creaderasync-example.html Qt serial port implementation is asynchronous.
  • problems in running Qt for mcu examples

    Unsolved 22 May 2021, 05:57
    1 Votes
    2 Posts
    686 Views
    In your Run Settings, please change the Flash and run CMake parameters to "--build . --target flash_thermo_big". I believe this is related to QTCREATORBUG-23897.
  • 0 Votes
    1 Posts
    390 Views
    No one has replied
  • Maximum supported display resolution

    Unsolved 25 Oct 2021, 13:28
    0 Votes
    1 Posts
    396 Views
    No one has replied
  • Creating a new kit

    Unsolved 21 Oct 2021, 15:41
    0 Votes
    2 Posts
    469 Views
    Hi and welcome to devnet, Qt for MCUs being a commercial offering, you should contact the Qt Company directly.
  • Qt debugging issue

    Unsolved 20 Oct 2021, 12:11
    0 Votes
    1 Posts
    389 Views
    No one has replied
  • Using Designer with Qt for MCU example "motor_cluster"

    Unsolved 13 Oct 2021, 14:04
    0 Votes
    1 Posts
    399 Views
    No one has replied
  • Using CRC-16-IBM with QModbus classes

    Solved modbus checksum 13 Sept 2021, 02:40
    0 Votes
    4 Posts
    3k Views
    @J-Hilk , wow! Huge thanks for sharing your code! I reached out to our MCU department for source code of CRC they're using. Looks really similar to your solution: const unsigned char auchCRCHi[] = { 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40} ; const unsigned char auchCRCLo[] = { 0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7, 0x05, 0xC5, 0xC4, 0x04, 0xCC, 0x0C, 0x0D, 0xCD, 0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09, 0x08, 0xC8, 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A, 0x1E, 0xDE, 0xDF, 0x1F, 0xDD, 0x1D, 0x1C, 0xDC, 0x14, 0xD4, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3, 0x11, 0xD1, 0xD0, 0x10, 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32, 0x36, 0xF6, 0xF7, 0x37, 0xF5, 0x35, 0x34, 0xF4, 0x3C, 0xFC, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A, 0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0x38, 0x28, 0xE8, 0xE9, 0x29, 0xEB, 0x2B, 0x2A, 0xEA, 0xEE, 0x2E, 0x2F, 0xEF, 0x2D, 0xED, 0xEC, 0x2C, 0xE4, 0x24, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26, 0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0xE0, 0xA0, 0x60, 0x61, 0xA1, 0x63, 0xA3, 0xA2, 0x62, 0x66, 0xA6, 0xA7, 0x67, 0xA5, 0x65, 0x64, 0xA4, 0x6C, 0xAC, 0xAD, 0x6D, 0xAF, 0x6F, 0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0x68, 0x78, 0xB8, 0xB9, 0x79, 0xBB, 0x7B, 0x7A, 0xBA, 0xBE, 0x7E, 0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x7C, 0xB4, 0x74, 0x75, 0xB5, 0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71, 0x70, 0xB0, 0x50, 0x90, 0x91, 0x51, 0x93, 0x53, 0x52, 0x92, 0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x54, 0x9C, 0x5C, 0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B, 0x99, 0x59, 0x58, 0x98, 0x88, 0x48, 0x49, 0x89, 0x4B, 0x8B, 0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x8C, 0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83, 0x41, 0x81, 0x80, 0x40}; unsigned short CRC16 (unsigned char *puchMsg, unsigned char usDataLen ) { unsigned char uchCRCHi = 0xFF ; /* high byte of CRC initialized */ unsigned char uchCRCLo = 0xFF ; /* low byte of CRC initialized */ unsigned short uIndex ; /* will index into CRC lookup table */ while (usDataLen--) /* pass through message buffer */ { uIndex = uchCRCLo ^ *puchMsg++ ; /* calculate the CRC */ uchCRCLo = uchCRCHi ^ auchCRCHi[uIndex] ; uchCRCHi = auchCRCLo[uIndex] ; } return (uchCRCHi | uchCRCLo << 8) ; } And a small header: #ifndef __CRC16_H__ #define __CRC16_H__ 1 unsigned short CRC16 (unsigned char *puchMsg, unsigned char usDataLen ); #endif //#ifndef __UART_H__ After a first glance, you can spot the similarities. Huge thanks for help!
  • 0 Votes
    1 Posts
    588 Views
    No one has replied