if (TARGET usb_device)
    PROJECT(pico_1bit_dac)

    add_executable(pico_1bit_dac
        pico_1bit_dac.c
        pdm_output.c
        simple_queue.c
        )

    pico_generate_pio_header(pico_1bit_dac ${CMAKE_CURRENT_LIST_DIR}/pdm_output.pio)

    # target_sources(usb_sound_card PRIVATE parallel_to_serial.c)


    target_compile_definitions(pico_1bit_dac PRIVATE
            AUDIO_FREQ_MAX=48000

            # ours are zero based, so say so
            PICO_USBDEV_USE_ZERO_BASED_INTERFACES=1

            # need large descriptor
            PICO_USBDEV_MAX_DESCRIPTOR_SIZE=256


            PICO_USBDEV_ISOCHRONOUS_BUFFER_STRIDE_TYPE=1
            PICO_USBDEV_ENABLE_DEBUG_TRACE

            PICO_AUDIO_I2S_MONO_OUTPUT=0
            PICO_AUDIO_I2S_MONO_INPUT=0
    )

    target_link_libraries(
            pico_1bit_dac
            pico_stdlib
            usb_device
            pico_audio_i2s
            pico_multicore
            hardware_interp
            hardware_pio)
            
    pico_add_extra_outputs(pico_1bit_dac)
endif()
