Michael

Forum Replies Created

Viewing 15 posts - 376 through 390 (of 1,008 total)
  • Author
    Posts
  • in reply to: Schematic question #2100
    Michael
    Keymaster

    The TX of the Defusable Clock connects to the FTDI Friend RX. The RX for the clock connects to the FTDI Friend TX. That’s how serial devices communicate. One device transmits, and this needs to be connected the the receive pin on the other device.

    in reply to: Automatically restart countdown #2099
    Michael
    Keymaster

    No, you don’t want to call countdown() from within countdown()! That would be a recursive call.

    In loop(), you want to just repeatedly call countdown. Replace the call to countdown() with:

    while (!isDefused) {
    countdownSeconds = defaultCountdownSeconds();
    displayCountdown = true;
    displayZeros = false;
    countdown();
    }
    in reply to: Shadow pixels. #2097
    Michael
    Keymaster

    I have not seen that effect before. Have you tried more than one video source?
    Keep in mind that the Video Experimenter is the most primitive of video hardware.

    in reply to: Does capture simple give 0 or 1 on over/under threshold? #2095
    Michael
    Keymaster

    The Video Experimenter is only capabile of monochrome. If I could have done grayscale or color, I certainly would have!

    in reply to: Convert Version 1 to Version 2 #2091
    Michael
    Keymaster

    The trigger is connected to the A0 (analog pin 0) pin. This is ping 23 on the ATmega328 chip.

    The new diode is simply to protect against someone connecting power with the wrong polarity. You don’t need it for V2 functionality.

    in reply to: Can the capture data be address with code? #2092
    Michael
    Keymaster

    Yes, the purpose of tv.capture() is to capture the pixels in memory. You can then access the values of the bitmap with

    tv.get_pixel(x,y);

    You will not be able to capture 2 frames and compare them — there is only enough memory for one frame. An Arduino has very little memory!

    in reply to: Information about stored data #2090
    Michael
    Keymaster

    Your code has problems. Are you sampling 8 bit data or 12 bit data? You are reading a 12 bit value from the ADC with readADC() which returns an unsigned int, but you are storing it in a variable that is a byte. This is wrong. Your variables writebuffer and signal should be unsigned int, not byte.

    Are you sure you want to pack 2 12-bit values into 3 bytes for storage? Will your neural network software “unpack” these values? Can you change to use 8-bit audio instead because that might be simpler?

    PLEASE read the API documentation here https://nootropicdesign.com/audiohacker/
    It tells you exactly how to use the ADC, DAC, and SRAM memory.

    in reply to: Build a Push-to-Talk intercom with 2 Audio Hacker and Arduin #2089
    Michael
    Keymaster

    I think that transmitting recorded audio could be done if the sample rate is very low, and it cannot be done in while audio sampling is happening, only afterwards. So, NO REALTIME is possible. The microcontroller is simply not that fast! 2KHz will be nearly unintelligible, though. But this is what I would call an advanced Arduino project, not something that a beginner will do. Also, that radio shield WILL NOT work on the same arduino that has an Audio Hacker attached. There are pin conflicts. Generally, you cannot stack shields on the same Arduino and expect them to work. Sorry, but I think you are trying to do far more than a simple Arduino can do.

    in reply to: VE Shield Header Placement #2088
    Michael
    Keymaster

    You can’t make the overlay black, sorry.

    in reply to: Build a Push-to-Talk intercom with 2 Audio Hacker and Arduin #2084
    Michael
    Keymaster

    You would need to use serial connection to transmit the data. That won’t work over long distances. Do you want this to work in realtime? There’s no way you will be able to write the audio sample data in realtime. Think about how much data that is. Even at a low sample rate like 16KHz, that’s 16000 integers per second. That’s 256,000 bits per second. How will to do that over a radio? What kind of radio? You can’t even do it over a wire, let alone a radio.

    Or do you want to store a sample and then slowly transmit it to the other Arduino over serial?

    Detecting a button push would mean writing some special command over serial, or running wires from the receiver arduino to the sender side.

    in reply to: Information about stored data #2083
    Michael
    Keymaster

    No, it’s not correct. The first argument for readSRAMPacked is the chip number, and valid values are 0 and 1. You are using values 0, 1, 2.

    See the docs here:
    https://nootropicdesign.com/audiohacker/

    Are you sure you want to print out hundreds of thousands of lines of data?

    in reply to: Build a Push-to-Talk intercom with 2 Audio Hacker and Arduin #2079
    Michael
    Keymaster

    To build an intercom, why would you go to all the trouble of digitizing the audio? Why not just use the analog signal? I must be missing something.

    in reply to: Information about stored data #2078
    Michael
    Keymaster

    Audio is digitized by sampling a voltage that changes over time. I think you should study up on fundamentals of digitization of analog data. When a varying voltage is given to a speaker, it makes sound.

    in reply to: Square wave for the buzzer change? #2077
    Michael
    Keymaster

    Ok that’s a good solution too.

    in reply to: SpaceInvaders #2073
    Michael
    Keymaster

    I am using Arduino 1.0.5 and have no problem compiling this, so I can’t explain why it does not compile for you.

    Try changing the declaration of strings to:

    const char *strings[] = {s0, s1, s2, s3, s4, s5, s6, s7, s8};
Viewing 15 posts - 376 through 390 (of 1,008 total)