How to update Teensyduino...

Status
Not open for further replies.

MogaRaghu

Well-known member
I started with the Teensy3.2 and then moved on to the Teensy3.5. Well i still cannot believe that these pack so much of computing power and the program downloads are so fast. I guess i will permanently stick around these 32 bit guys instead of the 8 bit Arduino offerings.. I am impressed.

And the best thing is its a nice thing to say for industrial applications that the code runs on an ARM mcu instead of an Arduino.. somehow Arduino is associated more with the DIY domain.

But i have some queries :

1. In case i need to upgrade to the Teensyduino 1.36, from the existing 1.35 how do i do it ? Just download and install it over the existing one ?

2. In the schematic i see a chip MKL02Z321FG4 - what exactly is its function ?

3. Does the main processor MK20DX have the bootloader in it ? Actually i have spent quite some time on the site but could not get to read an article as to how the 32 bit speed demons fit into an Arduino like domain ... or quite simply a description of what happens behind the scene when a user code is downloaded is missing. Can you link to any such document ?

Cheers
 
You can update over an existing install, though I prefer to have multiple Arduino+teensy+library installs that are isolated from each other to make it easier to tweak old projects without needing to chase down all new libraries for everything.

Answering your second and third question, the MK20 doesn't have the bootloader, the MKL does. Concept is that when you press the program button the MKL reboots and bootloads the main CPU, which then looks to the USB port for the actual code you wrote. There are an number of special cases but that's the short version.

Idea being that we can write code that does all sorts of things in the main CPU, including putting it into deep sleep modes, settings that disable USB or even running rogue in flash memory and a button press will get things back to a known state. So much harder to brick. The down side of course is the cost, complexity and power use of having that second CPU on the board. As far as I know only official information is on the store page for the bootloader IC.

https://www.pjrc.com/store/ic_mkl02.html
 
You can update over an existing install, though I prefer to have multiple Arduino+teensy+library installs that are isolated from each other to make it easier to tweak old projects without needing to chase down all new libraries for everything.

Answering your second and third question, the MK20 doesn't have the bootloader, the MKL does. Concept is that when you press the program button the MKL reboots and bootloads the main CPU, which then looks to the USB port for the actual code you wrote. There are an number of special cases but that's the short version.

Idea being that we can write code that does all sorts of things in the main CPU, including putting it into deep sleep modes, settings that disable USB or even running rogue in flash memory and a button press will get things back to a known state. So much harder to brick. The down side of course is the cost, complexity and power use of having that second CPU on the board. As far as I know only official information is on the store page for the bootloader IC.

https://www.pjrc.com/store/ic_mkl02.html

Great... exact information as I was looking for. And the MKL02 link was very useful to understand the Bootloading process and also some key aspects to watch when designing own PCBs.
Since I have wandered into this Teensy world recently, doubts keep cropping up ... With so much power on hand is it not natural to expect some hardware debugging facility to sort out issues instead of the Serial.print() only ? Meaning can the Teensy 3.x modules be used along with regular debuggers for ARM cores + associated IDE instead of the TeensyDuino ?

Thanks for your time !
 
Re debugger the bootloader chip is monopolising those pins and there is no elegant way to have a debugger interact with the very basic Arduino IDE which means it's much desired but oft delayed feature. I think the issue is that by the time you've modded the IDE to support it and built the hardware to interface to it pretty much all the benefits of using a Teensy are gone (basic IDE and all in one hardware) and you are competing with the big guys for market share.

T3.5/3.6 have the pins brought out to the extra PCB real estate making this at least theoritically possible but believe the bootloader update that would allow it to hiZ it's pins to hand control to the debug pod haven't happened yet you have to do some surgery to make use of them.
 
Re debugger the bootloader chip is monopolising those pins and there is no elegant way to have a debugger interact with the very basic Arduino IDE which means it's much desired but oft delayed feature. I think the issue is that by the time you've modded the IDE to support it and built the hardware to interface to it pretty much all the benefits of using a Teensy are gone (basic IDE and all in one hardware) and you are competing with the big guys for market share.

T3.5/3.6 have the pins brought out to the extra PCB real estate making this at least theoritically possible but believe the bootloader update that would allow it to hiZ it's pins to hand control to the debug pod haven't happened yet you have to do some surgery to make use of them.

Yes ... you read my thoughts well. So even though we are using an ARM processor in the Teensy hardware, it is meant to be used ONLY with the Teensyduino for quick and rapid prototyping. Need to use the ARM processor to its full might and speed and also be able to hardware debug ? - go the pro way with a Professional compiler and an interface like the Atmel ICE. But of course to justify the investments on these, you need to HAVE a large volume product coming out of it. Just 5 or 10 numbers of a custom instrument ? Shake hands with the mighty Teensy 3.x !!
 
Status
Not open for further replies.
Back
Top