Suspect that concern was resolved with the attachInterrupt() code in that file as it has been in use for some long time now without issue ... the problem with comments ... ???
> no comment, no clue beyond what the...
Thanks for the information. This comment in that interrupt.c file made me question if I should be using pins 6-9 instead of 9-12, or maybe avoiding them instead. I just wasn't quite sure what to make of it as I also ran...
This thread pjrc.com/threads/69185-FLASHMEM-for-all-functions-in-a-file
Has tips on .LD file edits that keep ALL code in FLASH - and notes on pulling select code to RAM.
yield() is the one 'runtime' feature that goes with Arduino.
When called directly, and called with calls to delay() and on each exit of loop() before it is called again.
What yield does is check an existing...
It's probably my code. I have about 3k lines of code and i'm using 5 or 6 timers so i'm probably doing something wrong somewhere. I just went back to elapsedMillis for this as, based on your comments, it seemed to not...
hey mindwave,
the tsynth is trying to emulate an analog synth with 6 voices + filters + envelopes and i think that it is. so yes, i would say that is a good starting point because it will cover how the most basic...
PH - WOW I was never a fan of the dx7. Sorry went from seq cts 6 trx to a jx8p, try then d50 and been Roland boy ever since. Played a T1 in the early 90s but didn't realize I could afford one so went back to roland. ...
That noise sounds like mostly Gaussian-like noise. For this, spectral filtering reduces the noise power in proportion to the bandwidth. I suggest FIR filtering as ringing is greater for IIR (biquad) filtering. These...
Hi,
I am developing a prototyping board that's designed mainly for Teensy and Daisy Seed. The board produces aggressive digital noise on Teensy (4.1, MQS/PT8211) but not on Daisy.
Since I'm not an engineer I...
Update:
I ran an evtest on both linux systems... On the one that is working FUZZ for ABS_X is 0 (or not set) and on the one that is not working FUZZ for ABS_X is reported as 255.
Not sure if this is the problem,...
I am working on a design that uses a teensylc, and some encoder wheels to send data to a linux system. The data is pretty simple. I'm sending a number from 1 to 1024 to the linux system via Joystick.X();
The...
Yes, that should be the case - with the exception of some conditional and instruction time.
While in FAST I/O mode all pins route through a single common interrupt routine given the 1062 MCU design.
There is then...
The Teensy Audio library has sine wave generators and multipliers, the combination of which does AM. This is in 16-bit integer. See the Teensy Audio Design Tool.
Alternatively, this can be done in floating point...
For some reasons I can't see the replies I got via mail, but thanks for suggesting Vimana and Microdexed! They both seem quite advanced and solid; not sure if I have the right skillset to take those projects and...
Hello Paul,
As for the distance between the two NRF modules, I actually placed them side by side to perform the speed tests I did. I don't think that is the problem in this case.
As for the originality of my NRF...
Are all pins equal in response times for a digital transition on a T4.1?
I am setting no more than four interrupts active at a time to watch for either rising or falling edges.
For example:
void...
@ deelaleo
You might also want to take a look at MicroBox. It is a Linux like shell that what written for use with Arduino.
http://sebastian-duell.de/en/microbox/index.html
What's kind of interesting about it...
Hi,
I have seen that the teensy are now supported by arduino-cli.
I use it on windows to compile my project with different flag. With my ESP8266 code I have no issue when I use option.
But when I try to use...
Thanks for the reply.
Most of the code size comes from the libraries I used, not the code I wrote. I know I can put the FLASHMEM prefix to library functions, but libraries like LVGL are so large that it would not be...
Since the NRF24L01 operates on the 2.4GHz ISM band, you have to share that medium with all present WiFi traffic. That could be one of the issues for the low throughput.
Another factor could be the physical distance...
Putting "FLASHMEM" as a prefix to the function prototype will have it reside in FLASH.
This example from PJRC's Startup.c for example:
FLASHMEM void configure_external_ram()
{
...
}
Start with any one time...
Hello,
I'm building a portable synth with teensy 4.1, which includes a touch screen GUI built with LVGL graphics library.
The code became really large as the project grew, it's now more than 250K and does not fit...
Hi Ibrahim,
Did you provide a "special" power supply for the NRF?
They are somewhat sensible to this point, and this could be a problem. There is some small power shield specially designed for this purpose.
Well,...
See here https://github.com/luni64/TeensyTimerTool/wiki/Basic-Usage#finding-out-the-maximum-timer-period for information how to find out the max supported timer period for the various hard/software timers available. ...
Guess there is no interest in such usage for the Teensy? Still searching for something to use as starting point but I guess I can start getting a simple UI running with micropython maybe. That should be simple enough to...
Thanks, will take a look at RunCPM and will check the project blog.
It does not need to be necessarily like DOS btw; I wish there was a simplified Linux terminal OS of some sort, that would basically act like if it...
FastCRC and the website also agree when given the input as a character string.
/*
FastCRC-Example
(c) Frank Boesing 2014
*/
#include <FastCRC.h>
FastCRC8 CRC8;
You have to encode those 24 bits as 3 bytes - in hex they are 0x64,0x29,0x22. This website gives 0x93 as the CRC8 of those three bytes.
FastCRC agrees:
/*
FastCRC-Example
(c) Frank Boesing 2014
*/
#include...
You appear to be generating a CRC on 24 bytes, or 192 bits; not on 3 bytes or 24 bits.
Could the data just be int8 type. Why is it in a string?
If it needs to be in a string, you could write a function to...
I am using the CRC8 example for FastCRC and comparing it to an online calculator that calculates the crc from a binary set of numbers.
Poly = x8 + x2 + x1 + 1
I don't get the same results.
/*
...
I can understand the desire to have timers with callbacks, but it sounds like you may not have all of the necessary logic to stop/start/reset those timers when events occur, such as pushing a button. The timers are nice...
To be sure, for I2C you need a bi-directional voltage translator to handle I2C. I.e. you have to boost the signals from the Teensy from 3.3v to 5v, and you need to lower the signal from the I2C devices to the Teensy...
Hi Joe,
i am looking to use a callback routine instead of polling using elapsedMillis if i can. I've been weeding elapsedMillis/Micros out of my project and if i can get this working it'll stay out.. I had been...
The default clock frequency for T4.x GPT and PIT timers in TeensyTimerTool is 24 MHz, so max period in 32 bits is (2^32)/24e6 = 178.95697 seconds. There are both 32- and 64-bit software-based timers (TCK). At 64 bits,...
Returned... now to find a 20x4 LCD that actually works good.
I re-arranged the PCB so I can use Wire0 to make code use simpler, and then ran the clock and data lines through a voltage translator to boost them to 5v.
I have a binary String of "011001000010100100100010", 24 bits, how do I calculate CRC8? I tried using FastCRC but testing gives me the wrong results. I think it's because it is looking for bytes?
Thanks
p.s. i've been able to determine that the largest value i can put into timeoutMillis is 178,956 which is 178,956,000 when it is put into the timeoutTimer.trigger(); function. Any values larger than this cause the...
Background:
I am working on an electrophysiology data acquisition system with the following specs:
- I am using an Intan RHD2132 as the amplifier and ADC (running 32 amplifier channels at 30 kSamples/s, equivalent to...
Hi Luni,
I'm using the TTT in one-shot mode to manage a screen timeout on an attached OLED but it isn't behaving as expected.
I've used the following code (this is just part of my code, not all of it)
...
You can set the CPU Frequency from the Tools menu of Arduino IDE. Nominal frequency for T3.6 is 180 MHz. For the T4.1, the closest setting is 150 MHz, so you could try that. Do your PID loops run at a fixed frequency...
I have. I did this sort of an exercise to see how it would work out. I think it would make much more sense to use the audio board. The readme on github has a fairly good explaination of the project.
...
Is there a way to slow the t4.1 down to the same speed as the t3.6 ?
I am using the board to count encoder pulses and perform pid motor control
The timing seems to be wrong with the T4.1
Can you recommend a...
Hello,
I have already post similar question but the previous thread is old, so I start a new one.
I have made a synth with a T4.0. This synth uses Frequency Modulation to generate interesting and complex...
Ears have been burning again, been re-writing project codebase. Noted a thread about encoders and Midi.
Here is the essence of what my project does with EncPlex. Variations tested on T3.2 - T4.1, Usb Type = MIDI....
To use other SPI ports, see lines 54-57 in the SdFat_Usage example:
https://github.com/PaulStoffregen/SD/blob/97ca5355b19095d9956fea902eb8f85eca312a4b/examples/SdFat_Usage/SdFat_Usage.ino#L54
Board arrived today!
The timing looks much better. Pleased so far.
< 500 ns count is 999999
< 750 ns count is 1
< 1000 ns count is 0
< 1500 ns count is 0
....
Sum of counts is 1000000
With the SD library with SPI1 and SPI2...
Look at the Examples->SD->SdFat_Usage example
It shows some example on how to do things like that, including:
//ok = SD.sdfs.begin(SdSpiConfig(chipSelect, SHARED_SPI,...
I am completely re-breadboarding the whole project, and drawing the circuit diagram as I go to post here.
I decided maybe the better option was to utilise the SPI1 and SPI2 ports on the Teensy 4, but now not so sure...
Make sure you have the latest VLI firmware installed (for the VIA USB chipset), by installing rpi-eeprom,
sudo apt install rpi-eeprom
then rebooting the 'Pi, and finally running rpi-eeprom-update,
sudo...
With DC motor power -> no motion
Power Slave Teensy -> no motion
Remove power from Slave teensy -> still no motion
Yes, it appears that only after the master-slave connection do the motors (controlled by the slave)...
Your code above did not work for me. I had to add delay(10) to the loop.
But your code can be simpler. Just divide the myEnc.read() by 4. And then check for the difference being positive or negative.
#include...
Seems details on the hardware controllers, motors and connections may be needed for related answers.
Wondering: If Master, Slave, DC unpowered::
> Plug in DC motor power: results?
> Then power Slave Teensy:...
I want to use a teensy 4.1 to be able to monitor the audio signal from the PC obtaining it's approximate FFT.
Since I recently installed liquid cooling for the processor and video card of the PC, I would also like to...
Hi,
Working on making a robot that uses multiple Teensy 4.0's to actuate many pairs of motors (5 motors controlled by each Teensy). Each of these Teensy's is controlled by a master Teensy 4.0 that communicates over...
Hi Paul,
my apologizes for my misstake in midi I accidentaly activate the midi output on teensy port after disable output to teensy midi port all work OK.
For info I write this code to send midi only when +4 or -4...
Here is a version of the previous that has been simplified to reduce it to 2881 KB. I took out the silkscreen features and also some internal features of the microsd card and usb port
Hi all,
i am trying to embed Lua 5.3.6 as an arduino library for different boards. Until now i have tested it on an esp32 dev module, and a pi pico, it works nice.
I would like it to support Teensy boards, especially...
Good luck. I know at least with some RPI like TFT displays I have played with. They roll their own and maybe don't use any standard chipset like the SSD...
Thanks, I'll take a look at that.
This one was sold by RPIGear. I'm trying to find out what chipset it uses (on the underside of the backpack) and is a 20 pin chip. A 2004A display with possibly a PIC16LF1829-I/SS...
Obviously it will depend on which display you are trying to use...
But for example SSD1306 - I would try Adafruit_SSD1306
They have a constructor:
Adafruit_SSD1306(uint8_t w, uint8_t h, TwoWire *twi = &Wire,
...
What libraries work with a T4.1 with a I2C Wire2 output for the common 20x4 LCD panels?
So far I'm batting zero with the ones I've tried. Some are supposed to let you override the default, but either that isn't...
Good morning all (at least my time zone)...
So far I have not seen the SD Pull Request (https://github.com/PaulStoffregen/SD/pull/43) has not been merged.
I am debugging this now. Note sometimes it works.......
Think the contrast is excellent for such a small display and the off-axis performance good as well - titled it about 80 deg (just a guess) and was still able to see the display clearly.
@defragster - sorry just saw the post. Yes @KurtE incorporated those changes into his fork of the SD library. Not sure if its been incorporated into Paul's master SD yet?
Actually I'm using the much older MSF-XINPUT which seems to be the basis for the ones you link. I should probably start with changing the library altogether :). I don't remember editing core files last time but I...
I have not much experience with MIDI. Just wondering if it is OK to send those messages every 10ms? The encoder library will generate a lot of fast up/down counts if the encoder bounces (which is very likely). So, your...
If the serial monitor shows correct counting of the encoder, than the encoder is fine. I see 4 counts per detent of the rotary encoder.
Is it possible for you to make a photo that shows your wiring of Teensy and...
I have an RPI 4 running Ubuntu 2204, I programmed a T4 with the sketch installed evtest...
It has been running maybe 30 minutes and every time I jumper from T2 or T3 to GND
I receive the events for 9002 or 9903...