Close
0%
0%

Wee Noise Makers PGB-1

Open source pocket groovebox

Similar projects worth following
PGB-1 is an advanced yet portable synthesizer and sequencer that allows you to craft complex musical pieces anywhere. This all-in-one, open-source, customizable device is designed to empower aspiring musicians, seasoned creators, and makers. It isn’t just an instrument—it’s your gateway to the world of music production and audio synths.

We are crowdfunding now on Crowd Supply:
https://www.crowdsupply.com/wee-noise-makers/wee-noise-makers-pgb-1

Our Story

PGB-1 is our response to the current landscape of entry-level hardware synthesizers and groove boxes. In recent years, we saw a plethora of new electronic instruments marketed as accessible, affordable, and designed for beginners. Yet, often these instruments can feel limited, tying users to a specific sound or ecosystem. These limits sometimes feel artificial, pushing you to combine multiple products of the same line to actually make meaningful music. At the same time leading to frustrating sequencing, connection, and mixing issues that defeat the portability and playfulness of the instruments.

With the PGB-1, we want to address all these shortcomings, bringing you an instrument that is:

  • All-in-one: you only need one device to craft complete music pieces
  • Powerful: Drums, bass, lead, samples, etc. with advanced sequencing features
  • Truly pocket-size: 10 x 6.6 x 1.5 cm, smaller footprint than a smartphone
  • Hackable: Designed for customization, open-source firmware, and compatible with several programming languages (including Python)

We believe creativity should not be limited by the tools you have, but empowered by them. With the PGB-1, we are dedicated to creating a platform that encourages innovation and experimentation. Whether you are a musician looking to explore new sounds, a developer eager to create unique software, or a hobbyist who enjoys tweaking and building.

Hacking and Customization

PGB-1 is designed to be customized and modified to your taste. The front panel is a bare PCB, designed with the open-source software Kicad. The production file will be available so that anyone can make its own version with custom graphics and get it manufactured for a few bucks.

PGB-1 is also hackable with CircuitPython, C\C++, and Ada support for programming your own synthesizers, video games, or any audio-based projects.

  • 1 × STM32F437VIT6 ARM Cortex-M4F micro-controller
  • 1 × SGTL5000 I2S Audio CODEC
  • 1 × 96x16 OLED screen (SSD1306)
  • 2 × EC12D rotarty encoders
  • 1 × Micro SD card slot

