Perhaps the callbacks need more STACK space than you have available. Post the memory information generated after the build so we can look to see just how close to the edge you actually are.
Getting steadily more bonkers. 64 output channels, with a different frequency / waveform combination on each one. As shown it's taking 22% CPU and 64 audio blocks, plus ~770mA from the USB ( :eek: ). I can reduce the CPU to 5% by using sine and...
@wwatson - Yes I'm using SPI. Unfortunately, the above changes have made things unstable (an endless stream of Serial.println("2D ready failed"); ) and I have reverted them. My setup is probably a little unusual in that I have *very long* wires...
Changing
#define DRAM_FREQ 166 // 120 // SDRAM clock frequency, unit: MHz. RA8876
to
#define DRAM_FREQ 160 // 120 // SDRAM clock frequency, unit: MHz. RA8876
gets rid of the compiler warning and still "feels" faster.
Also does not exceed...
Thanks for this. Unfortunately using these values results in an overflow. It works, but probably not as intended
lib/Ra8876LiteTeensy/src/RA8876_t3.cpp:809:69: warning: unsigned conversion from 'int' to 'ru8' {aka 'unsigned char'} changes value...
The Main board and Wings are now live on Tindie if anyone wants to procure via this channel rather than buying boards direct from JLCPCB. Pricing is $US.
Tindie: 8x8 Teensy Audio Board
Sadly, I couldn't find any cheaper postage, so best to...
Aside from the above, I believe you have a bit of a logic bug in your posted code
for (int i = 0; i < msg.len; i++) {
Serial.print(msg.buf[i]);
Serial.print(" ");
Serial.println("");
switch (msg.buf[1]) {...
Well lookee here ... it's yet another Teensy-based synth ... or might be, if I ever finish it. But it says "Blog" in the category heading, so this may serve to stimulate discussion if nothing else, and if I'm moved to do so I can report progress...
Calling SPI.begin() will assume you are using the default pins. CS=10, MOSI=11, MISO=12,SCK=13
If you wish to use alternate pins/ports, you will need to ensure that SPI is initialized accordingly and the library has support for alternative SPI...
No. Arduino is 5V. Teensy 4.1 is *NOT* 5V tolerant. You will need to do something to guarantee that the voltage present on any teensy4.1 pin never exceeds 3.3V
Before, I try to answer these, I thought maybe should step back a second and give a little more background information.
Half Duplex: The Dynamixels use half duplex Serial to communicate. That is that there is only one data wire between them...
This is a derivative of the PD0LEW design, using a Teensy 3.6. This version uses an RA8875 display and has been a real pain in the rear to program it! I had some help interference from various AI services that mostly led me astray, but...
Does this help?
I use the following in my app.
extern unsigned long _heap_start;
extern unsigned long _heap_end;
extern char *__brkval;
uint32_t freeRAMTeensy() {
return (char *)&_heap_end - __brkval;
}
uint32_t freeStackTeensy() {...