Be a part of the RDK 2025 Hackathon by submitting your feature, innovation, solution, or concept for the RDK code.
$2,500 prize for the winning team
The winning team will present their work in a webinar or recorded video prior to the end of 2025.
Registration opens December 4, 2024.
Deadline for submitting final projects is March 14, 2025.
Team registration
Dec. 4 – Jan. 17
Hackathon period
Feb. 3 – March 14
Final judging
March 31 – April 4
Winner announced
April 7
Team registration
Hackathon period
Final judging
Winner announced
Dec. 4 – Jan. 17
Feb. 3 – March 14
March 31 – April 4
April 7
Rules
- Teams may be formed by any RDK licensee.
- Create your own team of one to five members.
- All entries submitted become the property of RDK.
- Entries may be added to the RDK open source code.
- Entries must be free of any third-party licensing conflicts.
Schedule
- December 4 — Registration opens
- December 4 ‒ January 17 — Teams submit original concepts
- January 20‒24 — RDK reviews concepts
- February 3 — Hackathon begins
- March 14 — Deadline to submit finished projects
- March 17‒28 — Initial judging
- March 31 ‒ April 4 — Final judging
- April 7 — Winner announced
Concepts
You may choose from one of the following approved concepts or submit a new concept of your own. New concepts will be reviewed for approval by RDKM.
Concept 1: Seamless playback of two audio-video streams with independent control over the audio output
Concept 1: Seamless playback of two audio-video streams with independent control over the audio output
- Implement playback of two independent audio-video streams using two separate GStreamer pipelines
- Allow the user to switch between the two streams. The audio of the selected stream should be played back while the audio from the other stream remains muted
- The audio switch should occur seamlessly without refreshing or flushing the GStreamer pipeline
- While switching between the two streams, the primary stream window should be enlarged, and the secondary stream window should be reduced in size
Platforms suggested:
RPI4 or any video accelerator device with RDK 6.1 release
Use Case:
The user should be able to listen to audio of any streams playing in the multi-view playback
Concept 2: Improve RDK performance
Concept 2: Improve RDK performance
- Improve functionality in these RDK components by at least 10%:
- video/audio playback
- Bluetooth connectivity
- channel/video switch time
- system bootup time, etc.
- The demonstration should include detailed performance logs and analysis
Platform suggested:
RPI4 or any video accelerator device with RDK 6.1 release
Use Case:
Overall performance improvement in RDK
Concept 3: Tool for GStreamer pipeline observability
Concept 3: Tool for GStreamer pipeline observability
An RDK tool to enhance GStreamer pipeline observability for large-scale deployments. The features can include:
- Centralized logging system
- Real-time pipeline visualization
- Performance metrics dashboard
Platforms suggested:
RPI4 or any video accelerator device with RDK 6.1 release
Use Case:
To debug issues in the GStreamer pipeline
Concept 4: Private listening feature
Concept 4: Private listening feature
Allow for private listening of audio through headphones connected to a mobile device or remote control
Platforms suggested:
RPI4 or any video accelerator device with RDK 6.1 release
Use Case:
Allow the user to experience quiet listening while watching content
Concept 5: Binary compatible Native Application (in DAC)
Concept 5: Binary compatible Native Application (in DAC)
Write a Native application in binary compatible Downloadable Application Container, test and upload as DAC application to RDK DAC cloud for Video Accelerators
- Wiki links for the instruction: https://wiki.rdkcentral.com/display/RDK/HOWTO+build+App+with+DAC+SDK%2C+cloudpublish+and+run+on+VA https://wiki.rdkcentral.com/display/RDK/DAC+-+Downloadable+Application+Containers
- You may choose the content of your application and the graphics framework to use in your application (ex: QT, React native, Flutter, opengles2 directly)
- Extra points will be awarded if you integrate audio video playback in your application via Rialto
Platforms suggested:
RPI4 or any video accelerator device with RDK 6.1 release
Use Case:
Application to run in Downloadable Application Container
Concept 6: Porting of RDK-B to a new target
Concept 6: Porting of RDK-B to a new target
Port RDK-B on RISC-V based reference board
(Or)
Port RDK-B on AMD or any SoC (other than Mediatek/ Broadcom/ Maxlinear/ Airoha) reference device
(Or)
Deprecate raspberrypi specific /filogic specific SoC layer (remove SoC dependency), and bringup RDK-B on Raspberrypi4/BPIR4 with meta-arm
- RDK-B stack should be up and running in the device with minimal services required for WAN bring up
- Device should get WAN connectivity and launch web UI and connect to Wi-Fi
- Erouter0 should get ipv4 address
- Wi-Fi radio should be up and running
- LAN and wireless clients should connect to device
- Internet connectivity should work
Use Case:
To explore the feasibility of bringing up RDK-B on new chipsets
Concept 7: Integrating LXC runtime in the DAC framework
Concept 7: Integrating LXC runtime in the DAC framework
Implement an end to end use case to demonstrate runtime bundle creation using LXC
- Implement all required backend components
- Customize existing DAC in RDK-B to support LXC and create central dashboard to display application data in cloud
- Demonstrate LXC containers in RDK-B with any one of the broadband apps (ex. tcpdump /speedtest)
- Demonstrate with the backend ecosystem to onboard app to the device
- Upload app statistic to Cloud app dashboard and perform analytics
Platforms suggested:
RPI4 with latest 2024q3 64bit release / Banana Pi R4 with PreBeta release
Use Case:
To explore the feasibility of using LXC in RDK-B app framework
Concept 8: Mobile Application for the remote management
Concept 8: Mobile Application for the remote management
Develop Android mobile app for RDK-B using Android version 13 or higher
- App should talk with RDK-B through WebPa
- App should detect all RDK-B devices in network by default
- APK needs to be delivered along with code
- Able to show all connected wired and wireless clients connected to gateway and able to change ssid/password of any Wi-Fi interface
- Basic info needs to be displayed such as Ipv4 address/ ModelName/ Manufacturer/ Software version/ wireless info/ WAN type/etc.
Platforms suggested:
RPI4 with latest 2024q3 64bit release / Banana Pi R4 with PreBeta release
Use Case:
To explore advanced broadband use cases using a mobile app for RDK-B
Concept 9: Easy Connect application
Concept 9: Easy Connect application
- Bringup RDK-B with Onewifi and enable Easy Connect functionality
- Add the required missing code to bring up the use case
- Develop Mobile App/Webinterface which will interact with AP or AP accessed through inbuilt app in CPE
- Onboard AP with QR code of device
- Onboard Client with QR code of device
Platforms suggested:
RPI4 with latest 2024q3 64bit release / Banana Pi R4 with PreBeta release
Use Case:
This will explore the feasibility of generic Easy Connect implementation
Concept 10: Wi-Fi sensing application
Concept 10: WiFi sensing application
Bringup RDK-B with Onewifi
- Integrate any opensource Wi-Fi sensing App/Tools (ex: wireshark/ airodump-ng/ Any CSI tools, etc.)
- Implement a simple mobile app and track the data
- Display motion detection status and notification based on event
- Select up to 2 (max) client devices to be notified
Platforms suggested:
RPI4 with latest 2024q3 64bit release / Banana Pi R4 with PreBeta release
Use Case:
To explore Open Source Wi-Fi sensing solutions
Concept 11: Integrating NFTable
Concept 11: Integrating NFTable
Create a solution to replace the current iptables-based firewall in RDK with either nftables or eBPF. The goal is to enhance the following aspects and demonstrate:
- Improved performance with faster rule processing
- Simplified syntax and atomic rule updates
- Enhanced scalability and efficiency
- More flexible and dynamic rule creation
- Better debugging with built-in tracing features
Platforms suggested:
RPI4 with latest 2024q3 64bit release / Banana Pi R4 with PreBeta release
Use Case:
Security management improvements in RDK-B
Team registration
Judging criteria
- All projects will be reviewed by an internal RDKM team which will select three finalists.
- Three finalists will present to a panel of judges for final judging and selection of one winner.
Judging rubric
Clarity of stated goal — up to 5 points
Extent to which stated concept is achieved — up to 10 points
Quality of final code submitted — up to 20 points
Performance of product or feature — up to 20 points
Quality of supporting documentation — up to 10 points
Quality of final presentation — up to 5 points
Complexity of design — up to 5 points
Total maximum points: 75
Final judges
BART CATRYSSE
Lead Architect STB Software
Liberty Global
MICHAEL FIESS
Distinguished Engineer
Comcast
RUSSELL LEAKE
Executive Director Architecture
Comcast
SOUMYA MUNSHI
Director, Software Dev & Engineering
Comcast
KHEM RAJ
Fellow
Comcast
SHASHANK NANJUNDASWAMY
Head of RDK-B Software Engineering
Sky