Forum Rule: Always post complete source code & details to reproduce any issue!
Page 1 of 4 1 2 3 ... LastLast
Results 1 to 25 of 76

Thread: Teensyduino 1.53 Beta #2

  1. #1
    Administrator Paul's Avatar
    Join Date
    Oct 2012
    Posts
    381

    Teensyduino 1.53 Beta #2

    Here is a second beta test for Teensyduino 1.53.

    Please install this into a fresh copy of Arduino. Several old libraries have been removed. If you "install on top" of a previous version, your copy of Arduino will keep those old libs. While not harmful, best to test this version installed into a fresh copy of Arduino.


    Linux 32 bit:
    https://www.pjrc.com/teensy/td_153-b...nstall.linux32

    Linux 64 bit:
    https://www.pjrc.com/teensy/td_153-b...nstall.linux64

    Linux ARM:
    https://www.pjrc.com/teensy/td_153-b...stall.linuxarm

    Linux ARM64:
    https://www.pjrc.com/teensy/td_153-b...l.linuxaarch64

    MacOS 10.10 to 10.15:
    https://www.pjrc.com/teensy/td_153-b...S_Catalina.zip

    MacOS 10.8 to 10.14:
    https://www.pjrc.com/teensy/td_153-b...inoInstall.dmg

    Windows:
    https://www.pjrc.com/teensy/td_153-b...inoInstall.exe


    Changes since Teensyduino 1.53-beta1:

    Improve C++ STL support
    Fix compiler warnings in several library examples
    Update libraries: FastLED, MIDI, RA8875, Adafruit_NeoPixel, FlexCAN, FlexCAN_T4, ILI9488_t3
    Entropy library support for Teensy 4.x random number hardware
    ILI9341_t3 proportional font rendering speedup (Larry Bank)
    Audio: add rectifier effect and vocoder example by Bradley Sanders
    Fix serialEventUSB1 & serialEventUSB2 on Teensy 4.x (KurtE)
    Add MIDIUSB.h compatibility on Teensy 4.x
    Check hardware serial FIFO in avalable and peek (KurtE)
    Remove libraries: Adafruit_GFX, Adafruit_CC3000, Adafruit_RA8875, openGLCD, ST7565

  2. #2
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    12,410
    Win 10 Fresh install of IDE 1.8.13 then TD 1.53b2 - No install issues

    some Sketch Upload to T_4.0 then to T_4.1 worked as expected.

    Also working @luni's standard lib sample from : pjrc.com/threads/61388-Teensyduino-1-53-Beta-1
    Same good results:
    Code:
    Testing std::vector ------------
    First string
    Second string
    Last string
    
    Testing std::map--------------
    0
    42
    
    Testing std::function----------
    The string 'some string' has 11 characters

  3. #3
    Senior Member
    Join Date
    Apr 2020
    Location
    DFW area in Texas
    Posts
    129

    No problems here

    Paul:
    - running under Windows 10 Pro (version 1909, OS build 18363.900)
    - downloaded TD 1.53b2
    - uninstalled existing Arduino 1.8.13
    - installed Arduino 1.8.13
    - installed TD 1.53b2
    - opened my TeensyMIDIPolySynth sketch & built for Teensy 4.1, Serial + MIDI, 600MHz, Fastest

    Capabilities tested/verified:
    - Audio Shield Rev D & libraries
    - traditional hardware MIDI (thru DIN jacks)
    - USB MIDI (advertises itself as a MIDI hardware device)
    - USB host w/ USB MIDI keyboard plugged in

    All works as expected.

    Thanks !!

    Mark J Culross
    KD5RXT


    P.S. Would you consider including the simple change identified <here> in the next beta ??

  4. #4
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    12,410
    Building T_4.1 example :: T:\arduino-1.8.13\hardware\teensy\avr\libraries\ADC\examples\ adc_dma

    <<CORRECTION>> :: ADC in TD 1.53b2 does have the functions and does work when the edits are made to the example below is adc1 here are lines for adco:
    Code:
        adc->adc0->setAveraging(8);
        adc->adc0->setResolution(12);

    Not sure if this is expected - or perhaps fixed in current github code?
    Code:
    adc_dma: In function 'void setup()':
    adc_dma:63: error: 'class ADC' has no member named 'setAveraging'
         adc->setAveraging(8); // set number of averages
              ^
     ...
    
    Using library ADC at version 8.0 in folder: T:\arduino-1.8.13\hardware\teensy\avr\libraries\ADC 
    'class ADC' has no member named 'setAveraging'
    Doesn't look like it has - but 21 day old edit added :: __attribute__((error("Use adc->adcX->setAveraging instead"))) void setAveraging(uint8_t num, int8_t adc_num = -1);

    Pulled the latest from github and it is working with this in the second set of settings:
    Code:
    //    adc->setAveraging(8, ADC_1); // set number of averages
    //    adc->setResolution(12, ADC_1); // set bits of resolution
        adc->adc1->setAveraging(8);
        adc->adc1->setResolution(12);
    Will post issue to correct the example { github.com/pedvide/ADC/issues/62 }- but maybe the new lib if ready could be pulled in?
    Last edited by defragster; 06-21-2020 at 08:04 AM.

  5. #5
    Senior Member
    Join Date
    Aug 2019
    Location
    southwest USA
    Posts
    117
    i saw some syntax changes between TD 1.48 and 1.52 that may relate to 1.53 betas?

    needed in 1.48
    adc->setAveraging(1,ADC_0);

    needed in 1.52
    adc->adc0->setAveraging(1);

    also - total crash when trying to compile adc for TLC - see post #46 in "Teensyduino 1.52 released"
    in addition i posted it as a bug report but cannot find that one now - i did a very hockey edit in one
    of the adc lib .cpp files to work around it.

  6. #6
    Member
    Join Date
    Nov 2018
    Location
    Canada
    Posts
    47
    I loaded 153B2 into Platformio and tested a program that requires multiple std::vector arrays. Previously, the program would function correctly with one vector defined, but would not compile with multiple vectors. I'm happy to report that my program now compiles and behaves correctly with multiple std:vector assignments.

    Great work Paul and thanks for the STL mods.

  7. #7
    Senior Member
    Join Date
    Jan 2020
    Location
    Toscana
    Posts
    130

    Unhappy Audio Tool import issue

    The audio tool has a new issue when importing a project:
    Some connections are not displayed and not established.
    As example see attached screen shot taken from importing the Vocoder19Band example.
    Click image for larger version. 

