-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Description
I can't seem to get the TX_DONE
interrupt to fire, however the RX_DONE
interrupt works fine.
My code currently operates like so:
- Send a packet
TX_DONE
interrupt should fire, but it doesn't, I currently have to poll.- Receive a packet
RX_DONE
interrupt fires, no polling needed.- I can check the bit flags and see that both TX_DONE and RX_DONE are set, I've messed around with the IRQ bit flags but haven't had success.
I'm using RTIC and embedded-hal/atsamd-hal. The code is here
Activity
ryankurte commentedon Jun 10, 2021
I take it this is via the
DIO0
pin? To receive both it looks like you'll need to switch theDIO0
mapping inRegDioMapping1
fromRxDone
(0b00
) toTxDone
(0b01
) between operations (after enablingRxReady
and/orTxReady
IRQs inRegIrqFlags1
).(It'd be neat to have an API for this in the driver if there's a reasonable way of representing it)
(from the datasheet here
Cightline commentedon Jun 11, 2021
Very helpful response, and yeah it's
DIO0
pin, I'll try out what you wrote and bring the results back here so we can potentially figure out an API.Cightline commentedon Oct 27, 2021
Busy with IRL stuff, I recommend leaving this open but it may be months before I'm able to address it.
ryankurte commentedon Oct 29, 2021
yeah no stress, useful to leave it open for whomsoever gets to it first ^_^