I'm a bit confused, trying to parse this
Neither board has 3V power? Or one does and the other does not?
Type: Posts; User: PaulStoffregen
I'm a bit confused, trying to parse this
Neither board has 3V power? Or one does and the other does not?
If it's completely unresponsive, let's first look at whether it's getting power....
Try using a DC voltmeter to measure VIN-GND (should be about 5V) and 3.3V-GND (should be 3.3V).
The jack on the audio shield is output only, meant for headphones. To get a signal into the audio shield, you need to connect it here:
24472
Probably best to start with this 31 page...
Usually these sorts of mysterious problems are due to a buffer overflow. Adding even an unused variable tends to cause the overwriting to corrupt something else (which is less critical and doesn't...
You need to edit usb_desc.h. See the comments in that file for details. Pay attention to the folder name, as 2 copies exist for Teensy 3 vs 4.
Very difficult to say what's going wrong here, but it does remind me of painful problems as couple people experienced with Traco DC-DC step down converters they bought from Adafruit. As I recall,...
With Teensy 4.0 / 4.1 you could do this using SPI1 on pins 26 & 27.
But with Teensy 4.0 those pins are on the bottom side pads which aren't as convenient as the outside edge pins. The SPI...
Sure, why not.
24463
24464
Hopefully no big surprises here, since you should be able to see these traces by just looking at the PCB before soldering.
It is indeed unfinished, but does partially work.
Make sure you're using the latest beta. In Arduino, click Help > About to check which version you have installed. If it's older than 1.47-beta7,...
Any chance the file is actually stereo data? In that case, the WAV file player will de-interleave the samples and send each channel to its 2 outputs. But the raw player will just give you all the...
Very unlikely your Teensy 4.1 is defective. The Linux kernel is detecting "New USB device found, idVendor=16c0, idProduct=0478, bcdDevice=1.05", which is a strong indication the bootloader is...
The bottom (green) trace isn't SPI at all. It's from this:
void loop() {
while (1) {
digitalToggleFast(2);
}
}
I've not heard of anyone has writing code for Pico to work with Teensy's audio shield. I did see a few people working on generic audio stuff (not specifically for SGTL5000 or this shield) but it...
SPIFIFO isn't really recommended anymore, but I decided to give it a quick try just to see how much of the CPU time on a Teensy 3.2 would remain unused if an IntervalTimer uses it every 5...
Yes, there is a solution. All you need to do is use a recent beta version, because PDM support for Teensy 4.x was added after 1.53 was released.
Get it here:...
Yup, let's fix the struct in imxrt.h and see if anything breaks. ;)
EDIT: committed a fix. https://github.com/PaulStoffregen/cores/commit/64f7d7c1eededf0102510530a4e621395c4d51f7
Yup, sent a pull request just now. I'm not sure it's 100% working yet. I'm seeing a lot more VSYNC interrupts than screen refreshes. I added a some code to print the actual refresh rate.
Opps, sorry, I made some mistakes. Working on it now...
Send a pull request for continuous FlexIO DMA. I took the liberty of replacing Defragster's continuous "F" mode in hm01b0_testv3.ino.
I'm working right now to add start / stop for FlexIO, as similar to Kurt's API as I can.
Just wanted to ask which buffers are really meant to be DMAMEM vs DTCM?
I see this in the examples.
uint8_t frameBuffer[(324) * 244];
uint16_t imageBuffer[(324) * 244]; DMAMEM
uint8_t...
Yes, I believe your library tries to do the dynamic allocation of FlexIO resources, right?
The camera interface is a bit special through, because only shifters 3 & 7 support receiving parallel...
Yup, that did the trick. I see where I went wrong. A silly mistake really. Sent a pull request to fix it.
EDIT: with the latest updates I'm getting a really dark picture...
Can you point me to that DMA serial receive code?
Before trying to answer, I need to admit two things.
1: I've only read Kurt's code quickly, haven't actually worked with it or analyzed carefully
2: Obviously I don't know everything about FlexIO...
I believe all you need to do with Teensy 4.0 & 4.1 is edit the sample rate number in AudioStream.h.
That file is located inside your Arduino folder. When you search for that file, you should find...
Hope you can find whatever I missed on the FlexIO hardware trigger. It's probably something "trivial" I overlooked.
I wouldn't toss that code! It still could be really useful on Teensy 4.1...
Looks like my display woes might be from pulling in the latest ILI9341_t3n. When I run graphicstest from ILI9341_t3, my display works. But graphicstest from ILI9341_t3n now gives a white screen. ...
The example seems to no longer work with my ILI9341. Not sure why... can't do more right now.
Sent a PR with the work-in-progress DMA code.
https://github.com/mjs513/TMM-HB01B0-Camera/pull/7/files
When you run it, you'll probably see this in the serial monitor
ERROR: 19764 manual...
I'm playing the FlexIO DMA. Can't seem to get hardware triggering to work, but the DMA does transfer the image if I cheat and manually trigger the DMA channel each time the shifter status flag is...
Ok, I just sent a pull request with initial FlexIO. No DMA yet, but it should be fairly "easy" to just set up a DMA transfer which reads from that FlexIO register and writes to the buffer.
I updated to the latest TMM-HB01B0-Camera from github, in prep to clean up my flexio stuff, but it seems I no longer get a working image from either "s" or DMA. I'll admit, I fell behind on the...
Should I make the FlexIO code just read the whole 324x244 data? That would be simpler...
Somehow I was under the impression we were keeping the first 320 pixels and discarding the last 4.
Just to confirm, on each line of 324 pixels, we're supposed to ignore the first 2 and last 2...
I just connected all 3 power pins to 3.3V.
That test board doesn't connect the video signals at all. They just route to those pads in the middle of the PCB. Only power and I2C are actually...
Right now I'm using Sparkfun's ML carrier board with ILI9341 connected to the left side pins. Nothing special on the HM01B0 camera.
On the breakout board, which is still at least a week away, I...
More fiddling with FlexIO... and I finally have it somewhat working. For reasons I don't fully understand, it's capturing only 7 of every 8 pixels. So I added a bit of kludge code to add 4 white...
Another detail to keep in mind is the display redraws the screen from its own frame buffer at a speed probably less than 60 Hz. I recall seeing a register to adjust the internal refresh speed. But...
I'm working on FlexIO again today. Building test code inside your lib and targeting 8 bit mode, mostly just overriding the readFrame() function while I struggle to get it just working in any way at...
I started playing with FlexIO for the camera. So far it's unresponsive, but hope to have something soon...
Pulled in the latest QuadEncoder.
Running the DMA version now. Wow, frame rate is so smooth. Seeing some tearing & artifacts.
Which Teensy are you using? The process is different on Teensy 4.x than the older boards.
I finally got the display wired up and have it running here too, showing a super exciting view of my oscilloscope from the workbench.
24406
Send another pull request, just minor stuff &...
A little breakout board to play with the signals on a Teensy 4.1 arrived last night from OSH Park. I build one this morning.
24398
I'm running the camera completely on 3.3V. Haven't looked at...
I tested just now by adding Serial.println("test"); to main.cpp. That original Makefile compiles it properly. I uploaded the hex file to a Teensy 4.0, and indeed it does print "test" every second...
I believe the Himax HM01B0 camera does support HSYNC gated PCLK. Try setting bit 5 (mask 0x20) in the OSC_CLK_DIV register (address 0x3060).
Maybe change this line in HM01B0.cpp
...
That crystal should be fine. From everything you've said, especially that you do observe the crystal oscillating under some circumstance, I'd say the crystal is very unlikely to be your problem.
...
The "queue" objects are meant to let your program get access to the actual audio samples. See File > Examples > Audio > Recorder for sample code. Edit that code to delete the part which writes to a...
I also want to know why it would do this, because it should not normally blink 8 times if you have used the IMXRT1062 chip.
But I can not see your PCB. I know nothing of its design details. Even...