View all 10 components

  • C/C++ SDK for the PGB-1

    Fabien-Chouteau05/12/2024 at 05:06 0 comments

    We are happy to announce the first version of the C/C++ software development kit for the PGB-1.

    You can can find the GitHub repository here and the online documentation here.

    The SDK provides easy access to the hardware features of the PGB-1 such as the LEDs, keyboard, OLED screen, MIDI input and, of course, the audio input and output. We also include in the SDK an example project which is based on the C++ source code of the Braids Eurorack module from Mutable Instrument.

    We’ve also prepared a quick video with an overview of the SDK and a demo of the Braids example project:

  • PGB-1 track settings

    Fabien-Chouteau05/06/2024 at 07:39 0 comments

  • Introduction to sequencing on the PGB-1

    Fabien-Chouteau05/06/2024 at 07:38 0 comments

  • A long-overdue update

    Fabien-Chouteau04/29/2024 at 06:01 0 comments

    Hello hackaday.io, it's been a long time since I posted an update on this page.

    The project evolved quite a lot, it is now a complete groovebox with 6 real-time digital synthesis tracks and two sample tracks. This means you can create complete music pieces on the PGB-1. I also changed hardware a few times, settling on the RP2040 for processing unit. With its two cores it's quite a powerful machine when used at its fullest.

    Last but not least, I started a crowdfunding campaign on Crowd Supply for the PGB-1: https://www.crowdsupply.com/wee-noise-makers/wee-noise-makers-pgb-1

  • Focusing on sample sequencing

    Fabien-Chouteau09/24/2017 at 21:28 2 comments

    When I started this project, my main idea was to do a music synthesizer, i.e. algorithms that create sounds out of thin air (or from sin tables actually). I added an SD card to the design to also be able to play pre-recorded sounds (samples). But at the time I was considering this as a bonus feature and I didn’t know how well the hardware would allow me to play those samples (how many in parallel for example).

    As I started to implement the sampling feature in the software, I realized that it was actually possible to read 10 samples in parallel from the SD card (thanks to STM32F4’s 4-bit mode SDIO support and DMA). At this time I also talk about Wee Noise Maker with my friend Raphael, he told me that a sampling is really a fun way to make music. He was right:

    From this point I decided to focus the software development on the sampling and sequencing features.

  • From the first board to Wee Noise Maker Mk-I rev-C

    Fabien-Chouteau07/02/2017 at 13:05 0 comments

    Wee Noise Maker Discovery rev-A

    As I said in the first post, I rushed to produce a first PCB to try my new idea as fast as possible. The first board was just a matrix of buttons and LED, it worked OK and gave me the motivation to continue this project.

    Wee Noise Maker Mk-I rev-A

    For the second board - named Wee Noise Make Mk-I - I decided to make a stand alone project with the MCU, audio codec, OLED screen, power supply, battery charging, SD card, etc..

    When the Mk-I rev-A PCB arrived from SeeedStudio, the first thing I noticed is that I completely screwed up two footprints, the encoders and the voltage regulator… To be honest this is really unacceptable. I should always print the PCB to scale on a piece of paper and check the footprints before sending the design for production. The encoders I could still plug them in by bending the pins but the voltage regulator was completely off (TSOP vs HTSOP).

    Anyway, I started by soldering my first LQFP-100 package the STM32F4 - it is not as bad

    as it seems - and all the passives around it, then I tried to program and run it. It worked! That was great. The battery charging and OLED screen were also working as expected.

    The last main component to solder was the SGTL5000 audio DAC, a QFN package. I watched a few tutorial to learn how to solder this kind of package but it seemed difficult so I wasn’t very confident.

    Once it was soldered, I tried to make the MCU talk with the DAC over I2C but got no answer. At some point I realized that my circuit was really bad. A dumb error again, this time with decoupling capacitors… This was the second major failure on this board, time to make a new revision.

    Wee Noise Maker Mk-I rev-B

    For rev-B I got all the footprints right \o/ But the DAC was still silent :(

    After a few hours debugging, inspecting the schematic and reading the documentation, I realized that one of the three power supply pins has to be at 1.8V (vs 3.3V for the others), it meant I had to add an extra voltage regulator. Let’s go for rev-C...

    Wee Noise Maker Mk-I rev-C

    I received the rev-C board early June and soldered all the components right away. Once again everything was working except the audio DAC. The chip wasn’t responding to I2C messages.

    This time the error was not really in the hardware design. I found in the documentation that the SGTL5000 needs an external clock to start working. This external clock is actually the master clock (MCLK) of the I2S protocol, so I have to send I2S data before being able to talk with the DAC. Once I figured this, it took no time to have Wee Noise Maker produce its first sounds!

    Now that I can play sound, there’s still two features I need to check: sound input and SD card. Once I validate the hardware for those to I will start to focus on the software.

  • Standalone board?

    Fabien-Chouteau05/10/2017 at 19:21 0 comments

    For the second version of the board, my first intent was to do another STM32F4 DISCO daughter board. But then I thought, why not design a standalone board?

    Routing and soldering a LQFN100 package seems quite a challenge for me because I never designed such a complex board and I basically didn’t have any experience with surface mount components. There’s also a lot more components: power supply, audio DAC, decoupling, oscillator, etc.

    But who doesn't like a good challenge? So I decided to do the standalone board and I also to add a battery charging circuit, an SD card and a small OLED screen for good measure :)

    For the audio DAC, I tried to find a component with a friendly package that doesn’t require hot air soldering (like TSOP, LQFN). I found a couple of those but they don’t have headphone amplifier or input ADC so In the end I went for the SGTL5000 (QFN16), also because it’s used on the Teensy audio board so I have a reference design to start from.

  • Switching to Kicad

    Fabien-Chouteau01/30/2017 at 23:50 0 comments

    I designed 4 PCBs before this project, two iterations of a guitar amplifier and two ATtiny boards for PCB design introduction lessons and also a demo at work.

    Those 4 boards I designed with Eagle CAD. Why? I’m not even sure. It was free (as in beer), available on my platform (Linux) and there was a lot of tutorials and other resources on the web.

    For this project I switched to Kicad. Thanks to Chris Gammell’s “Getting to blinky 4.0” video series, I was able - in a couple hours - to do as much with Kicad as I was able to do with Eagle.

    Before switching to Kicad, my main concern was the lack of autorouter, but I quickly realized that up to a certain complexity there’s no way around manual routing. The most difficult part of board layout is to find the right place and orientation for the components, Eagle’s autorouter is not doing that for you. Also the push-and-shove routing feature of Kicad really helps.

    To this day, my only problem with Kicad is the workflow produced by the disconnect between the schematics and the PCB layout. I think I understand the rationale behind it and It’s actually very nice to be able to put a resistor in the schematic without having to make a decision on the package right away. But in my own experience, designing a board is an iterative process. I go back and forth between the PCB and the schematic usually to change net names or connect a button to that MCU pin rather and this one. Having to click 4 or 5 times just to do that is really not practical. I heard this will change in version 5, let’s see.

    Big bonus: 3D render out of the box!

  • Quick! Make a PCB!

    Fabien-Chouteau01/22/2017 at 16:53 0 comments

    A few weeks ago I brought a fantastic piece of electronic, the Pocket Operator Arcade (PO-20) from Teenage Engineering. It’s a software synthesizer on small PCB with a grid of push buttons and LEDs, two potentiometers and a custom LCD screen like you would find on a Game & Watch.

    Here’s a short video that demonstrates the features of the PO-20: httpps://www.youtube.com/watch?v=W5PvXQq3DVQ

    After playing a little bit with it, I had a feeling you may know if you are reading this: I want to make my own!

    When I start a project like this one, I jump right in and design a first PCB very quickly while I’m still in the excitement of this brand new idea. The PCB is of course not very good (two bodge wires this time) but now I can’t go back :)

    The first board was designed as daughter board for the STM32F4 DISCO. It has a powerful microcontroller (Cortex-M4F ~160 Mhz) and an audio DAC with headphone output, so the “only” thing left to do is the user interface (buttons and LEDs).

    With this board I was able to start working on the software, play with multiplexed LED and buttons, start a first version of the state machine and get some sounds out.

    But it’s time for the second design. I’m a software engineer so the electronic part of this project is the most challenging and interesting for me.

