I spent today testing my work on Atlys and Opsis boards and continued work on the FIFO firmware. I tested the basic audio firmware on the Opsis and Atlys boards. This is the firmware that generates a standard tone from the FX2 chip. It worked without issue on the Atlys. I need to do some work to get it working on the Opsis.
- 1d36ced - audio: Set correct pin mode for slave FIFO
Next I need to program the output version of the firmware to write the FIFO out, emulating a FPGA as the master FIFO device and get the current audio firmware working on the Opsis.
Today I fixed conflicts between the audio data PR and the version-embed code that was merged yesterday. I need to chat to mithro about the FIFO setup, as I have started working on that, but I have run into a wall. As far as I know I have configured everything correctly, but it seems not to be working.
- 21340a7 - audio: Fix merge conflicts
- Other minor tweaks to past commits during the rebase.
If I don't manage to chat to mithro, tomorrow I plan on working on the validation scripts so that we can use them to check that the compiled firmware is sane and spend some more time debugging the FIFO stuff.
This week has not been very productive as I have been frantically trying to secure my visa for Canada so that I can go to DebConf 17. After much stress I got my visa back from the High Commission 5 hours before I flew! Despite this chaos I did get a chance to work on some things relating to the HDMI2USB FX2 firmware. I set up documentation generation using Travis CI, got Travis to build all firmware in the repo and added comments to the audio firmware.
The documentation generation is very useful as it allows the project to point developers to a constantly up-to-date source of documentation, namely the github.io page. Travis builds the documentation from the Doxygen comments in the source code and presents it as a nicely formatted web-page for easy access. This is why I added the comments to the audio firmware in this format.
In this process, I also added Make targets to build the other firmware from the top-level of the repository and set Travis to do so. This helps with pull requests and code review as it means the maintainers can trust that if Travis is reporting a successful build then the entire repo is building successfully.
Finally, I have started working on getting the FX2 development board to present itself as a USB audio output device. This firmware will help me set the FIFO buffers up on the input firmware without having to have a FPGA attached to the FIFO and programmed to send data to it. In the end, this will result in using two FX2 dev boards to test USB audio capture. One FX2 will be the source from the computer and this will be wired to the other, which will be the input to the computer, essentially creating a loopback device.
This week I am at DebCamp, which is a week of sprints and hacking before DebConf starts and I intend on using this time to continue working on the FIFO based communication and to take advantage of the Opsis boards the DebConf video team has to test current features I have developed and new features that I will work on during and after DebConf.
Today I got some work in on the FIFO buffer side of things and fixed PRs
- 0e03bc8 - Fixed detatched head when running on Travis
- 6e53821 - audio: Slave FIFO pin setup
Tomorrow I plan on continuing to work on the FIFO firmware
This is a combined update, as it covers everything I have done while travelling from Cape Town to Montreal for DebConf 17.
audio-out - 2 FX2 board firmware version
- a66b76d - audio: Add output audio firmware
- c02e24a - audio: Use a common base for audio firmware
- 1b10390 - audio: Add initial FIFO slave firmware
- 4cf685f - Use git hash as version number. Fixes #30
NOTE: This is currently failing to build the audio firmware. I plan on fixing it tomorrow. Tomorrow I also hope to finalise what it is that I want to get done during DebCamp (this week).
This week has been hell, as I have been trying frantically to secure my Canadian visa so that I may go to DebConf 17 in Montreal. Thankfully I managed this yesterday and so had an opportunity to do some GSoC work today.
- bd70da2 - audio: Use type checking for ISO configuration
- 678c2d4 - audio: Add doxygen comments
- b716c87 - Add missing rules for other firmware
- 91f0994 - Build all firmware on travis
- 33d8048 - Fix microload target names
- 36a4d8d - Add travis document generation
I am not sure how much I will be able to do in the coming days as I will be packing and traveling, but I hope to work on the two FX2 setup for audio sending and recieving while I am flying to Canada