Skip to content
Sean Ditny edited this page Sep 20, 2024 · 24 revisions

Welcome to the Deluge Community Firmware wiki!

User Documentation

How-To Guides

Sound Architecture

Synth and Sample Performance

SD Cards

MPE Setup

Contributor Documentation

Your Role!

Updating Firmware

Download Community Firmware

Navigating GitHub

Contributing

Open Source FAQ

Your Role!

The best way to start understanding all things open source is to first identify what role you may play in the community.

Even if you are not a coder you can play a key role in the Deluge’s Open Source development. Read the following types of roles and see which ones sound most like you!

Spectator

You simply want to stay updated with what big development and features are happening. You’d rather avoid testing unstable firmware, navigating confusing websites, and dealing with file formats you don’t recognize. You’ll continue to use your Deluge with the official and stable firmware while keeping an eye open for new development and future updates.

Tester

You eagerly load community firmware with newly implemented features to stress test them in order to discover bugs, crashes, and incompatibilities. You actively document issues and detail how to reproduce them. Why? So these issues can be addressed and stable features can become a reality as fast as possible!

Explorer

You want to set out and discover the creative limits new features can unlock. You’ll experience new features by experimenting and incorporating them with your musical workflow. Whether you share your results or not, your real-world experience with these features may prompt you to share feedback on improvements that could be made to these new features. You may even go so far as to create videos showcasing your approach for others to see, discuss, and regale!

Adopter

You want to use the latest and greatest features for your Deluge and don’t want to look back. You already loaded the newest firmware and overwrote all your previous songs to incorporate the brand spanking new [Insert New Feature Here]! Sure, your songs won’t load properly on older firmware and some minor bugs may still be getting ironed out but that's the price you’re willing to pay to stay up to date with new features you now can’t imagine living without!

Coder

You hold the hypothetical keys to the hypothetical Deluge castles that exist in everyone's minds. Whether you may be a novice coder or a seasoned veteran, you know that you want to make a lasting impact on how the Deluge functions. This could entail behind the scenes optimizations, making your most desired feature a reality, fulfilling the most popular feature request, or just perusing the codebase until inspiration strikes.

Helper

You have a desire to support the Open Source effort. You may not be a coder but you recognize that you’re still a useful extra pair of hands. There’s certainly help to be had whether you are a graphic designer, a spreadsheet wizard, multilingual, a great notetaker, or simply willing to tackle tasks you might be a good fit for.

Updating Firmware

The update guide can be found on a separate wiki page. Please make sure to also read the Before You Start section there, especially if you have an older Deluge (with a numeric 7-segment display), or an OLED Deluge without a logo animation on startup.

Navigating GitHub

It is totally understandable to not know your way around GitHub, it’s not particularly intuitive! This guide should help illuminate the things you should concern with as someone that might want to be more involved in open source related activities.

First, let's start at the landing page: https://github.com/SynthstromAudible/DelugeFirmware. You won’t be able to download specific firmware, report issues, and participate in discussions on GitHub without making an account and being signed in. I would recommend creating one, the red arrow in the following screenshot points to where you can make an account on GitHub.

image

Back to the main page. This is the GitHub repository. A repository contains all of the project's files and each file's revision history.

image

Specifically, we are currently in the ‘Code’ section of the repository, as marked by the yellow box. The horizontal area where the yellow box is placed is the navigation bar where you will find other sections we will cover next. The area marked in red contains all the contents of the Deluge Community Firmware code.

If you scroll all the way down on this page (as marked by the green arrow) you will be able to read a great introduction to navigating the GitHub repository. Don’t forget to read through this section if you are ever looking for relevant and helping links regarding everything open source related.

Now, let’s check out another section of the repository: Issues, where bug reports are made and listed.

image

Note we are in the ‘Issues’ section, marked in yellow. The purple box contains all the current issues that have been reported. Note that right above the purple box on the left we are viewing the currently ‘Open’ issues by default, meaning they haven’t been resolved yet. You can alternatively click the ‘Closed’ text to view resolved issues if desired.

If you’d like to participate and report an issue, hit the ‘New Issue’ button that the red arrow points to. Let’s take a look at how to do so!

image

We are met with a couple options. If you actually have feedback or want to discuss features, you can alternatively view the ‘Github Discussions’ or join the Discord Community. If you’re in the right place and want to report a problem hit the ‘Get started’ button the red arrow points to.

image

You will see that an Issue Template appears which details how you will report the problem. Note that not every field is required, but make sure to be as clear as possible. Thanks for helping out!

Next, let’s check out the Discussions section.

image

Like the official forums, this is a place where users can discuss, give feedback on new features, discuss or expand on possibilities with new features. The area marked in blue is where current discussions exist. To make a new discussion, see if your topic already exists by scrolling through the topics or by typing in the search bar just above the blue box. If you’re in the clear, hit the ‘New discussion’ button that the red arrow points to.

Next, let's check out the ‘Wiki’ section.

image

Here, where I’ve marked with the green box, lives a variety of documentation and info that will most likely be most relevant to current and potential developers.

Next, we’ll check out the ‘Actions’ section. It’s a place you can look for more recent or specific versions of firmware, even ones that aren’t available for the Community release.

image

You can see the type of Action by looking at the second line of each entry. I’ve marked entries that have firmware builds that you can download in pink. Note that these builds may be builds from other developers that haven’t yet officially merged into the Community Firmware yet. You can see what ‘fork’ the action is from by looking where the red arrow is pointing. (A fork is a clone of the Community Firmware that has its own independent changes.) Also, you can filter the results of Actions listed by selecting another option in the area marked in green.

Let’s click the first entry and demonstrate how you can download the firmware file that the action generated.

image

You’ll generally see a brief description of what is fixed or added to this firmware in the title of the action. Now if we look at the bottom, there is a list of files in the area marked orange that the action generated. If you are signed in, you can click and download any of these files, generally you will just be downloading the ‘release.bin’ file. This .bin file is firmware you can add to your SD card in order to update your Deluge with. If you are helping developers test a specific firmware file, this may be where they direct you to download their version.

Hopefully this has given you a decent overview to approach the Github repository.

Contributing

To contribute to the project with code, bug reports, suggestions, and feedback see: How to contribute to Deluge Firmware

There are many different ways to contribute outside of that! Discuss in the Discord, GitHub, or forums to see what else could use extra hands.

Open Source FAQ

What happens to Community Firmware when a new Official Firmware is released?

The idea is to update the Community Firmware with any improvements the Official Firmware receives. Since some structural changes have been made with the Community Firmware, it may take a little more time to port these changes over, but it shouldn't be a huge problem.

Will I be able to play projects I made in Community Firmware if I revert back to the last Official Firmware?

Yes, you can play old songs from Community Firmware with the latest Official Firmware, however any Community Firmware feature that was used will not be present. If you save this file while using Official Firmware, all the new features used will be forgotten when you load it on a Deluge that has the Community Firmware.

Will old songs or presets sound different when using the Community Firmware?

No. The idea is that everything should sound the same and if it isn't, then some sort of bug is occurring.

Can I brick my Deluge by updating firmware?

As described in 'Before You Start', you can potentially mess your Deluge up if you load a firmware file that is either 0bytes small or over 3.5MB big. Please refer to Rohan's Bootloader precautions for "numeric" Deluge developers to get the necessary details and steps to resolve this.

Technically, there isn't a way to 'brick' the Deluge, there shouldn't be any risk with permanently damaging your Deluge by trying Community Firmware as long as you've made the right precautions with the bootloader.