Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 6 of 6

Thread: SPI compiler error with ILI9341_t3 (Teensy 3.1)

  1. #1
    Junior Member
    Join Date
    Dec 2013
    Posts
    5

    SPI compiler error with ILI9341_t3 (Teensy 3.1)

    Hello,

    I have been using the Teensy 3.1 with the Adafruit ILI9341 display library for a while without any problems. I have been trying to run the graphicstest example for the new ILI9341_t3 library and am unable to because of some compiler errors related to SPI. I have verified that I am using the newest version of the Arduino environment and Teensyduino. I feel I might just be doing something stupid.

    Code:
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::setAddrWindow(uint16_t, uint16_t, uint16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:47:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:47:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:50:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::pushColor(uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:55:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:55:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:57:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawPixel(int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:64:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:64:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:68:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawFastVLine(int16_t, int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:76:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:76:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:83:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawFastHLine(int16_t, int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:91:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:91:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:98:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::fillRect(int16_t, int16_t, int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:117:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:117:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:126:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'uint8_t ILI9341_t3::readcommand8(uint8_t, uint8_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:211:9: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:211:67: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:255:9: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'uint16_t ILI9341_t3::readPixel(int16_t, int16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:263:9: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:263:67: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:282:9: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::begin()':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:314:10: error: 'class SPIClass' has no member named 'pinIsChipSelect'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:315:18: error: 'class SPIClass' has no member named 'setCS'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:316:32: error: 'class SPIClass' has no member named 'setCS'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:344:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:344:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:355:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:358:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:360:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawLine(int16_t, int16_t, int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:555:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:555:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:596:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawRect(int16_t, int16_t, int16_t, int16_t, uint16_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:602:6: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:602:64: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:608:6: error: 'class SPIClass' has no member named 'endTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp: In member function 'void ILI9341_t3::drawChar(int16_t, int16_t, unsigned char, uint16_t, uint16_t, uint8_t)':
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:850:7: error: 'class SPIClass' has no member named 'beginTransaction'
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:850:65: error: 'SPISettings' was not declared in this scope
    /Users/santiagogonzalez/Dropbox/Arduino/libraries/ILI9341_t3/ILI9341_t3.cpp:880:7: error: 'class SPIClass' has no member named 'endTransaction'
    Thanks!

  2. #2
    Senior Member
    Join Date
    Jun 2013
    Location
    So. Calif
    Posts
    2,825
    newest version of the Arduino environment
    1.0x
    not
    1.5x

    SPI beginTransaction is new/experimental.

  3. #3
    Senior Member
    Join Date
    Nov 2012
    Location
    Boston, MA, USA
    Posts
    1,135
    You need 1.0.5 (not 1.0.4 or earlier, and not 1.5.x) and you also need Teensyduino 1.20rc2 which you can get at
    http://forum.pjrc.com/threads/26298-...te-2-Available

  4. #4
    Junior Member
    Join Date
    Dec 2013
    Posts
    5
    I am using using 1.0.5. I guess that I just needed the release candidate. Thanks!

  5. #5
    Senior Member
    Join Date
    Nov 2012
    Location
    Boston, MA, USA
    Posts
    1,135
    Yes, the SPI transaction stuff is brand new (hence the errors for beginTransaction etc that you got).

  6. #6
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    28,478
    You need 1.20-rc2. Version 1.19 is too old for this new SPI stuff.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •