Show HN: I made a tiny device for automatically recording digital pianos (jamcorder.com)

590 points by chipweinberger ↗ HN
Hey HN!

A few years ago, I left my cushy big tech job to make hardware.

And made the device I always wanted - an automatic piano recorder!

I usually play piano improvisationally, and manually hitting record never meshed well with that. But there are always moments I wish I recorded, and now they are!

Hopefully it scratches a similar itch for some of you as well!

A few of the tech details: * built on an esp32-s3 * custom injection molded enclosure * BLE comms, sd card storage, DS1302 RTC * android & ios apps with Flutter * Shadertoy vfx support for video sharing

- Chip

202 comments

[ 4.6 ms ] story [ 243 ms ] thread
Looks cool. Have been looking at something my keyboard that would record what i play for fun
wow this looks really cool -- I like that it doesn't lock you into a specific keyboard / manufacturer
> I usually play piano improvisationally, and manually hitting record never meshed well with that.

So relatable.

Congrats, looks like a great product. I just ordered one for my piano-player buddy for Christmas.

It's amazing how hitting the record button makes you self aware. Even if it's just yourself in the room.

It can also be a mood killer when rehearsing with a band. Everyone is messing about and having fun, then suddenly REC ON! and everyone is almost dead serious in performance mode.

Fantastic product! Just perfectly solves a real issue. Great work, I'll have to get one if any of my piano-playing family members go digital :)
(comment deleted)
Very neat, congratulations!

Is it recording 25,000 hours of actual audio which it analyzes, or is it recording midi data?

How much current it draws? My experience with esp32 is about 200-300mA.
(comment deleted)
Very cool. I recently switched from an acoustic piano to a digital one. Would love to read something about your process getting to market and building the hardware.
Great work. When sending a video to someone else, how is the sound created - does your app convert the midi to audio with its built-in piano sound?
I assume it is using built-in sound. But of course, you could play saved midi on your keyboard and save that audio if using some specific sounds.
Looks awesome, does it also record the pedal? Also I am worried that if it just records in MIDI, the output sound may be different from what I was hearing when playing unless I somehow have exactly the same sound banks as my digital piano.
The MIDI keyboards I know will always output the pedal as part of the overall MIDI out. The pedal is connected to the keyboard via jack cables - or do you have a pedal that has its own MIDI output?
I believe you're correct. The 1/4" pedal goes into the device, but anything emitted from there on should be an aggregation of any MIDI going out (provided they're on the same channel).
From the FAQ: "synthesizer support - all midi messages & all 16 midi channels are recorded".

Since most sustain pedals come through as a CC message I think it's supported.

correct! And a surprising amount of care went into that feature!
There should be a way to run the MIDI back through your digital piano (or keyboard) to record the audio That said, software pianos are relatively easy to find with impressive sound banks.
Awesome idea! Does it record other MIDI events like pitch bend or control change events? That would be very useful for synths.
> all midi messages & all 16 midi channels are recorded

Looks like it does.

Love the product, love that you don’t need a cloud account. Congrats! I’m in the same situation where I seem to improvise better when I haven’t hit the record button.
This is great! Thanks for creating this - and as someone asked already, I would love to hear more about the process how you did this. Especially I am interested how you came up with injection molded enclosure (I thought it just costs some enormous amount to make the mold).

I was about to order but frankly it does not feel good to pay about the same amount of shipping (to Finland) as the product costs.

If you can do anything about it, I would be happy to order. 90EUR for shipping is just too much, 20-30'ish would be reasonable.

Wow that is the highest shipping cost I've seen. Sorry about that. Partnering with an EU distributor is on the todo list.

Yes I have a lot to share about the production process. Blog posts are planned! It was quite fun!

I'd likely buy if I could ship to UK at a decent price! Please make this happen! Is there some way I can sign up to some future communication about this?
send me an email I'll add you to a list. chipweinberger@jamcorder.com
Check out Asendia. They are doing consolidated shipments which might work out nicely with this.

Works basically like this: You collect couple of shipments to one bigger package. Then you send that bigger package to Asendia logistics centre and they will send those individual packages to users.

Not as bad as 90EUR, but shipping for me comes out as 71 NZD for me, which also seems a bit steep — would purchase almost instantly for a similarly priced shipping to that mentioned here, ~35 to 45 NZD?. Just noticed the default UPS Worldwide Saver® is quoted as 6-7 business days which (for me all the way down here) seems pretty speedy — I'd be totally happy with something cheaper but more paced like a snail!
Looks really great! If I had a standalone keyboard I'd be considering this!

Your project got me thinking - here's one idea: Windows should get MIDI 2.0 support soon, incl. non-blocking MIDI reading if I understood correctly. That should make it possible to create a small background application that records all incoming MIDI from all (or chosen) connected MIDI devices. It would work very much like your recorder and could share the same mobile app?

This I would be interested in. Since it's a software only solution, it could be cheaper and lower entry barrier.

I actually coded that as a macos toolbar app. If anyone's interested, I could share the code to GitHub.
I'd be really interested. I had the same idea a few years ago, but never got it functional.
I'm not sure why you need midi 2.0 to achieve this? Recording midi on windows is totally trivial, and for this sort of application, only capturing the notes and relevant CCs (e.g. pedals) is all you need.
Theyre specifically looking to record all incoming MIDI streams, which isn't possible without preventing other applications from using those MIDI devices. Only one program can listen/send to a midi device at a time
(comment deleted)
This is really neat.

It'd be so easy to do a version of the "infamous Dropbox comment" on this ("you can already build such a system yourself quite trivially by getting a MIDI cable, an audio interface, and a raspberry PI...") but of course what you have is exactly a sort of Dropbox Of MIDI here where it Just Works™ and backs up all your music automatically with no hassle.

I have built and used this setup before, and I would consider buying this anyway just to for the smoother UX.
Great job on this! With the ability for it to send midi over Bluetooth, it sounds like it could also act as a de facto replacement for my Yamaha Bluetooth USB adapter UD-BT01 (which has always been a bit fiddly), would that be a fair assumption?
yes, it has that feature built-in! So it can replace your UD-BT01. (and is not fiddly)
Awesome, I just ordered one! Absolutely love the "always on" feature - kind of reminds me of the "Midi Dump Last X Minutes" you can use with many DAWs. Thanks!
Looks amazing! Any easy way to get the midi into ableton live? (E.g. if my piano is in another room)
If you want live midi, it support Bluetooth Midi.

If you want historical, it's also exposed over the web interface and wifi API.

All-around great product - the best part for me is how there's an offline option, no mandatory app or subscription BS. There's too much of the latter nowadays.
I am not a musician so I have no use for this but this is a delightful idea that arguably belongs as a standard feature of every MIDI device being made now.
This is awesome! I love that you don't need computer and deal with a DAW for it.
Hardware, but relying on 'an app' No thanks, a Zoom / Tascam recorder is much nicer.
Apples and oranges. OP's device captures midi not audio.

Also: Less space than a Nomad.

"Do i need to use the app? - No. You can also access your recordings directly from the SD card and by using wifi setup you can do things like set the date & time without the app.", from the FAQ
you can also access the full api over WIFI! nothing hidden.
I'm with you. That was the main motivation for also having the local web interface.

i.e. http://jamcorder.local

It also has an open API, that's pretty simple. So you could integrate it into other apps or open source software.

Congrats on launching, OP!

This might be the first Show HN that I insta-purchased after reading your landing page. The mobile interface looks extraordinarily well thought-out.

Wow that's a really nice compliment!

You should have seen the original UI concepts I made, they were terrible!

Same. I've so often done a nice improvisation that's then lost forever. Time to find out if there's something in them.
Likewise. I also get more "in my head" if I'm actively recording, and it just isn't the same relaxing experience as improvising and noodling. Really excited for this.
Same. Bought this immediately for that exact reason.
I read like four sentences on the landing and headed to purchase. I've wanted this exact feature for years.
Same, personally, I couldn't even finish reading the landing page before I found the buy button and purchased.

This is an absolutely phenomenal use of the espressif esp32s3 in a hardware that I will likely use daily for the rest of my life.

Kudos!

This is amazing. It's amusing that you can be Roland or Yamaha and have decades of experience building digital pianos and all sorts of other digital music devices, yet even your high-end digital pianos that sell for $3000+ do not have this feature.

Would have loved to not have lost so many improvisations, and consciously recording every time before you start playing is too much hassle.

I have a 'high end' digital piano from Yamaha, and how I think about it is very similar - the digital instrument is so 'feature poor' compared to what is possible!

With that said, I'm grateful for the mechanical stability of it, and also the reliability of the interface.. Should not be taken for granted. It has buttons, not a touchscreen for example (Kawai digitals were sadly out because of this.)

Yamaha digital pianos have on-board recorder which is quite convenient and separates left and right hands.

However, the internal capacity is fairly limited and there's some tolerable yet a delay after the recording to save the buffer on the flash.

I don't think there's a ready way to copy such internal recording from the piano onto some external medium.

This device may be a nice 'upgrade' for such digital pianos. It'd be nice if the recordings can also be played for a selected hand, so that it could be used in learning.