Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Send Digitized Audio - RFDataport #205

Open
kb1lqd opened this issue Jun 12, 2017 · 3 comments
Open

Send Digitized Audio - RFDataport #205

kb1lqd opened this issue Jun 12, 2017 · 3 comments
Assignees

Comments

@kb1lqd
Copy link
Contributor

kb1lqd commented Jun 12, 2017

Based on extension of FaradayRF/Faraday-Firmware#75

@kb1lqc @reillyeon @jbemenheiser @el-iso

I've committed a quick commit that ties stdin and stdout from the OPUS audio codec to faraday transmit. I notice the transmit is stuttering a lot and I'm not sure why. Eventually the transmissions quite and I believe a background process fails, maybe a datatype bug. All in all I do get some data over. I used proxy logging to see what gets into the proxy for transmissions as I suspect maybe we are overflowing if pushing batches too fast?

I know audio is able to encode and decode as I successfully piped it from the TX to RX program in linux.

I also know that I can get Faraday to TRANSMIT audio frames but I am not sure how many are getting through even TX due to "stuttering" I'm observing in the packet transmissions.

This commit contains the first push of a proxy log with me talking while transmitting: kb1lqd@2f42baa

This is the remaining quick code I used to achieve this: kb1lqd@8888188

Using the proxy logging functionality I see only about 101 packets which is lower than I'd expect. I need to decode these and see their counts/quality.
This is just a print of the recieved data INTO proxy: image

Also Proxy log is kinda of annoying into that this data definitely came in a lot faster but at a "rate" of 1 is plays one entry per second... this should replay much faster unless something else weird is going on.

@kb1lqd kb1lqd added this to the Alpha Software milestone Jun 12, 2017
@kb1lqd kb1lqd self-assigned this Jun 12, 2017
@kb1lqc
Copy link
Member

kb1lqc commented Jun 12, 2017

Yeah procy log was a quick fix to get 1hz data. Definitely can upgrade it to get faster rates

@kb1lqd
Copy link
Contributor Author

kb1lqd commented Jun 13, 2017

Update 6/12/2017

I committed kb1lqd@273a237

Major updates:

OPUS | tx.py | faraday_rfdataport_audio.py

The 3 program pipe above produced the following video:

https://www.youtube.com/watch?v=BikyiKCJGUg&feature=youtu.be

  • The stuttering is greatly reduced after updating the packet to BASE64 the entire packet
  • The remaining "sticato" sound is bursts of 3 packets during each packet transmission.
  • The transmissions stop after a duration of time

OPUS | faraday_rfdataport_audio.py

Removing the unneeded tx.py produced nearly identical results as the previous test.

interval_tx_test.py | faraday_rfdataport_audio.py

kb1lqd@273a237#diff-6ee102ea078213221cc22ea66c3585c2R51

This test removed the audio encoding and produced random data for the server to consume through STDOUT. This produced the same results as the above tests and would randomly stop. I changed the interval of transmissions to play with potential buffer overflowing and the server stopped even with a single transmission every 500ms.

interval_tx_test.py POST into RFdataport Server

kb1lqd@273a237#diff-6ee102ea078213221cc22ea66c3585c2R50

directly POST'ing data into the server produced the same results and the server eventually stopped.

Review

I believe we have a problem somewhere deep in proxy, UART, or the RFdataport server. All in all proxy produces little information to check for overflows or missed data. @kb1lqc I think we should sit down and make sure we look over proxy and add basic debugging tools as needed. I know from prior testing I barely touch the MSP430 packet buffers. I can check again but this doesn't explain why PROXY must be reset after the transmissions stop...

@kb1lqc
Copy link
Member

kb1lqc commented Jun 13, 2017

Sounds like a plan!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Near Term Tasks
Awaiting triage
Development

No branches or pull requests

2 participants