Teensy 3.0 Beta11 Software

Status
Not open for further replies.

Paul

Administrator
Staff member
Update: Teensyduino for Teensy 3.0 has been officially released. These beta test copies will be removed.


Here is the latest "beta11" release for Teensy 3.0


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



For use without Arduino, see the sample makefile in hardware/teensy/cores/teensy3

For first-time use on Windows, the Serial Installer is needed.

http://www.pjrc.com/teensy/serial_install.exe
http://www.pjrc.com/teensy/windows8.txt

For first-time use on Linux (as a non-root user), this udev rule is required.

http://www.pjrc.com/teensy/49-teensy.rules

Beta 11 has the new ARM toolchain (gcc 4.7.2, beta 1-10 had gcc 4.4.1), and 2 small bug fixes. The intention was to keep beta 10 and 11 similar, so if the new toolchain has bugs or exposes bugs in other code, you can try using both versions.

Please report any bugs. Always try to include a sample program that reproduces the problem!
 
Here is the latest "beta11" release for Teensy 3.0

Thanks Paul.

This is great... I think I'll start all over again as the last time I unzipped this, it was about 10 directories deep.
Any suggestions for a standard location to within windows XP to locate files.
Thanks
 
You can unzip is pretty much anywhere. It's perfectly fine to have 2 or more copies on your hard drive, but never unzip on top of another copy (each may have files the other doesn't, so unzipping 2 different versions to the same location results in something that isn't exactly what either should be).

When choosing a location to unzip, if any directory has a space or other special characters (eg, "Program Files"), the speedup that avoid recompiling might not work. Everything still works fine, but it adds 1 to 6 seconds to every upload depending on your computer's speed. It's on my to-do list to investigate, but at a much lower priority than the missing USB types and Arduino Uno reset emulation.
 
I know that the wire library is still in development, but i was wondering if you considered implementing a timeout to fix the error prone while loops ?
Something like

Code:
static volatile uint32_t i2c_timeoutc;
uint8_t i2c_timeout(uint8_t init) {
    if (init) i2c_timeoutc = 0;
    else i2c_timeoutc++;
    
    if (i2c_timeoutc >= 100000) {
        // timeout expired
        i2c_timeoutc = 0;
        
        // We should reinitialize here
        
        return 1;
    }
    
    return 0;
}

static void i2c_wait(void)
{
    i2c_timeout(1); // Start the counter
    while (!(I2C0_S & I2C_S_IICIF)) { // wait
        if (i2c_timeout(0)) break;  
    };
    
    I2C0_S = I2C_S_IICIF;
}
 
Paul,

It seems to work here with the one sketch I have tried. I have another project at work and will try it tomorrow. The only thing I notice is that auto reboot no longer works on the laptop I am using. I suspect it is an 'upgrade issue' as I am running 12.10 Ubuntu on it currently and it has recently 'updated'. I will try it tomorrow on the work laptop running 12.04. On this one, it is :

Code:
~$ uname -a
Linux Compaq-Presario-CQ50-Notebook-PC 3.5.0-21-generic #32-Ubuntu SMP Tue Dec 11 18:51:59 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
~$ java -version
java version "1.7.0_09"
OpenJDK Runtime Environment (IcedTea7 2.3.3) (7u9-2.3.3-0ubuntu1~12.10.1)
OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode)

It will program when I hit the reset button. and the small program runs, but it is a bit annoying that the auto reset mysteriously quit.

The tail on the error is:
Code:
 ...
status read, retry 48
send: status - at Mon Jan 14 21:21:00 2013
sent: status - at Mon Jan 14 21:21:00 2013
get_line: "dir:/tmp/build3273085113664802858.tmp/"
get_line: "file:teensy_clock_2.cpp.hex"
get_line: "readable:1"
readable = 1
get_line: "auto:1"
auto = 1
get_line: "online:0"
online = 0
get_line: "online_count:2"
online_count = 0
get_line: "offline_count:0"
offline_count = 0
get_line: "state:0"
state = 0
get_line: "code_size:131072"
get_line: "EOT"
status read, retry 49
Please press the RESET BUTTON on your Teensy to upload your sketch.  Auto-reboot only works if the Teensy is running a previous sketch.
 
Michael,

I neglected to mention that. It its still intact and present. I also restarted udev and arduino. Same result.
 
Paul, I have PM'd you. A chum came and demonstrated your Teensy ++ on our sim and we were very impressed. In total ignorance, will Teensy 3 do the same stuff with Arduino software and would it be good for us - I want to replace the old radios circuit board and build a weather radar for the pit. Sorry if this is in the wrong place, Charlie.
 
Which option is selected in Tools > USB Type?

Auto-reset works 2 different ways... if you have one of the Serial options selected, it attempts to send a special baud rate change. If a non-Serial type is selected, it sends a HID feature report to the HID interface that's emulating serial. So it matters which you have selected.

For HID, the teensy_reboot program attempts to gain control of the device using libusb. Maybe Ubuntu 12.10 has problems with libusb? Sadly, libusb 0.1 was the only stable USB API on linux when I started Teensy about 4 years ago. Now it's falling into "legacy" mode and being poorly maintained, so I wouldn't be surprised if this is some new bug involving libusb not working properly. Or maybe the hidraw driver is keeping control of the device and not allowing usb_detach_kernel_driver_np() to gain control of the device? Or maybe it's some other problem? It's very hard to guess without more info.