Name:	snap-1.jpg 
Views:	21 
Size:	125.7 KB 
ID:	20672

  8. #8
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    I'm testing the RA8875 and Adafruit_RA8875 libraries. I currently have only the Adafruit display on my desk. Somewhere I have a Buydisplay one... need to dig it out.

    Looks like the Adafruit display requires "tft.GPIOX(true);" to actually turn on. Adafruit's examples have this, but it's missing in the RA8875 examples. Would adding this impact non-Adafruit RA8875 displays?

    The good news is Adafruit seems to have fixed the old timing bugs where large text only worked with slow boards. So there no need to keep a modified copy of Adafruit_RA8875.

  9. #9
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    I'm testing the RA8875 and Adafruit_RA8875 libraries. I currently have only the Adafruit display on my desk. Somewhere I have a Buydisplay one... need to dig it out.

    Looks like the Adafruit display requires "tft.GPIOX(true);" to actually turn on. Adafruit's examples have this, but it's missing in the RA8875 examples. Would adding this impact non-Adafruit RA8875 displays?

    The good news is Adafruit seems to have fixed the old timing bugs where large text only worked with slow boards. So there no need to keep a modified copy of Adafruit_RA8875.
    Don't think it will hurt. Looks like its used for turning on the display using PWM as opposed to just having the BL hooked up to a power pin. With BuyDisplay think the jumpers are set to use BL attached to a power pin

  10. #10
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    I found a 7 inch Buydisplay RS8875 and wired it up. Looks like "tft.GPIOX(true);" has no effect. It should probably be in all the examples with a comment that it's needed for Adafruit's RA8875.

    Click image for larger version. 

