Forum Rule: Always post complete source code & details to reproduce any issue!

Search:

Type: Posts; User: JarkkoL

Search: Search took 0.00 seconds.

  1. Replies
    18
    Views
    703

    I believe the best thing you can do is to build...

    I believe the best thing you can do is to build command buffer and use DMA to transfer the buffer to the TFT asynchronously. If you keep sending the data to the TFT over SPI synchronously as you draw...
  2. Replies
    4
    Views
    147

    When profiling performance, always make sure your...

    When profiling performance, always make sure your calculations have side effects (with minimal overhead) to prevent compiler optimizing out your profiling code. For example keep accumulating the...
  3. The default operator=() is deleted because you...

    The default operator=() is deleted because you have reference as a member (SkyPito& poti). Either write your code so that it doesn't require operator=() or change the member to pointer for example....
  4. Thanks for the detailed answer Paul! I was...

    Thanks for the detailed answer Paul!
    I was mainly worried that splitting the read to two would always issue two fetches over the bus. It's good to know Teensy actually has data cache. This is for...
  5. I mentioned _program_ memory (aka flash), not RAM

    I mentioned _program_ memory (aka flash), not RAM
  6. Performance of unaligned reads from program memory

    Hi,

    What's the performance hit of unaligned memory reads from program memory on Teensy? I'm porting some code to Cortex-M0+ which simply crashes upon unaligned reads and I have to write this code...
  7. Replies
    7
    Views
    536

    For a street organ you could use the same sample...

    For a street organ you could use the same sample for many pipes and just play it back in different frequencies to fit into the flash memory. I have mixed over 32 samples on Teensy 3.6 @ 44kHz without...
  8. Replies
    5
    Views
    903

    Very cool, nice job! Cheers, Jarkko

    Very cool, nice job!

    Cheers, Jarkko
  9. Replies
    5
    Views
    903

    Hi Frank, The player can't directly play from...

    Hi Frank,

    The player can't directly play from SD card since it needs random access to the music data, but it should be easy to copy the data from the card to MCU flash and start the playback
    ...
  10. Just change your function signature to: void...

    Just change your function signature to:


    void EBYTE::SendData(const void *data_, unsigned size_)
    {
    s_->write(data_, size_);
    }
  11. Replies
    5
    Views
    903

    Arduino Music Player

    Hi,

    Over the Christmas break I did some improvements to my Arduino Music Player that's able to play different MOD/S3M/XM/IT files. If you are not familiar, these music files contain sampled...
  12. Replies
    4
    Views
    1,510

    Thanks for clarifying the terminology...

    Thanks for clarifying the terminology GremlingWrangler. Yes indeed I was referring to a high impedance / floating pin. I have to do some adhoc soldering on my prototype circuit to add a connector to...
  13. Replies
    4
    Views
    1,510

    Oh right, I mean Pin 17 between Pin 12 and 3.3V....

    Oh right, I mean Pin 17 between Pin 12 and 3.3V. I didn't realize it's the same pin as pin between 16 and 18 (but at Vin voltage). I thought the pin 17 between pin 12 and 3.3V didn't support PWM, so...
  14. Replies
    4
    Views
    1,510

    Disabling pins on Teensy LC

    Hi,

    I have a situation where I need to solder a 4 pin connector to back of Teensy LC: pin 12, pin 17, 3.3V and GND. However, I need either of the output pins to support PWM, so I though of...
  15. Replies
    6
    Views
    1,860

    Thanks Paul, I'll try the PNP transistor setup. I...

    Thanks Paul, I'll try the PNP transistor setup. I was thinking of using PN2907 for the PNP since I can buy one from local electronic store and it seems to be able to handle current up to 0.8A. This...
  16. Replies
    6
    Views
    1,860

    High Powered LED matrix controller

    Hi,

    I'm trying to implement 3W HPL matrix (3x8) controlled with Teensy. I'm using ULN2803 to sink the power from HPL catodes in 8 rows which I believe works fine, but the problem is providing...
  17. Replies
    3
    Views
    2,021

    For this project I don't care about the...

    For this project I don't care about the efficiency that much but more about compactness and simplicity. It seems to be working well, thanks!
  18. Replies
    3
    Views
    2,021

    How to run Teensy with 9V battery?

    Hi,

    What's the recommended way to run Teensy (3.x/LC) with 9V battery? I found a guide to convert 9V to 5V, but would it work well with Teensy?

    Thanks, Jarkko
  19. Replies
    9
    Views
    7,006

    Ok, I was able to fix the Teensy 3.1 port! Now...

    Ok, I was able to fix the Teensy 3.1 port! Now it's using the built-in 12-bit DAC. I submitted the fix to Google Code if you want to try it out.


    https://www.youtube.com/watch?v=zFMUmE5CdrQ
  20. Replies
    9
    Views
    7,006

    Nice, I tried to use the DAC in Teensy 3.1 but...

    Nice, I tried to use the DAC in Teensy 3.1 but the sound quality wasn't very good for some reason. Maybe it's the missing interrupt disable/enable calls in get_mixer_buffer() because when I increase...
  21. Replies
    9
    Views
    7,006

    Cool, was thinking of R2R but wasn't sure if it...

    Cool, was thinking of R2R but wasn't sure if it would make any difference. I'll definitely try it out. Thanks.
  22. Replies
    9
    Views
    7,006

    Problem with Teensy3 resistor DAC

    I ported my 8-bit resistor DAC mod player from Arduino Uno to Teensy3 and the quality of the output is pretty poor in comparison. I suspect this has something to do with how voltage levels vary when...
  23. Before starting the playback I set the pins for...

    Before starting the playback I set the pins for PORTD like this:
    DDRD=0xff;
    and the timer interrupt is just:


    static bool s_val=false;
    s_val=!s_val;
    PORTD=s_val?0x01:0x00;
  24. Yes, I'm sure. I have the DAC connected to Teensy...

    Yes, I'm sure. I have the DAC connected to Teensy pins 0-7 (PORTD). If I only connect pin 0 and keep flipping bit 0 (other bits are 0) in PORTD at 20KHz, I hear high frequency sound (10KHz). Now if I...
  25. I got the XM/IT volume envelope support...

    I got the XM/IT volume envelope support implemented and ported the player to Teensy (no asm optimized yet though), but the audio quality on Teensy is pretty poor compared to Arduino. Is it possible...
  26. Thanks, I'll have a look at IntervalTimer. ...

    Thanks, I'll have a look at IntervalTimer.

    Both buffer size and mixing frequency are something I can easily configure. The buffer is double buffered actually, so that while the interrupt is...
  27. I'm planning to port my mod player to Teensy 3.0...

    I'm planning to port my mod player to Teensy 3.0 so that will give you some reference performance numbers at least. I optimized the mixing and interrupt routines in AVR asm, but there's also...
  28. Well duh, I thought the plan was to have...

    Well duh, I thought the plan was to have microcontroller on the audio shield doing all the mixing!
  29. Ok, but I thought you want to do mixing on the...

    Ok, but I thought you want to do mixing on the audio microcontroller, not on Teensy, or did I miss something? That's the point of wavetables after all, not to stress host microcontroller.
  30. Is this memory able to provide ~5.4MB/s random...

    Is this memory able to provide ~5.4MB/s random access (4 bytes / read)? That's what's required for 32 channel 16-bit stereo mixing at 44.1KHz. From datasheet I saw it's able to do 50MB/s continuous...
  31. You need some support in your device if you are...

    You need some support in your device if you are going to support wavetables though. If you plan to provide only master buffer access and have essentially a simple DAC with a buffer, then you have to...
  32. I don't have documentation, but what you do is...

    I don't have documentation, but what you do is play the sample you play in left channel negated on right channel to make it appear in the surround channel. So you need ability to do 180 degree phase...
  33. Might be also good to add support for negative...

    Might be also good to add support for negative volumes to enable implementation of Dolby Surround. Also doing FFT on the master buffer would be nice support for visualization etc.
  34. Volume/pitch/pan envelopes are more of a software...

    Volume/pitch/pan envelopes are more of a software features. I see HW doing the heavy lifting and software controlling it for various effects. This keeps HW simplier and more general purpose. So I...
  35. Yeah, I'm totally for supporting existing...

    Yeah, I'm totally for supporting existing formats, but just wondering what kind of features it has that require HW support (essentially special support from the mixing routine)
  36. What kind of features SoundFont has that require...

    What kind of features SoundFont has that require special features from an audio device with wavetable support?
  37. Ok, so you are not convinced that playing music...

    Ok, so you are not convinced that playing music on an audio device is interesting :rolleyes:


    It's not an API specific to mod playback/tracker, but generic interface for handling audio sample...
  38. For IT I used this spec...

    For IT I used this spec for parsing the format. It doesn't describe the compressed sample parsing though, so I used this spec and also here is some code for decompressing compressed samples. For XM...
  39. From the top of my head, you should have: 1)...

    From the top of my head, you should have:
    1) enough memory to make the wavetable useful (or at least make it something I can expand myself if it's too expensive off-the-shelf, this is what GUS had...
  40. If there's no proper wavetable support what you...

    If there's no proper wavetable support what you think you can achieve? Recreating awful Adlib-like device, huh? I want to release uC from doing time consuming audio sample mixing & decoding, thus you...
  41. Unless if you are planning to provide true...

    Unless if you are planning to provide true wavetable support with bunch of memory to load all the samples in, forget #2. I would also advice against Adlib kind of playback support. In fact, all of...
  42. I would just like something where I can...

    I would just like something where I can efficiently push audio data (8/16 bits, mono/stereo, this should be something you can choose based on your application) to a double buffer on the audio device...
  43. Replies
    1
    Views
    1,308

    Ok, got it, I have to use IntervalTimer class...

    Ok, got it, I have to use IntervalTimer class instead.
  44. Replies
    1
    Views
    1,308

    Timer interrupt problem

    Hi,

    I'm trying to define an interrupt that gets executed at given time interval. I found some code to do this but I'm getting an error for redefining pit0_isr:
    IntervalTimer.cpp.o: In function...
Results 1 to 44 of 45