You might try looking at /var/log/syslog. Maybe it has something revealing?

In hardware/tools, you'll find the teensy_reboot program. You might clicking Verify in Arduino, and then try running "teensy_reboot -v" in a terminal. Maybe the verbose output might give a clue as to why it can't communicate with the Teensy and ask it to reboot?
 
Paul, I have PM'd you. A chum came and demonstrated your Teensy ++ on our sim and we were very impressed. In total ignorance, will Teensy 3 do the same stuff with Arduino software and would it be good for us - I want to replace the old radios circuit board and build a weather radar for the pit. Sorry if this is in the wrong place, Charlie.

Are you asking about the X-Plane integration? Currently that's only supported on Teensy 2.0 and Teensy++ 2.0. Just yesterday I started working on bringing it onto Teensy 3.0, so the first beta test will probably appear in a couple weeks. It may take several weeks until this is really stable on 3.0.

For your first project I'd highly recommend using Teensy++ 2.0. That version is very stable and well tested.

For these types of projects, usually the limiting factor is the number of I/O pins, not the CPU speed. Even when it does work on Teensy 3.0, the larger number of pins on Teensy++ 2.0 will probably make it the more attractive choice.
 
For these types of projects, usually the limiting factor is the number of I/O pins, not the CPU speed. Even when it does work on Teensy 3.0, the larger number of pins on Teensy++ 2.0 will probably make it the more attractive choice.

Might there be a Teensy++ 3.0 at some point?
 
Might there be a Teensy++ 3.0 at some point?

Yes, Teensy++ 3.0 is planned.

We're currently waiting on a new chip from Freescale. I'm hoping we'll be shipping later this year. I'm reluctant to give a specific date, because they've always been late before. We have a NDA with Freescale regarding the technical details (which expires when they publish the datasheet). Right now I can't tell you anything more than it will have more memory, more I/O and a couple other exrta features, but otherwise from a software perspective it'll be very similar to Teensy 3.0.... just like how Teensy 2.0 compares to Teensy++ 2.0.
 
Thanks for the reply Paul, it is for FSX although the friends test was on XPlane9. I have ordered the 2.0 ++ and they have been shipped, have I boobed? Charlie.
 
Thanks for the reply Paul, it is for FSX although the friends test was on XPlane9. I have ordered the 2.0 ++ and they have been shipped, have I boobed? Charlie.

Sadly, it only works with X-Plane. It can also emulate a joystick and keyboard, so you could use it that way. But the direct and automatic mapping from simulation parameters to variables in Arduino depends on a special plugin which only works on X-Plane.
 
Paul,

I am not really sharp at diagnosing the syslog stuff... Now, it is a bit variable. SOmetimes it will reboot on the 12th time, others it tries 50 times and quits. I am reloading the blink sketch just to make it consistent and reliable. I am set at USB type serial.

Code:
Jan 17 21:06:11 Compaq-Presario-CQ50-Notebook-PC modem-manager[12632]: <info>  (ttyACM0) serial port closed
Jan 17 21:06:11 Compaq-Presario-CQ50-Notebook-PC kernel: [434008.042670] usb 4-1: USB disconnect, device number 71
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC kernel: [434008.852149] usb 4-1: new full-speed USB device number 72 using ohci_hcd
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC kernel: [434009.057586] usb 4-1: New USB device found, idVendor=16c0, idProduct=0478
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC kernel: [434009.057606] usb 4-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC kernel: [434009.067834] hid-generic 0003:16C0:0478.0016: hidraw1: USB HID v1.11 Device [HID 16c0:0478] on usb-0000:00:04.0-1/input0
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC mtp-probe: checking bus 4, device 72: "/sys/devices/pci0000:00/0000:00:04.0/usb4/4-1"
Jan 17 21:06:12 Compaq-Presario-CQ50-Notebook-PC mtp-probe: bus: 4, device: 72 was not an MTP device
Jan 17 21:06:13 Compaq-Presario-CQ50-Notebook-PC kernel: [434009.489538] usb 4-1: USB disconnect, device number 72
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.288156] usb 4-1: new full-speed USB device number 73 using ohci_hcd
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.512567] usb 4-1: New USB device found, idVendor=16c0, idProduct=0483
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.512587] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.512599] usb 4-1: Product: USB Serial
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.512609] usb 4-1: Manufacturer: Teensyduino
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.512618] usb 4-1: SerialNumber: 12345
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.516353] cdc_acm 4-1:1.0: This device cannot do calls on its own. It is not a modem.
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC kernel: [434010.516428] cdc_acm 4-1:1.0: ttyACM0: USB ACM device
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC mtp-probe: checking bus 4, device 73: "/sys/devices/pci0000:00/0000:00:04.0/usb4/4-1"
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC mtp-probe: bus: 4, device: 73 was not an MTP device
Jan 17 21:06:14 Compaq-Presario-CQ50-Notebook-PC modem-manager[12632]: <info>  (ttyACM0) opening serial port...

It appears to be an issue with 12.10. My 12.04 laptop works as expected in Win7 (slowly) and ubuntu 12.04 (blazing).

Keith
 
Status
Not open for further replies.
Back
Top