Name:	ra8875.JPG 
Views:	18 
Size:	115.9 KB 
ID:	20673

  11. #11
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    Looks like we may have timing issues. This mangGauges_800x480 example works with Teensy 4.0 when the CPU speed is set to 528 MHz or slower, but fails if 600 MHz or faster.
    Last edited by PaulStoffregen; 06-22-2020 at 03:23 PM. Reason: typo

  12. #12
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    Looks like we may have timing issues. This mangGauges_800x480 example works with Teensy 4.0 is the CPU speed is set to 528 MHz or slower, but fails if 600 MHz or faster.
    Don't have a 800x480 display, think Kurt has one, but i just ran it on a 480x272 display with 4 gauges (does clip the last one) but it looks like its working on a T4.0 without a problem. Can you try just 4 gauges to see if its still a problem?

  13. #13
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    I'm testing the RA8875 and Adafruit_RA8875 libraries. I currently have only the Adafruit display on my desk. Somewhere I have a Buydisplay one... need to dig it out.

    Looks like the Adafruit display requires "tft.GPIOX(true);" to actually turn on. Adafruit's examples have this, but it's missing in the RA8875 examples. Would adding this impact non-Adafruit RA8875 displays?

    The good news is Adafruit seems to have fixed the old timing bugs where large text only worked with slow boards. So there no need to keep a modified copy of Adafruit_RA8875.
    I added this line to the end of "begin" function in the RA8875.cpp file:
    Code:
    	if(_displaySize == Adafruit_480x272 || _displaySize == Adafruit_800x480 ) GPIOX(true);
    Should work.

  14. #14
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    I tried the "RoundGauges" example which draws 3 of them. It run for a few seconds at 600 MHz. Looks like it's still transmitting, but the display gets confused out out of sync somehow. It runs find with slower clock speeds.

  15. #15
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    I tried the "RoundGauges" example which draws 3 of them. It run for a few seconds at 600 MHz. Looks like it's still transmitting, but the display gets confused out out of sync somehow. It runs find with slower clock speeds.
    Just tried round gauges on the 480x272 and its been running at 600Mhz for the last 6 minutes. Something strange going on. I just ordered a 800x480 7inch display from BuyDisplay should be here end of the week.

    EDIT: You could try lowering the SPI Clock. Right now we are at 18Mhz by default.
    Code:
    	const static uint32_t MAXSPIREADSPEED  = 6000000UL;  //Read don't go higher than 22000000!;
    	#if defined(__MK20DX128__) || defined(__MK20DX256__)  || defined(__MK64FX512__) || defined(__MK66FX1M0__) || defined(__IMXRT1062__)
    		const static uint32_t MAXSPISPEED	= 18000000UL;  //don't go higher than 22000000!;
    This if from usersettings.h file. You can change SPI in the begin statement:
    Code:
    	void 		begin(const enum RA8875sizes s,uint8_t colors=16, uint32_t SPIMaxSpeed = (uint32_t)-1, uint32_t SPIMaxReadSpeed = (uint32_t)-1 );
    maybe try

    Code:
    tft.begin(RA8875_800x480, 16, 12000000, 22000000);
    Last edited by mjs513; 06-22-2020 at 04:16 PM. Reason: Added info

  16. #16
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    Which size 480x272 display are you using? I'll get one on order too.

  17. #17
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    Which size 480x272 display are you using? I'll get one on order too.
    Have a 480x272.

    Have to order it quick - they close for awhile starting June 25th.

  18. #18
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    I don't think it's the SPI clock speed. I edited the code to increase to 22 MHz, and I used my scope to check it really was 21.8 MHz. At 528 MHz and 21,8 MHz SPI clock, it runs reliably. But with Teensy 4.0 at 600 MHz, even with slower SPI clock, it seems to go awry.

    Click image for larger version. 

Name:	file.png 
Views:	13 
Size:	28.4 KB 
ID:	20675

  19. #19
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    22,757
    Quote Originally Posted by mjs513 View Post
    Have a 480x272.
    I see 480x272 comes in both 5 inch and 4.3 inch sizes.

    https://www.buydisplay.com/4-3-tft-l...al-spi-i2c-mcu

    https://www.buydisplay.com/5-inch-tf...roller-480x272

    Any suggestion which I should get?

  20. #20
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    I have the 4.3 inch one, https://www.buydisplay.com/4-3-tft-l...al-spi-i2c-mcu, setup for 5v, SPI 4-wire, resistive but capacitive works as well.

  21. #21
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    Quote Originally Posted by PaulStoffregen View Post
    I don't think it's the SPI clock speed. I edited the code to increase to 22 MHz, and I used my scope to check it really was 21.8 MHz. At 528 MHz and 21,8 MHz SPI clock, it runs reliably. But with Teensy 4.0 at 600 MHz, even with slower SPI clock, it seems to go awry.

    Click image for larger version. 

