PDA

View Full Version : Teensyduino 1.18 Release Candidate #4 Available



Paul
02-11-2014, 06:04 PM
Here is a fourth release candidate for Teensyduino 1.18.


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



This is likely to be the last release candidate before a final 1.18 release this week.

Please give this a try and report any bugs. Try to include a sample program that reproduces the problem!

Here's a list of the changes since Teensyduino 1.18-rc3:


Add Serial1.transmitterEnable(pin) for RS-485 applications
Fix startup issue impacting Neopixel library on Teensy 3.1
Fix analogRead(39) (1.2V ref) on Teensy 3.1
Add missing register definitions for Teensy 3.1
Improve early startup hook, thanks to Anbroz Bizjak
Fix Arduino IDE library conflicts, Adafruit_GFX vs Robot libs
Mouse wheel support for scrolling long menus in Arduino IDE

stevech
02-11-2014, 06:38 PM
I'm embarrassed to ask this, but after I run the windows installation of RC4, and point it to C:\Arduino, what do I look for to confirm versions are changed, e.g., the change item "Mouse Wheel Support..."?
I have a shortcut on the desktop pointing to C:\Arduino\arduino.exe and that 1.0.5 file (of course?) is still dated 5/17/2013. I suppose that the mouse wheel change is a new file in the Java folders.
The Arduino IDE's help-about wouldn't change.

PaulStoffregen
02-11-2014, 07:00 PM
Showing the version in Arduino's Help > About menu is on my to-do list, but it didn't make the priority list for this release.

You could try compiling this code.



void setup() {
Serial1.transmitterEnable(4);
}
void loop() {
}


It will compile without error if you have 1.18-rc4. Earlier versions will complain about transmitterEnable undefined.

stevech
02-11-2014, 07:39 PM
Thanks.
So the change to the IDE is within the Java folders and the IDE's EXE itself isn't changed, right?

PaulStoffregen
02-12-2014, 11:21 AM
I'm considering releasing 1.18 later today.

If anyone else has a chance to test this last release candidate today, please let me know if it works for you?


And yes, the IDE patches are in the file pde.jar, not the exe file.

KurtE
02-12-2014, 02:02 PM
Not sure how much it helps, but I installed it, tested your sample program and it compiles. Also loaded up my Phoenix for the PhantomX Teensy version and it still compiles.

el_supremo
02-12-2014, 02:44 PM
I installed RC4 about an hour ago. No problems, although I've only been uploading tests of audio shield code.

Pete

Mark
02-12-2014, 04:18 PM
I'll have to play with it more, but the serial driver seems to hang more easily with rc4. I mean when loading onto the 3.1, I can't select the port using Arduino IDE until after rebooting. The IDE does list the COM port in the status line at the bottom. Anyone else see something similar?

I wouldn't dismiss the possibility I'm holding the port open when also playing with LabVIEW.

Mark

PaulStoffregen
02-12-2014, 04:24 PM
I mean when loading onto the 3.1, I can't select the port using Arduino IDE until after rebooting.

That's absolutely normal and correct. Teensy isn't natively serial. It becomes a USB serial device when it runs the code you load that makes it into USB serial.



The IDE does list the COM port in the status line at the bottom.


That's a bug. The status line on the bottom of the Arduino window isn't updated in several cases when it really should be. I'll put this on my to-do list, but it's going to be a low priority, which realistically means I probably won't work on it for a long time. So many other much more awesome things are on that to-do list.

stevech
02-12-2014, 04:56 PM
Anyone else seen this:
Run a program that does Serial.println("hello"); or some such, in a loop that has no delay() or other thing to reduce the rate of prints. This is inadvertent. Output goes to the IDE's terminal window.
On my Win 7 computer, using RC4, the IDE's windows soon displays Java heap full or some such words, the IDE hangs (window won't close), the terminal window shows a lot of output but seems hung and the terminal window will not close. I have to use the task manager to kill the terminal and the IDE.

Mark
02-12-2014, 05:15 PM
<edit> Looks like it is something related to LabView / LIFA. Doesn't happen unless I load LabView. Sorry - different onion to peel...

<I'd strikethrough all this - but don't see it in the font menu>
Just to make sure, I'm referring to rebooting the computer, not the teensy. Teensy loader is on Auto, so should be rebooting after loading, if I understand it correctly. I also did an unplug/plug 'cycle' while trying to recover without a machine reboot.

I also tried uninstalling the port in Device Mangler (driver not uninstalled), then Scanning for Hardware changes to reinstall the COM port. Still no access to the port in the Tools menu of the IDE.

I don't recall seeing this behavior on the 2.0 board I've got here. I'll reboot and play some more...

PaulStoffregen
02-12-2014, 06:12 PM
the IDE's windows soon displays Java heap full or some such words, the IDE hangs (window won't close),

Yup, that's a known bug in the Arduino IDE. I've tried to work on this a couple times, but sadly it's beyond my Java skills. I still hope to fix it someday, but how I have no idea....

This bug affects all boards, but only Teensy and Arduino Due are fast enough to cause it to happen in a reasonably short time frame.

PaulStoffregen
02-12-2014, 06:18 PM
Looks like it is something related to LabView / LIFA. Doesn't happen unless I load LabView.

Does it happen with the eval / trial version of Labview?

I could try investigating here, but I have absolutely zero Labview experience. I'd need very specific instructions that give every little step involving Labview. On the plus side, I do know exactly how Teensy works, and I can watch the USB with a USB protocol analyzer.

