Forum Rule: Always post complete source code & details to reproduce any issue!
-
UART and DMA
I've been using UART TX DMA - to offset the lack of hardware FIFOs in the UARTs. A 16 deep FIFO (common in UARTS) can interrupt at 75% or so, and thereby reduce the interrupts per second by more than a factor of 10.
At 115.2Kbaud and without a FIFO and no DMA, that's 11,000 interrupts per second. It's not that a UART sustains that rate, but the burst of interrupts can disrupt other code's timing. And even 11K/sec requires some decent interrupt latency and no sloppy code that blocks interrupts too long.
Some M4's also lack a hardware timer in the UART to interrupt on the receive side if n character times go by with no (more) incoming data. Data Timeout some say.This helps a bit. The NXP ARM7's had a good UART.
One case I saw, and want to implement, is to use one of the ARM's timers, where the timer reset cause is setup to be a transition on the UART RX pin. Thus, when RX data ceases, or never occurred, the timer interrupts and one can attend to the UART RX.
Another case I saw was setting up RX DMA with a circular buffer, and have the DMA interrupt when the DMA address wraps the circular buffer.. that being a counter that was set when the circular buffer's address and size was sent to the DMA controller. I suppose a timer is also needed, for the no-data-present case.
Why do they cheap-out and use UARTs lacking FIFOs??? How much $ can that save?
Last edited by stevech; 01-28-2015 at 04:34 AM.
-
This could still use a bit of tidying, a high res image (and the card for the back).
Edit: corrections
- typos for plural I2S and SPI ports
- pin 21 is 20mA

card-lc-top.zip
card-lc-top.pdf
Last edited by Nantonos; 01-29-2015 at 07:31 AM.
-
oh, thanks! (and thanks for being on the list)!
i've only just seen this now ... ha, i guess it's too late now to say i'm happy to step back from the purple ones because of shipping etc to places outside the US.

Originally Posted by
Frank B
Christoph,
Maybe we can organize a bulk order, and thereby save on postage (for the green ones)
Vielleicht können wir ja eine Sammelbestellung organisieren um zu Porto sparen.
Gibt es ja noch mehr User aus Deutschland ?
i'd be in!
-
@nantonos
Very nice work on the crib card.
Nit: Plural on the purple I2C Ports and below it, SPI Ports
-
Thanks Paul for including me on the list! I always have time for some beta testing.
I live in Europe, Germany. Let me know how we can make it happen. Maybe the Teensy-LC
would be also interesting for our upcoming Hardware Maker Space here in Berlin.
-

Originally Posted by
stevech
Nit: Plural on the purple I2C Ports and below it, SPI Ports
Thanks, fixed.
-

Originally Posted by
syso2342
Thanks Paul for including me on the list! I always have time for some beta testing.
I live in Europe, Germany. Let me know how we can make it happen. Maybe the Teensy-LC
would be also interesting for our upcoming Hardware Maker Space here in Berlin.
Hi there, i am also in Berlin and could do some MIDI-DIN / MIDI-USB related testing.
As i have a breakout using the 3.1 to drive solenoids with MIDI Signals.
Also Friends of mine have around 80 boards with wiflys to wirlessly drive WS2812B LED strips.
>https://www.tindie.com/products/zedl...ed-controller/
@mxxx @syso2342 @Frank B @christoph
If we get a batch together i could split the package and hand them over or make smaller envelopes and send them to you.
@paul - thanks for the amazing work!
-
I've asked paul what he thinks about a bulk package to germany
-

Originally Posted by
nevvkid
Hi there, i am also in Berlin and could do some MIDI-DIN / MIDI-USB related testing.
@mxxx @syso2342 @Frank B @christoph
If we get a batch together i could split the package and hand them over or make smaller envelopes and send them to you.
sounds good -- i'm in berlin, too.
-

Originally Posted by
mxxx
sounds good -- i'm in berlin, too.
Nice! We should have a Teensy Noisemakers Meetup
-
Administrator
I think we can arrange a batch shipment to Germany.
-

