Difference between revisions of "Remote Test System for AXIOM Remote"

From apertus wiki
Jump to: navigation, search
Line 1: Line 1:
== Project Summary ==
== Project Summary ==
The Axiom Remote is a remote control unit designed to compliment the AXIOM Beta range of cameras. Since there has been significant development on the Axiom Remote, it is essential to have a provision to test the Remote, remotely, and in an automated way. The aim of this project was to develop a Remote Test System to simulate button and rotary encoder action on the Axiom Remote via external hardware. The main goals of this project was :
nMigen is an HDL toolkit implemented in the Python programming language. By using nMigen instead of traditional HDLs like Verilog or VHDL, gateware can be developed in less time, with less bugs, and with extremely powerful abstractions that enable code clarity and conciseness. apertus° has already developed a prototype nMigen gateware for the AXIOM Micro camera, but wishes to extend it to support the sensor, FPGA, and HDMI interface of the AXIOM Beta. This work will develop in nMigen and demonstrate on real hardware an end-to-end imaging prototype for the AXIOM Beta: sensor control over SPI, sensor readout PHY from LVDS, pixel remapper based on existing implementation, 4K to Full HD downscaling debayerization, and final image output to HDMI.
<ul>
<li>Implement and test the HDL to simulate button presses and encoder turns via simple commands</li>
<li>Add advanced actions for testing like button bounces and encoder skipping</li>
<li>Design a test framework to run automated tests</li>
</ul>
The major objectives of the project have been met. VHDL code for the gateware and a python framework for running automated tests, have been developed over the summer.


'''Google Summer of Code 2021 project.'''
'''Google Summer of Code 2021 project.'''
Line 12: Line 6:
'''Mentored by: Herbert Poetzl  (@Bertl) and Robin Heinemann (@vup)'''
'''Mentored by: Herbert Poetzl  (@Bertl) and Robin Heinemann (@vup)'''


'''Student: Vinayak Sankar (@vnksnkr)'''
'''Student: Thomas Watson (tpw_rules)'''


----
----
Line 18: Line 12:
== Important URLs ==
== Important URLs ==


- [https://lab.apertus.org/T1233 Lab Task]
- [https://lab.apertus.org/T1220 Lab Task]


- [https://summerofcode.withgoogle.com/projects/#4874136553259008 Project Page]
- [https://summerofcode.withgoogle.com/projects/#5580186982023168 Project Page]


- [https://github.com/vnksnkr/remote-test-system Source Code]
- [https://github.com/apertus-open-source-cinema/naps Source Code (see final report for details)]


- [https://github.com/vnksnkr/remote-test-system/blob/master/GSoC2021_Final_Report.pdf Final Project Report]
- [https://docs.google.com/document/d/1g71gQQT8r-f6nF0XmiVl28IZP8FuAcJjhjtli2mXkRc/edit?usp=sharing Project Proposal]
 
- [https://docs.google.com/document/d/1VDNTkMBpdms74Q-u9cZKhZ1DZf085TxeVl3GEkLq6iA/edit?usp=sharing Final Project Report]

Revision as of 18:07, 26 August 2021

1 Project Summary

nMigen is an HDL toolkit implemented in the Python programming language. By using nMigen instead of traditional HDLs like Verilog or VHDL, gateware can be developed in less time, with less bugs, and with extremely powerful abstractions that enable code clarity and conciseness. apertus° has already developed a prototype nMigen gateware for the AXIOM Micro camera, but wishes to extend it to support the sensor, FPGA, and HDMI interface of the AXIOM Beta. This work will develop in nMigen and demonstrate on real hardware an end-to-end imaging prototype for the AXIOM Beta: sensor control over SPI, sensor readout PHY from LVDS, pixel remapper based on existing implementation, 4K to Full HD downscaling debayerization, and final image output to HDMI.

Google Summer of Code 2021 project.

Mentored by: Herbert Poetzl (@Bertl) and Robin Heinemann (@vup)

Student: Thomas Watson (tpw_rules)


2 Important URLs

- Lab Task

- Project Page

- Source Code (see final report for details)

- Project Proposal

- Final Project Report