Teensyduino 1.53 Beta #1

Status
Not open for further replies.
Thanks KurtE, sound advice. Looks like its just the examples that have been updated as you say.
 
what kind of file is this? when downloaded, ubuntu has no idea what to do with "TeensyduinoInstall.linux64".... what do i need to do to "install" this beta?
@Paul - Maybe you should add something to the Teensyduino download and Install page: https://www.pjrc.com/teensy/td_download.html

But I am assuming it is like all other linux releases. That once you download it, you need to mark the file as executable and then run it.

I usually do it one of two ways.
Command line: chmod +x TeensyduinoInstall.linux64

and then run it. Or I bring up a folders window on the download directory and then I do a properties on the file, and go to the permissions page, and again depending on which linux you are running,

Like my secondary test machine has Ubunutu 18.04, so on this one you go to permissions tab and click the Allow executing file as program.

Then double click on it.

EDIT: @mjs513 beat me to this, but I think maybe comments about file attributes should be mentioned probably in same location as talking about udev rules.

Which is another hint, if this is the first time you have run Teensyduino on a Linux machine, you need to download and install the udev rules.
 
@Paul - Maybe you should add something to the Teensyduino download and Install page: https://www.pjrc.com/teensy/td_download.html

But I am assuming it is like all other linux releases. That once you download it, you need to mark the file as executable and then run it.

Command line: chmod +x TeensyduinoInstall.linux64

Which is another hint, if this is the first time you have run Teensyduino on a Linux machine, you need to download and install the udev rules.

thanks everyone for the help... got it all sorted.
 
Hello,

I've just tried arduino 1.8.13, teensyduino 1.53b1 and TeensytimerTool v1.0.9. From an old project that work well with 1.8.12/1.5.2, with the new environment I have an error when I try to compile =>

Code:
D:\Mes documents\Arduino\libraries\TeensyTimerTool\src\Teensy\TCK\TCK.cpp: In function 'void yield()':
D:\Mes documents\Arduino\libraries\TeensyTimerTool\src\Teensy\TCK\TCK.cpp:72:67: error: 'processSerialEvents' is not a member of 'HardwareSerial'
                 if (HardwareSerial::serial_event_handlers_active) HardwareSerial::processSerialEvents();

This is with Teensy 4.0 board.

When using Teensy 3.2 all is OK.

Thank you,
Manu
 
Last edited:
@KurtE
Know we have been making changes to the RA8875, ST7735/ST7789, ILI9488 libraries as well that may need to checked for latest changes.

I've updated ILI9488 to the latest. Looks like no changes or pull requests on ST7735_t3 since 1.52.

RA8875 has many branches. I don't know which we should be including with Teensyduino. Looks like we're using "0.70" right now, which hasn't changed since 1.52.
 
I've updated ILI9488 to the latest. Looks like no changes or pull requests on ST7735_t3 since 1.52.

RA8875 has many branches. I don't know which we should be including with Teensyduino. Looks like we're using "0.70" right now, which hasn't changed since 1.52.

Cool on the display updates. The RA8875 "0.70" is Sumotoy's base lib for the RA8875. The branch that we have been maintaining is the RA8875_t4: https://github.com/mjs513/RA8875/tree/RA8875_t4.
 
Probably one of the real questions should be, can we (or should we) remove all of these libraries from being installed by Teensyduino?

Yes, I want to remove Adafruit_GFX and all of Adafruit's libraries which require it. Those are all available from Arduino's Library Manager for anyone who needs them. We really shouldn't be bundling copies of Adafruit's libraries which only become out of date.

Is there any compelling reason to keep Adafruit_RA8875 when we have the faster RA8875 library? It's been years, but my recollection is early versions of Adafruit_RA8875 only worked on slow AVR boards with certain font settings, which is why we are bundling a Teensy specific copy...
 
The branch that we have been maintaining is the RA8875_t4

Ah, that explains a lot. ;)

I've switched to that branch, so 1.52-beta2 will have it.

I also dug out my RA8875 display. Going to run some tests and make sure Adafruit's library (their current copy) works. If so, I'm going to remove Adafruit_RA8875.
 
Yes, I want to remove Adafruit_GFX and all of Adafruit's libraries which require it. Those are all available from Arduino's Library Manager for anyone who needs them. We really shouldn't be bundling copies of Adafruit's libraries which only become out of date.

