I dug out my LT1867L board and recorded a data file with all 8 channels connected to a 1.5V alkaline battery and sampled at 4000 samples/second. Data from each of the first four channels passed...
Type: Posts; User: mborgerson
I dug out my LT1867L board and recorded a data file with all 8 channels connected to a 1.5V alkaline battery and sampled at 4000 samples/second. Data from each of the first four channels passed...
The LT1867 is a capacitive Successive Approximation ADC. The input acquisition time is a nominal 1.1 microseconds, independent of the sample rate.
As noted, it is imperative to have good...
I've used an LT1867 board from another project to successfully collect data on the T3.6. Here is the part of the code that interacts with the LT1867:
...
Or you could consider using an SD File that is pre-allocated. This avoids the necessity for the file system to scan the FAT to find the next file cluster.
Excellent point. I've gone so far as to add a label to the silkscreen for things like SCK, MOSI, MISO, etc. etc. The vias generally take less than half the PCB area of a normal test point. Some of...
That was my thought too. A closer examination of the timing of the low-current part shows that those periods last about the same interval as the timing info shows for an average update of the...
Been there, done that. I got past the problem at the prototype stage by finding a convenient place to cut the traces and do an "X" set of jumpers to switch the signals. I've also added pull-ups by...
Funny you should ask! A few days ago, I had a setup to measure power consumption of the T4.1 while writing to the SD Card. The setup uses a high-side current sensor on the T4.1 power input and...
I took a quick look at the GitHub repository and I will probably try implementing it later today. A few things still bother me:
1. The endpoint definitions are different between the T3 and T4...
In a post on this thread: https://forum.pjrc.com/threads/66265-Fastest-way-to-transfer-data-to-from-Teensy-4-0-4-1-and-Windows-10
I gave examples of python scripts and a Teensy 4.1 sketch that...
FWIW, I've attached a PDF schematic from a data logger from about 12 years ago---back when 32GB SD cards were the largest available and cost $50 to $75 dollars each. We needed 128GB of storage, so...
Luni: Feel free to put the python scripts on the wiki page.
Using all three I2C ports may give you 3x the sampling rate that you would get with a multiplexer. Answering the following questions might get more complete responses:
1. What are your desired...
Rather than post hundreds of lines of C++ Builder code that you could build to illustrate data transfers that take only a few dozen lines, I bit the bullet and came up with a couple of Python...
I've had good results transferring data at rates over 10MB/second using the USB Serial port. I've recently found that it makes things simpler to use the USB Dual Serial setup. I use SerialUSB1...
I think a neat approach would be to build your own switch with some brass sheet stock from the local hobby shop:
T___________NUT_
^____________G
The 'T' is a terminal for a...
Tested B6 with Radiohead library and two NRF24LO1 modules with LNA and power amplifiers. Good comms between T4.0 and T4.1 at default power and SPI settings over about 30 feet inside the house. ...
This is an improved Slide Show display. The QVGA slide images and transitions were recorded with the Win10 screen recorder. The slide images and transitions were sent to the PC host application...
Installed on Win10x64 Home.
All the following compiled and ran on T4.1 without problems (except the ever present warning about using Timelib.h vs Time.h):
OV7670 Camera test with JPG...
I stripped down a logger I wrote some time ago to the bare bones:
* Open SD file
* write binary records consisting of timing data and 5 ADC values to a buffer
* when buffer is full, swap...
Using the default Teensy Serial USB, I can send about 22MB/second to my PC data logger host app. Your host application has to be optimized for data transfer---the only screen output I use is a byte...
You could get 75MHz by setting analogoutfrequency on a PWM-capable pin. I think that's as high as you can go as it is 1/2 the bus frequency of 150MHz. Perhaps you could get 80MHz by overclocking...
I've created a GitHub repository with the Slideshow library. The repository has the Slideshow class, an example program, and 5 files that are used by the example program. The repository is here: ...
The open once, write and flush many times, close once process is more efficient with larger writes to SD. When you do small writes, like your 64 bytes, it is not so efficient, as the system has to...
I figured out how to get a better video of the slide show transition. This video was taken from the display of the slide show app I plan to post on GitHub tomorrow.
https://youtu.be/48MEkTOLv2I...
I think I'll have it on GitHub sometime tomorrow. The code seems pretty stable now, but I need to clean up excess debug statements and add some documentation.
I suppose I could add a few more...
Rather than opening and closing the files, you could simply call the flush() function. That function writes currently buffered data to the SD and updates the length in the directory. IIRC, it is...
An important thing to remember is that the SD write routines in the latest version of SD (which is actually like SDFAT 2.0B under the hood) takes only a handful of microseconds to write to the SD...
Okay, here is a video from a slide show run on the T4.1 and using the pixel pipeline for transitions and pan and zoom effects during slide display.
https://youtu.be/yRxyfhdJfHc
The video...
Could you just divide the input signal by two with an appropriate flip-flop or counter IC? You would lose some resolution, but you would not have to worry about messing with the software innards of...
I assume that you are driving the sensor with 5V and ground for your power. The outputs should be at about 2.5V each. The T4.1 ADC has an input limit of about 3.3Volts, so you probably need a...
The output data from the 1MSample logger is a binary file with a sequence of 16-bit unsigned integers. Each integer can have a value between 0 and 4095, which represents the range of values output...
I think Google is the only one where I have an account. I'll see what I need to do for that. I wonder if I could put the video on my GitHub account, along with the code and demo .BMP files. ...
I have a video file (MP4) that I want to post to show PXP usage in slide show transitions on an ILI9341 display.
How can I add this video to a forum post. The .mp4 fie is about 2.5MB.
The...
Unfortunately, your circuit diagram illustrates a major problem with direct connection of Wheatstone bridges. They often present several K Ohms of impedance at the ADC inputs. This can slow the...
For a few weeks now, I've been working on a motion-triggered OV7670 camera application to collect and save camera images to the Teensy 4.1 SD card. Quite often, I transfer the images to the PC using...
Converting my T4.1 photo transfer app required changing two lines of code and adding another to open SerialUSB1. It took a lot more lines to open a second serial port on the PC and to separate out...
DOH! (Forehead Slap). I should have seen that when I was adding MTP to the USB descriptions file. I'll try it out on my C++ Builder host. After that, I hope to get a processing sketch with the...
I would like to know if there is a way to have the Teensy USB cable support two separate serial communications links. At present, my host program handles text I/O and high-speed binary transfers on...
After a bit more research on JPEG encoders, I found tooJpeg by Stephan Brumme. This encoder offered some significant advantages over the earlier version:
1. No requirement for 256KB of...
I have used the PXP for several functions to support the ILI9341:
1. Convert YUV422 data from an OV7670 camera to RGB565 for the ILI9341.
2. Rotate the camera data to match the ILI9341 rotation...
I've downloaded a JPEG compression program and adapted it to run on the T4.1 to which I've connected my OV7670 camera. The original code used malloc() to allocate 256KB of buffers that hold...
I am cleaning up my library code for the CSI camera interface and the Pixel pipeline. One thing that I want to do is to have the ability to notify users of status and errors. Presently, that is...
Nice to see you have things working for your application. I didn't run into the glitch with CSCOEFn restoration as my scheme for saving and restoring a Next_PXP array pulls all the data from the PXP...
Using MTP to fetch files written by a data logger seems to fit within the MTP usage scheme. The data logger firmware is responsible for handling the file system and the Storage portion of the MTP...
I would go even further and move those I and Q arrays into DTCM to avoid any possibility of cache interference with the collection. As defragster points out, it is only 33K of memory, but that is...
I agree that sending a command via serial to cause the MTP responder to update its database seems weird. There are some cases where it can be useful:
1. If the Teensy is in the middle of a data...
Also make sure that your software doesn't rely on comparisons with millis() for timing. The millis() count will overflow in 49.7 days. Of course, micros() overflows even more quickly.
You are correct that the external and USB5V are in parallel in that they both connect to the input of the Teensy regulator that provides 3.3V. You need to disconnect the USB5V by cutting the jumper...
Note that it is not necessary to physically unplug the USB or use the Windows device manager to get the PC to update the MTP status. A call to usb_init() will reset the usb link and windows will...