Name:	file.png 
Views:	13 
Size:	28.4 KB 
ID:	20675
    Reason I was saying about SPI Clock was because of the warning Sumotoy had in the file:
    After som mail exchange with RAiO I solved the dilemma behind SPI speed limit:
    The RA8875 has limitation of 12Mhz SPI but this has been set because not all internal macros
    can run over that speed, the library automatically deal with this so I was able to go over 20Mhz!

    At that speed you need to short cables as much you can, provide clean supply and good decoupling!
    DO NOT Exceed 23Mhz for RA8875! It will result in garbage on screen or run very slow.
    I am going to pull out scope and see what it looks like with my setup out of curiosity.

  22. #22
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    7,684
    Sorry, been off doing other stuff.

    I do have a few different ones:
    I believe I have a BuyDisplay: 5" 800x... I may also have one of the 480x272 one here as well
    Maybe 2 of the 4.3" 800x480 - I like these better, but again they mostly sit in box
    Also Adafruit, I think mine is setup for the lower resolution.


    One thing I have found, is there connections are very touchy... Usually need short wires... Also sometimes need to lower SPI speed.

    Pulling out one now will try. Any particular setup? I am most likely setup for 4.3" 800x480 using my older jumpered board.... My newer board has the 8876 on it.

  23. #23
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    7,684
    Hi @Paul - I just copied all of Core over to my Arduino 1.8.13
    And it looks like I maybe missed removing a warning from digitalToggle()
    unused variable (pinMode)...

    Not sure why I missed it when building yesterday.


    @mjs513 - The example sketch: ILI_Ada_FontTest4
    For RA8875 is giving me some warning as well now:
    Code:
    ILI_Ada_FontTest4: In function 'uint32_t displayStuff1()':
    C:\Users\kurte\Documents\Arduino\libraries\RA8875\Examples\_Teensy3\ILI_Ada_FontTest4\ILI_Ada_FontTest4.ino:208:65: warning: invalid conversion from 'int16_t* {aka short int*}' to 'uint16_t* {aka short unsigned int*}' [-fpermissive]
       tft.getTextBounds(rectText, rect_x, rect_y, &xT, &yT, &wT, &hT);
                                                                     ^
    In file included from C:\Users\kurte\Documents\Arduino\libraries\RA8875\Examples\_Teensy3\ILI_Ada_FontTest4\ILI_Ada_FontTest4.ino:4:0:
    C:\Users\kurte\Documents\Arduino\libraries\RA8875/RA8875.h:382:10: note:   initializing argument 6 of 'void RA8875::getTextBounds(const char*, int16_t, int16_t, int16_t*, int16_t*, uint16_t*, uint16_t*)'
         void getTextBounds(const char *string, int16_t x, int16_t y,
              ^
    C:\Users\kurte\Documents\Arduino\libraries\RA8875\Examples\_Teensy3\ILI_Ada_FontTest4\ILI_Ada_FontTest4.ino:208:65: warning: invalid conversion from 'int16_t* {aka short int*}' to 'uint16_t* {aka short unsigned int*}' [-fpermissive]
       tft.getTextBounds(rectText, rect_x, rect_y, &xT, &yT, &wT, &hT);
                                                                     ^
    In file included from C:\Users\kurte\Documents\Arduino\libraries\RA8875\Examples\_Teensy3\ILI_Ada_FontTest4\ILI_Ada_FontTest4.ino:4:0:
    C:\Users\kurte\Documents\Arduino\libraries\RA8875/RA8875.h:382:10: note:   initializing argument 7 of 'void RA8875::getTextBounds(const char*, int16_t, int16_t, int16_t*, int16_t*, uint16_t*, uint16_t*)'
         void getTextBounds(const char *string, int16_t x, int16_t y,
              ^
    Compiling libraries...
    Compiling library "Adafruit_GFX_Library"
    Probably because of different GFX library than the one we were shiping with Teensyduino

    Also some of the pages are not drawing properly.


    I also have running the many gauges example and it so far appears to be running.

    Edit: Forgot to mention I will be probably busy outside for awhile.

    Will check back in a bit

  24. #24
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    5,632
    @KurtE
    Which display are you using? The 480x272 seems to be working. I will check out the new GFX issue

  25. #25
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    7,684
    I am using one of the 800x480 4.3" displays in my earlier screwed up adapter board... If needed I can try one of the others as well. But now back to garden

Posting Permissions

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