Originally Posted by
Robin
I think we can arrange a batch shipment to Germany.

I'll hand-carry for you, to Munich or Garmisch Partenkirchen.
-
Senior Member
@Paul -- I'm going to Europe on Friday. I'll mail some to people in Europe for you if you want & can get them to me by 10am Fri morning in the US.
-
Senior Member
We're going to ship the first 9 on Monday.
Edit: sometime over the weekend, Robin & I make the arbitrary/unfair decisions on who gets these first boards.
The decisions on shipping are up to Robin. She'll be doing all the shipping stuff, which lets me stay focused on the tech side.
Last edited by PaulStoffregen; 01-28-2015 at 07:11 PM.
-
Senior Member+
looking forward to a little TLC 
Re: internal ADC regs on teensy LC
From the ref/datasheet docs it appears that TLC has the same chip temperature sensor register (AD26) as teensy 3.0 and 3.1, but TLC does not have VREF output (AD22 on teensy 3.0), so you can't use analogRead(39) to, for example, check the battery voltage level against VREF output (1.195v). HOWEVER, for the TLC one could use the bandgap (AD27) at 1.0v.
I did a quick test on the teensy 3.0, hacking analog.c and replacing AD22 with AD27, and in the sketch using 1000mv in place of 1195 mv to calculate Vcc. You must also enable the Vbg with
PMC_REGSC |= PMC_REGSC_BGBE;
That seemed to work, but I may not understand the underlying differences between VREF output as reference vs bandgap.
Last edited by manitou; 01-28-2015 at 07:30 PM.
-

Originally Posted by
stevech
I'll hand-carry for you, to Munich or Garmisch Partenkirchen.

Hi stevech.
Garmisch? Nice. I am actually from Seehausen am Staffelsee - living in Berlin.
-
Senior Member

Originally Posted by
manitou
From the ref/datasheet docs it appears that TLC has the same chip temperature sensor register (AD26) as teensy 3.0 and 3.1
I briefly tried the temp sensor while porting the analogRead() code. I got only zeros and I didn't invest more time into why.
This certainly is something I hope can get worked out next week, when people start getting the boards. But it's also possible the temperature sensor might not actually be supported in this chip?
-
Senior Member
Nice job Nantonos! Isn't pin 21 the 20 mA pin, not pin 20?
Can I use any of the 5 mA pins as a GND with digitalWrite to sink 20 mA of current. In other words, if I use pin 21 as a 3V3 source for 20 mA in a circuit, can I use pin, say, 4 as the GND? Or does the GND also need to be a 20 mA pin?
-
Senior Member
-
Senior Member
It's looking like release date is going to be March 10th.
-
Hi Paul! Daniel Garcia and I would like to get FastLED ready for these, especially with the (awesome!) 5-volt level pin specifically for driving WS2811/WS2812 Neopixels.
Please let me know what's the best way to get a couple of these new boards to test. Happy to pay for the boards and/or shipping. Thanks very much -- they look like a they'll be right in the sweet spot for a lot of projects.
-Mark
-
Senior Member+
In looking at the layout of the Teensy-LC, and thinking about neopixel wearables, I wish the 3.3v power in the back was routed to VIN and not 3.3V. Yeah, it would have been another difference from the Teensy-3.x, but it would have allowed attaching the 3 wires for neopixels (power, ground, data) directly to the teensy. You could have used a connector like: https://www.pololu.com/product/2703.
It isn't a major problem, as I can just use wires to make a connection, but it would have been nice.
-

Originally Posted by
onehorse
Nice job Nantonos! Isn't pin 21 the 20 mA pin, not pin 20?
Yes, good catch, fixed.
-
Member
Nice addition to the line-up. I will buy some for sure, but do not have time for beta testing, sorry.
-
Senior Member
thanks for the include,
Is the bootloader the same setup? Seems smaller than the mini tan 54, maybe a micro tan?
Jfp
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules