Weird. The library code seems to be quite elaborated. Would be surprised if it has such bugs in it. Maybe you changed something unintentionally while porting stuff?
Yes, but does it print anything later while you are playing with the commands and getting the error? If so, the library might mess up some intervaltimer settings.
The "dsb" is only effective for very short ISRs. The one used by the lib is probably long enough. (But this should be fixed anyway I'd say)
Did you try to look if the library calls the functions from timer.h after...
I just tried what you described above. Compiles without a single warning here. (TD 1.54, Arduino 1.8.12, T4.1)
....
IB cipher_wrap.c
LIB ctr_drbg.c
LIB ccm.c
LIB pk_wrap.c
LIB ecp_curves.c
LIB...
@weedog: Here here some dotNet examples: https://github.com/TeensyUser/doc/wiki/Serial I tested communication with dotNet up to some 15MByte / sec (T4.0). There also is a corresponding forum thread describing this...
32kHz interrupt frequency is not really a problem for a 600MHz processor.
Most of the timers have a possibility to set/toggle a pin on timer overflow. I don't know if the RTC timer is also able to do this. You'd...
The RTC can generate periodic interrupts. Below an example which toggles the LED every second. You can also set it up for other frequencies derived from the 32'768Hz clock (see code below). I don't remember if it...
You can have a look at this library https://github.com/luni64/TeensyTimerTool which provides a high level interface to (some of) the Teensy 3.x and 4.x timers. Documentation can be found here:...
You can not access non static member variables from a static member function. This is quite obvious because a static member function like your Blink() "belongs" to the class not to a specific object. Now, Blink() can't...
No, there are only two timer channels on FTM1/2 :-(
However, if you don't need the controllers at the same time it should work. The controllers are supposed to release the timers after the movement. So, if you use...
The published version of TeensySharp is quite old and doesn't detect all USB Types. There is a much newer version in the development branch which should work with FlightSim, but it still has some rough edges (need to...
Looks like you are in the wrong thread? This is TeensyTimerTool, not TeensyStep :-)
Anyway, on a T3.2 FTM1 only has 2 channels. A controller needs one PIT and two FTMs so, you can only use one controller if you...
Strange, this is the most simple application and should work of course. I'm currently not at home and don't have a T4 with me for testing I can have a closer look on Friday. Does it work with other timers (e.g. GPT1,...
Thanks, copied your post into the "Connectivity" section of the user WIKI (https://github.com/TeensyUser/doc/wiki/FLEXIO) Feel free to edit and add other stuff to the wiki as you like (the text might benefit from a few...
Yes, was quite some fun and turns out to be quite useful. I bought the heater cartridges and the NTC from Amazon. The rest was just stuff lying around.
Thanks, the small size was a design goal indeed, sits besides...
I'm quite used to soldering small SMD parts on prototype boards but those QFN chips like the Teensy bootloaders are a borderline experience for me and my soldering iron. I therefore wanted to give one of those hotplates...
Those reed relays (HE3621) have the flyback diodes integrated and a DC resistance of 500R. Seems to be OK to directly drive them from a processor pin !?!
Isn't this normal? New Teensies come as HID devices, they don't have serial enabled by default. If you expect to see the board as serial device in Windows you need to upload a sketch compiled with the USB Option Serial...
When I started this project a couple of years ago I was thinking of a plugin as well. I decided to not make a plugin/extension because of two reasons:
I didn't want a dependency on the used editor (editors tend...
Don't ask me why but it works without the priority argument. I.e.,
void __attribute__((constructor )) init_foo(void)
{
foo = 5;
}
Are you sure that this is even supposed to work in c++ code? Seems to be...
BTW: if you need a MAC address for projects not containing a Teensy, there are small (e.g. sot23) and cheap chips with preprogrammed MAC. E.g.: https://www.microchip.com/wwwproducts/en/11AA02E48. In addition to the MAC...
A motor doesn't generate a force but a torque (the rotational equivalent of force). If you have an object with a weight of say F=10N on a lever arm of say L=0.5m length the motor needs to generate a torque of M = F x L...
I stumbled over the same issue in one of my libraries a couple of months ago. It looks like the construct was never "legal" but gcc ignored the error in older versions. There are a lot of discussions at Stackoverflow...
That list looks like some Teensy2 (AVR) stuff. You find the interrupts 4.x interrupt defines in imxrt.h https://github.com/PaulStoffregen/cores/blob/master/teensy4/imxrt.h. You can use AttachInterruptVector to hook...
I also did one some years ago. It used a T3.2 and transmitted the count data via a Websocket server into the LAN/WLAN. The application was running in a browser (HTML5) so, anything which is able to launch a browser...
In my opinion the meanwhile very broad user base of the Arduino ecosystem has just too many different expectations, use cases and capabilities to find a one fits all solution. Since the IDE market is currently quite...
If you ever come to Germany you should definitely spend a day in the Minatur Wunderland in Hamburg. Here an official advertisement video
And here more info about controlling the thing (German, but you can...
He, he, working on model trains at 5:30 reminds me of those mornings after Christmas some 50 years ago :-)
For completeness I uploaded an example showing how to use the TimerTool TCK (software) timers. You can switch...
I did find that WebThrottle application to control it. Sending/receiving of commands is nicely logged so it communicates. If I toggle the power off button pin3 gets high. So, looks like everything works as advertised. I...
Sorry, I was busy yesterday and didn't find time to answer. The reason why it hang was one change you did in Timer.cpp which I forgot to undo. Specifically, you assigned TeensyTimer Tool timers to TimerA, TimerB.... ...
Great, looks like it works! Let the trains departure :-)
Just a comment: If this is only for you, your method of hacking the teensy timers into the code is certainly fine. If you want to have it integrated to the...
Yes, this is what I thought as well when I read through the API. CMAKE is beautiful but I don't believe it will work out for the masses. I think that the main use case will be Python. Curious how Arduino will integrate...
Yes, the put/get string functions are declared/defined in a header. (They were added by some guy named luni a couple of month ago :( )
If more than one translation unit includes the header, the linker doesn't know...
The pull request I sent you this afternoon explains the error and a fix https://github.com/mjs513/CommandStation-EX/pull/1? A corresponding pull request for the fix in the EEProm library is also done already...
The pull request I sent you this afternoon explains the error and a fix https://github.com/mjs513/CommandStation-EX/pull/1? A corresponding pull request for the fix in the EEProm is also done already...
They are doing some tricks with the prescalers to extend the 16bit timers to 32bit. -> Might be easier to use the Teensy 32bit timers instead.
Do you have a version already which compiles for the Teensy? Would make...
Sure, here the documentation: https://github.com/luni64/EncoderTool/wiki For things like volume control it also provides built in value limiting (cyclic and hard stop). Since you are using 11 encoders you might be...
Just a note: That works nicely if your application is not sensitive to bounces. E.g. if you use the encoder for set point applications like a volume control or similar. If you need to trigger stuff whenever the encoder...
Sounds like a fun project :-)
I had a very quick look at the library, seems like it is already prepared for different processors. There are two folders ATMEGA328 and ATMEGA2560 in which a class Timer is derived from...
I had a brief look at the c/c++ API. Having a documented API is just wonderful. Looks like they actually use CMAKE as build system? On one hand this is great since it doesn't tie you to any IDE (and I really like this)...
100stp/sec should not be a problem for this motor. (I assume there is no load on it?)
One more (unlikely) idea: your software is a bit unusual in that it generates a square wave instead of the usual pulses. Can you...
You are stepping this motor without acceleration at 1kHz. Depending on your microstep setting on the driver this might be borderline. If you reverse the direction while the motor runs at this speed it needs to fully...
Very nice!
Back in the days when people had weird hair cuts, wore flared trousers and CCD chips where extremely expensive there was some hype about opening DRAM chips and using them as CCDs. The idea is the same...
Thanks a lot for your feedback.
Yes, that was surprisingly simple
Actually I have a few lying around but never used them. Will give them a try when I find some time.
He, he, when I soldered them in I...
Not from me, but it is under MIT, so feel free to ask SparkFun, and probably PJRC :-) (According to a comment from the SparkFun CEO on Youtube they already viewed the vid during a company meeting :-) )
If you need...
Next step in my deep dive into the MicroMod stuff was to build a custom carrier board. The compact stepper board can be used with up to four stepper drivers with standard layout (e.g. DRV8825). 1xI2C, 1xSPI, 1xUART, 2x...
I'm probably missing something, but why does it have to be an "official" addon board? Packing an ESP on a simple T3/4 breakout board and communicate to it via serial doesn't sound difficult?
No, this would hardly be economical :-). However, If you want, I can put the design files on GitHub so you can order/make them yourself. Board cost (JLPCB) where EUR12 for 10pcs including shipment and customs handling....
Looks like you stumbled over the same issue as already found in another context here: https://forum.pjrc.com/threads/65469-EncoderTool-Problems?p=264465
Seems to be some weird linker issue. See also #8 in the linked...
Actually, hand soldering it is not _that_ difficult. If I can do it using my 40 year old DIY soldering station anyone can :-). Some cheap loupe glasses help a lot...
Good thing is that my daughter is currently...
To follow that up: Grounding PTA1 works, the SWD pins get tri stated and an external debug probe can connect. Grounding PTA3 does disable the bootloader (it doesn't react to the boot button anymore) but doesn't...
Thanks for the feedback. Meanwhile, I did some measurements and found that the boot input pin is permanently low. I assume some shortcut under the bootloader or it simply is broken...
Anyway, I built a second board...
Actually I very much hope that Paul is working on it and that the rumors are not just rumors... :cool:
IMHO, this form factor is really intriguing for integrating processors into custom carrier boards. I'm currently...
Yay... after some delay due to the Christmas holidays the boards for my first DIY Teensy (compatible to the SparkFun MicroMod carriers) arrived today...
.. and I tested my rusty 0603 soldering...
I wouldn't do that, I'd just sum both and calculate the percentage. The deviation is relatively small and probably won't disturb anyone. Never confuse users if you want to avoid support (I'm heading a service department...
A few hopefully constructive remarks:
While the percentages for ITCM and DTCM are correct technically, they might be misleading since they only show the usage relative to the current ITCM/DTCM split. I suggest to...