PDA

View Full Version : Teensyduino 1.36 Beta #3



Paul
03-20-2017, 12:31 PM
Here is a third beta test for Teensyduino 1.36.


Old beta download links removed. Please use the latest version:
https://www.pjrc.com/teensy/td_download.html



Change since 1.36-beta2 (https://forum.pjrc.com/threads/42673-Teensyduino-1-36-Beta-2):


Optimize SPI.transfer(buffer, length) (KurtE)
Fix USB audio on Macs & improve PassThroughUSB example
Start USB sooner
Add volume() function to AudioInputUSB
Fix rare memcpy issue (Frank B)
Fix 9 bit mode on Serial1 & Serial2 on Teensy LC (gecko)
Fix to dtostrf for small numbers (LAtimes2)
Fix reading of partial Wire.requestFrom results

PaulStoffregen
03-21-2017, 01:28 PM
Yesterday & today Arduino's commit log (https://github.com/arduino/Arduino/commits/master) is showing activity that looks like the stuff they usually do to prepare for a new release.

If Arduino 1.8.2 is coming soon, it'll (probably) work out to be good timing.

Please let me know if there are other fixes I ought to merge now.... for beta4 if they release 1.8.2 today or tomorrow.

KurtE
03-21-2017, 03:05 PM
Hi Paul: Just looking over my still pending pull requests to see if any of them make sense... I closed a few old ones...

Some are in libraries of other users that I don't know where you pick these up.

ADC: https://github.com/pedvide/ADC/pull/22 - If I remember correct two main issues for T3.5 and T3.6 -
a) ISR numbers for two ISRS. So you don't get ISR on 2nd one on T3.5/6
b) The tables were never updated, they were simply copy of T3.2

RadioHead: https://github.com/PaulStoffregen/RadioHead/pull/10
a) Updated Transaction stuff
b) Added support for SPI1/SPI2 by being able to pass which one to use.
c) merged in fix/workaround for deadlock...

ILI9341_t3: Couple of Pull requests, but maybe more extensive than you want for first one:

https://github.com/PaulStoffregen/ILI9341_t3/pull/41 - merged a bunch of stuff from my ili9341_t3n library, including:
clip rectange, offsets, Opaque font support, Support for only using 1 hardware CS pin (DC), program will also work if MISO pin is not valid... But can not do reads. ...

https://github.com/PaulStoffregen/ILI9341_t3/pull/44 - Example touchpaint using the PJRC board (XPT2046) - Note: we might want to edit the actual MIN/MAX values to some standard, was simply what I found on my first one of these boards. If I remember Defragster had some different rectangle values.

Again not sure on some of these if you will want them or not.... If not, we can probably just go and close them off...

Side note: right not experimenting again with trying to build program on RPI3 (Sure is slower than Odroid...) But I am trying to get it to build using Command line over Putty (or in my case KiTTy)


pi@raspberrypi:~ $ ./arduino-1.8.1/arduino --upload --port /dev/ttyACM0 ~/arduino-1.8.1/examples/01.Basics/Blink/Blink.ino
Picked up JAVA_TOOL_OPTIONS:
Loading configuration...
Initializing packages...
Preparing boards...
Verifying...
Opening Teensy Loader...
Unable find Teensy Loader. (p) Is the Teensy Loader application running?
pi@raspberrypi:~ $

Nice thing about command line option is that you don't need X11... support to build. However Teensyloader will fail. Wonder how hard it would be to setup to either have Teensy loader know it is running in this mode and work and/or setup to use teensyloader CLI.... So when run from command line it uses the command line version.

duff
03-21-2017, 04:17 PM
Paul, can you update Snooze to the latest version (https://github.com/duff2013/Snooze/blob/master/utility/mcg.c), thanks!

Theremingenieur
03-21-2017, 10:34 PM
Paul, I'd like to get the following defines added in kinetis.h, please :

- For the DAC status registers, to ease the access to the interrupt flags of the DAC ring buffer for #if defined(KINETISK), actually these are only defined for KINETISL

#define DAC_SR_DACBFWMF 0x04
#define DAC_SR_DACBFRTF 0x02
#define DAC_SR_DACBFRBF 0x01
- And for the PDB to easier handle the DAC triggering in PDBx_DACINTCn

#define PDB_DACINTC_EXT 0x02
#define PDB_DACINTC_TOE 0x01

Thank you!

PaulStoffregen
03-22-2017, 12:34 PM
Yup, looks like they're going to release Arduino 1.8.2 sometime later today.

https://github.com/arduino/Arduino/commit/cc6c68e5219b8691eed87a6d9940511345843723

I've updated Snooze. Will look at this other stuff now. Probably going to leave ILI9341_t3 as-is for 1.36.

PaulStoffregen
03-22-2017, 01:43 PM
ADC: https://github.com/pedvide/ADC/pull/22 - If I remember correct two main issues for T3.5 and T3.6 -
a) ISR numbers for two ISRS. So you don't get ISR on 2nd one on T3.5/6
b) The tables were never updated, they were simply copy of T3.2


Is this one still needed? Looks like ADC has updated, and changed quite a lot since this was written.



RadioHead: https://github.com/PaulStoffregen/RadioHead/pull/10
a) Updated Transaction stuff
b) Added support for SPI1/SPI2 by being able to pass which one to use.
c) merged in fix/workaround for deadlock...


Merged.

PaulStoffregen
03-22-2017, 01:50 PM
I'd like to get the following defines added in kinetis.h

Done.
https://github.com/PaulStoffregen/cores/commit/055b1ab770a5a0e627c73ba8b315fe9147abe974

PaulStoffregen
03-22-2017, 01:56 PM
Wonder how hard it would be to setup to either have Teensy loader know it is running

Teensy Loader (GUI version) is built with wxWidgets. It uses wxSingleInstanceChecker (docs.wxwidgets.org/3.1.0/classwx_single_instance_checker.html) to allow only a single instance to run.



m_instance = new wxSingleInstanceChecker();
m_instance->Create(wxString("instance-Teensy-") + wxGetUserId(),
wxStandardPaths::Get().GetTempDir());


If you create a wxWidgets program with that code, or do the same thing wxSingleInstanceChecker does (on Linux, I believe just write a file to /tmp with the process ID), you could prevent Teensy Loader from starting up.

KurtE
03-22-2017, 02:06 PM
QUOTE=PaulStoffregen;137680]Is this one still needed? Looks like ADC has updated, and changed quite a lot since this was written.
[/QUOTE]

Will take a look, he may have merged the stuff in, in a different way...

Update: But when I look up at: https://github.com/pedvide/ADC/

I don't see any changes since December... And at that time and at least when I look at my simple fork of it, it is still setting the IRQ like:
, IRQ_ADC(IRQ_ADC0 + ADC_num*1)
Which assumes the interrupts are right after each other.

And the ADC tables in ADC.CPP had the tables as simple copy of T3.1

PaulStoffregen
03-22-2017, 02:13 PM
Oh, opps, I was looking in the wrong part of the file.

I've brought your changes into ADC, so they'll be in beta4 (likely later today).