Is there any compelling reason to keep Adafruit_RA8875 when we have the faster RA8875 library? It's been years, but my recollection is early versions of Adafruit_RA8875 only worked on slow AVR boards with certain font settings, which is why we are bundling a Teensy specific copy...

Know this was Kurt’s question but don’t think we need it now that we our version. Again same rationale it can be downloaded if some one what’s i
 
I agree, also if issue with adafruit version we should fix and issue PR. They have been good at picking them up. Actually they would like it if we added some of our speed up code back to gfx/spitft code. Also should compare their canvas stuff versus our framebuffer stuff, but that is longer term.

Question also if we have our own version of ra8875 library,does it make sense to also include ra8876 codebase? Probably not for this release.
 
I'm also leaning towards removing the ST7565 library. Those displays are obsolete and seem to be long gone from the market.

Maybe OpenGLCD can go too?
 
@KurtE
Think the RA8876 library needs some clean up before adding it Teensyduino, so i agree it may be too soon for 1.53 release.

@PaulStoffregen
Just did a little search for ST7565 they are still out there, Adafruit and EastRising but didn't see anything on Amazon. Think 5years ago was the last time that Adafruit made a change to their library. As for OpenGLCD, never used it, last update to the library was in 2016 just for reference. I would say remove it from Teensyduino as long as theres no uniqueness for Teensies.

Does this make sense?
 
Could you give me commit access to RA8875? Or I could send some pull requests - just minor cleanup like compiler warnings and comments in examples...
 
I'm also leaning towards removing the ST7565 library. Those displays are obsolete and seem to be long gone from the market.

Maybe OpenGLCD can go too?

Likewise I don't think I have ever tried either of them.

There are times like this, it would be good to have a setup using the library manager, such that if anyone actually needs these libraries, they can simply download it independent of Teensyduino.

But my guess is it would not be bad to go ahead and prune some of these out of the basic install.
 
Hello,

It's maybe the moment to update fastled. The Teensyduino version is 3.3.1 while the current release is 3.3.3
Also, including TeensyTimerTool from Luni could be a good choice since it's a really Teensy library.

Thank you,
Manu
 
Yes. I've updated Teensy 3.x in boards.txt which will be in beta2, and committed this for Teensy 4.x.

https://github.com/PaulStoffregen/cores/commit/2f8568659cb7553ca12e5ca2d0358df9d30427a6

I tested std::string, some containers (std::map, std::vector) and std::function on T4.0 and T4.1. Everything works out of the box now.

Code:
  #include <map>
  #include <vector>
  #include <string>
  #include <functional>

  using namespace std;

  void setup()
  {
    while (!Serial);

    Serial.println("Testing std::vector ------------");

    vector<string> myVector;
    myVector.push_back("First string");
    myVector.push_back("Last string");
    myVector.insert(myVector.begin() + 1, "Second string");

    for (string s : myVector)
    {
      Serial.println(s.c_str());
    }


    Serial.println("\nTesting std::map--------------");

    std::map<string, unsigned> myMap;  // use fully qualified name otherwise it clashes with arduino map function

    myMap["zero"] = 0;
    myMap["answer"] = 42;

    Serial.println(myMap["zero"]);
    Serial.println(myMap["answer"]);


    Serial.println("\nTesting std::function----------");

    function<unsigned(string)> myFunction;

    myFunction = testFunction;

    string s = "some string";
    Serial.printf("The string '%s' has %u characters\n", s.c_str(), myFunction(s));

  }

  void loop()
  {
  }

  unsigned testFunction(string s)
  {
    return s.length();
  }

Output:

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
 
I updated MIDI and FastLED, and deleted some of the older libs like OpenGLCD.

I'm slowly going through the many remaining compiler errors and warnings in various examples....
 
what kind of file is this? when downloaded, ubuntu has no idea what to do with "TeensyduinoInstall.linux64".... what do i need to do to "install" this beta?

I saw you got it sorted out, but here is a tip for your question that will help in the future: Most Linux distributions include a command called file. You can use it to see what kind of file something is. (You would type what is bold below)
Code:
~/Downloads $ [B]file ./TeensyduinoInstall.linux64 [/B]
./TeensyduinoInstall.linux64: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, stripped

So this indicates it is an executable. The rest of the output is technical: ELF is the kind of executable that Linux natively uses. Statically linked means it has all of its library dependencies built-in, and stripped means the debugging information (symbols) has been removed. You can do this with any file to find out what it is if you can't tell by the extension. Hope this helps!
 
Status
Not open for further replies.
Back
Top