View all 9 project logs

Enjoy this project?

Share

Discussions

SoLongSidekick wrote 05/03/2024 at 13:03 point

Where are the PCB files located?

EDIT - I'd love to back the project, I've backed over 100 Kickstarter small hardware projects under this username. But I was hospitalized for 2 months and am working on learning how to walk again and get my strength back and am on disability but this thing looks perfect to help with the mind numbing boredom so I'd like to try to make my own.

  Are you sure? yes | no

Arya wrote 05/05/2017 at 03:25 point

Hi! Any progress? Beautiful boards, would be very interested to see your take on software for this =)

  Are you sure? yes | no

Ray wrote 05/05/2017 at 13:09 point

Yeah!

  Are you sure? yes | no

Fabien-Chouteau wrote 05/07/2017 at 19:29 point

Thanks for the comment! The last board I got made (Rev-B) is working at great except for the audio DAC. Which is a shame for a device that is supposed to make music... I found the problem (or one of the problems) so I will make the next revision soon.

On the software side, I think there will be two main parts. The UI/keyboard/sequencer on one side and the audio synthesis on the other side. I plan to have those two parts communicate with MIDI messages so we can maybe plug a MIDI keyboard to play on Wee Noise Maker. The synthesis is probably be based on a project from my friend Raphael: https://github.com/raph-amiard/ada-synth-lib

I have a few project updates in the pipe. I will try to publish more regularly.

  Are you sure? yes | no

Mynasru wrote 03/05/2018 at 15:35 point

Are you planning on selling this board ?

  Are you sure? yes | no

Fabien-Chouteau wrote 03/05/2018 at 20:40 point

replying to @Mynasru:

I'd love to but both the hardware and the software need to be more stable than they are now.

Also I'm giving myself some time to think about this project, playing on other stuff in the meantime :)  https://hackaday.io/project/47760-microgamer/discussion-102042

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates