Adaption of teensy_loader_cli for Teensy 3.1

Status
Not open for further replies.

eicht

New member
Hi all,

I've started working on a port of RIOT to the
Teensy 3.1 board.
For this and the further maintenance of the port it will be crucial to have a
command line flashing tool at hand.
I've looked into the sources and started some work on the tool already but
it would be nice to get some hints what exactly will have to be changed.
To be clear I started from the "linux only beta" version but I'll also need to
support OS X and FreeBSD.

Thanks in advance!
 
I recall that for Linux/MAC, the Teensy USB flash loader can be used from the command line. Not so Windows.
That was discussed here some time back.
 
Hi stevech,

thanks for your reply. I'm aware of the Teensy flash tool shipped with teensydruino, problem is I'd need a solution that also works on machines without any GUI (e.g. CI systems).

cheers
 
Definitely interested in any progress you make! This post made me realize that Teensy 3.0/3.1 aren't supported in the teensy_loader_cli tool for mac - which I direly need. Doubt I'll be much help, but I'm comfortable enough to at least help test anything you need tested.
 
Definitely interested in any progress you make! This post made me realize that Teensy 3.0/3.1 aren't supported in the teensy_loader_cli tool for mac - which I direly need. Doubt I'll be much help, but I'm comfortable enough to at least help test anything you need tested.

Any word as to why the 3/3.1/LC, etc later is "LINUX only" (ie. doesn't work on Mac)? Or when that might be resolved?
 
From what I recall, it's something along the lines of this:

On Mac, the USB/IO library doesn't actually work as documented. Specifically, a function that is designed to wait/callback after a request is sent doesn't actually do anything. Nothing I've found seems to indicate it's been fixed (Paul submitted a bug report in 2013-ish). The way the Teensy 3.0/3.1 loader works is that it has a timeout function, basically trying to send a signal to get the Teensy into reboot mode, and then it waits or times out if it waits too long. Paul couldn't figure out (I'm guessing there wasn't TOO much time spent on it) how to implement the timeout easily in Windows/OSX, so it only exists in Linux, using LibUSB. From what *I* can tell from my brief lookie-loo at the code, LibUSB should work on Mac. What I couldn't tell (I only spent about an hour researching so far) was whether I could build a version using libusb on Mac OSX, and then not require my endusers to also have libusb installed already (as it defeats the purpose if they have to install extra crap).

Anyway, that basic run down is VERY basic, and more than likely (more than) slightly misinformed. At some point I'll cycle back around to looking more into it, but probably not until I finally upgrade to Yosemite -- can't move to El Capitan anytime soon as it apparently breaks a lot of my audio programs. :/
 
Ooooooh! Works here fine, OSX 10.9.5. I built using the OSX 10.6 SDK (10.5 SDK was giving me a 'clang' error). Tested uploading to a custom-PCB teensy, works a charm! I can attach my built file, if anyone wants it.
 
Status
Not open for further replies.
Back
Top