To apply for this task please complete this mandatory coding challenge together with your application: T1162
Applications without matching coding challenge completed will not be considered.
Read our Google Summer of Code Overview page:
This a is a collection of small tasks that can be worked on in the course of a GSoC project. The scope is working on the AXIOM Remote hardware (https://wiki.apertus.org/index.php/AXIOM_Remote) which has a hardware prototype finished based on a PIC32 CPU and 320x240 pixel LCD. The software runs "bare metal" and there is no graphics acceleration meaning each pixel is drawn "manually" in the software.
The current AXIOM Remote software code can be found here: https://github.com/apertus-open-source-cinema/AXIOM-Remote/tree/dev/Firmware
Videos of the previous software and hardware are here: https://lab.apertus.org/T1116
- Low Voltage Programming (LVP) of PIC16s
- Self-programming of PIC32
- preset storing (save all current camera/config parameters/states into external flash storage) also the loading routines for presets to do the reverse thing
- shutdown routines (save preset then display power off sequence, then turn off all components)
- investigate power saving modes (put the PIC32 into a sleep mode and turn off the display)
- LCD dimming through PWM control of the LCD LEDs.
- Implement host software to flash PIC16 and PIC32 firmware from PC through USB
- embedded systems basics (we use a Microchip PIC32MZ CPU) - Full Manual: https://www.alliedelec.com/m/d/1e5e0c2adda09fc1913391ccd4594515.pdf
- C / C++
- GCC linker scripts
**Mentors:** Andrej, Supragya (?)
To get in touch with any mentor check the [[ https://www.apertus.org/GSoC-2019-Mentor-Contact-List | Mentor Contact List]].
**Note: ** As this task requires certain hardware we provide remote access for testing and/or hardware emulation (https://github.com/apertus-open-source-cinema/AXIOM-Remote/tree/master/axiom_remote_visualizer).