Mark
02-12-2014, 06:37 PM
Does it happen with the eval / trial version of Labview?

I could try investigating here, but I have absolutely zero Labview experience. I'd need very specific instructions that give every little step involving Labview. On the plus side, I do know exactly how Teensy works, and I can watch the USB with a USB protocol analyzer.

Dunno. I'm running LabVIEW Full / Developer (but probably not well yet).

Don't worry about it. Looks like it's a LabVIEW / LIFA thing, so it's not your onion to peel. ;) I have more software beating to find exactly when it happens - much less where / why.

IIRC, the LYNX (follow up to LIFA) devs said adding Teensy 3.x is "in the cards", but no idea how close to the top of the deck it is.

<aside> Given that, is your USB protocol analyzer a software monitor, or is it an external device? I can see such a thing being useful down the road.

PaulStoffregen
02-12-2014, 06:44 PM
Given that, is your USB protocol analyzer a software monitor, or is it an external device?

It's a hardware device that truly captures everything. I use a separate computer to receive the capture. Here's the info about the analyzer.

http://www.totalphase.com/products/beagle-usb480/

PaulStoffregen
02-12-2014, 08:03 PM
I'm leaning towards releasing 1.18 tonight. I really need to get 1.18 wrapped up and focus on the audio library!

If anyone can find a problem in the next several hours, please let me know ASAP.

stevech
02-12-2014, 08:12 PM
From your todo's: It would be nice if the IDE displayed the rev in use.

Headroom
02-12-2014, 08:19 PM
+1 That would be awesome.

PaulStoffregen
02-12-2014, 08:29 PM
From your todo's: It would be nice if the IDE displayed the rev in use.

I did half of this. The installer now puts a teensyduino.txt file into Arduino's lib folder. I added this after rc4, so you'll see it when 1.18 is released.

But the java code does not yet read that file and draw its contents on the Help > About screen. Sorry, that just isn't going to make it into 1.18. Changing anything in the java code takes a lot of work to rebuild and import everything all over again. I'm looking to wrap up 1.18 and move on to the audio stuff, so the last thing I'm going to do right now is reopen a bunch of code to sneak in 1 more feature. At this point, features are frozen for 1.18.

I absolutely want to hear about any possible bugs that need to be fixed before releasing 1.18.

stevech
02-12-2014, 09:02 PM
I'm working with this new problem, to see if it's me or the tool:
Teensy 3.0
Running LED blinker.
I compile same code, hit upload button in IDE.
LED stops blinking.
Teensy.exe window doing nothing.
IDE window counts to 50 and gives up.
12 seconds after IDE upload button was pushed, Teensy.exe's window says upload, successful.
new code runs, LED resumes blinking.

Same 12 second delay happens if I push the button on the Teensy module.

I've tried rebooting PC, changing Teensy board, etc.
Now I'm going to download older release and install, hoping it will overwrite RC4.
Ah, if I can find pre-RC4 code (I deleted it).
See if problem persists.

stevech
02-12-2014, 09:07 PM
Fooey. Installer won't let me regress from RC4 to RC3.

PaulStoffregen
02-12-2014, 09:12 PM
Same 12 second delay happens if I push the button on the Teensy module.


That sounds like the Windows USB delay bug. It happens on Windows 7 with Teensy in Keyboard+Mouse+Joystick mode. The delay also happens in some of the USB Types, but it's much less. With Serial, it's fast. If you set Tools > USB Type to Serial, expect the first time to be slow, since Teensy is still running the old code. After that, you'll see it's very fast.

This delay is fixed in Windows 8.

It seems to be unique to Windows 7. Mac and Linux never do this.

I've tried many different things on Windows 7, but so far nothing has had any effect. The USB protocol analyzer shows Teensy is responding very quickly. Windows simply delays for over 10 seconds for apparently no reason.

stevech
02-12-2014, 09:14 PM
well, It just began happening here. Either due to RC4 (how can I revert to RC3?) or due to me plugging in 2 or 3 new Teensy 3 boards causing more devices to be in the inactive USB device list in Windows' control panel.

Gotta fix this: the IDE upload button never succeeds.

PaulStoffregen
02-12-2014, 09:15 PM
Fooey. Installer won't let me regress from RC4 to RC3.

Just get a fresh copy of Arduino 1.0.5 and install to it.

RC4 changed stuff in sections of the java code the installer uses to check the IDE's version. It was necessary for the library conflict fix. RC4 is able to recognize the java code from earlier versions, but RC3 can't know about RC4's changes to the java objects, so it can't confirm it's a supported version.

sumotoy
02-12-2014, 09:31 PM
using rotary wheel in Board Menu cause a "
java.awt.EventDispatchThread.run(EventDispatchThre ad.java:122)" error, not a big deal btw. It replicates in linux and win.

stevech
02-12-2014, 09:52 PM
Now the Teensy 2's have the 12 second delay from pushbutton, and this also causes the IDE upload to count to 50 and fail.

I think it's related to me plugging in more and more Teensys, adding more IDs in the hidden device part of the control panel (from registry).
I dunno.
maybe uninstall a bunch of older IDs using device manager.

Time to take a break from all this.

stevech
02-13-2014, 04:33 AM
After re-reading what Paul said, it's fixed.

If you set Tools > USB Type to Serial, expect the first time to be slow, since Teensy is still running the old code. After that, you'll see it's very fast.
Don't know how that menu choice got changed. Must have been my error.