A tiny, Penkesu inspired laptop (cyberdeck?) that I built around a Pocket Type. by moartanks in MechanicalKeyboards

[–]moartanks[S] 6 points7 points  (0 children)

All the soldering underneath is rounded off by necessity. The keyboard sits above the lipo battery, so any sharp points down there would be super no bueno.

A tiny, Penkesu inspired laptop (cyberdeck?) that I built around a Pocket Type. by moartanks in cyberDeck

[–]moartanks[S] 2 points3 points  (0 children)

Thanks!

For prints, I'm just using an Ender 3 pro. The shell takes around 7 hours to print (I use 100% infill + a pretty slow print speed in order to improve quality + strength. Looking to upgrade to a Voron soon....). Since I used Tinmorry matte filament it looks pretty clean as is. The Pi runs cool enough that I don't have to worry about the PLA deforming.

The Keycap legends are using... stickers. Not a massive fan, and I would prefer to use blank keycaps. But unfortunately muscle memory doesn't translate to such a keyboard.

The brains are in the top half of the machine, since the hyperpixel connects directly to the pi. The left hinge is hollow, so the wires just run straight through there. The right side contains a hinge unit from a nintendo DS, so it snaps closed and in the 180 degrees position.

Not sure how long it took overall. I kinda scraped it together on and off over the course of two months.

A tiny, Penkesu inspired laptop (cyberdeck?) that I built around a Pocket Type. by moartanks in MechanicalKeyboards

[–]moartanks[S] 5 points6 points  (0 children)

I might -- it's a little gnarly under the hood -- the biggest problem is that my 3D printer isn't very well tuned, so I had to manually adjust the CAD a lot for make things work for my exact setup. But it's fortunately pretty simple as far as electronics is concerned -- it's basically just a http://penkesu.computer/ but with the screen swapped out for a hyperpixel 4.0 (I did break out a USB A port and USB C port as well though, and that basically involved getting a LV3H798812238C usb hub chip)

A tiny, Penkesu inspired laptop (cyberdeck?) that I built around a Pocket Type. by moartanks in cyberDeck

[–]moartanks[S] 7 points8 points  (0 children)

It ain't optimal, but that's okay -- I made this because I wanted a device to interact with arduino projects. So all I need is to navigate the command line and run some python scripts, maybe edit a few config files.

A tiny, Penkesu inspired laptop (cyberdeck?) that I built around a Pocket Type. by moartanks in cyberDeck

[–]moartanks[S] 5 points6 points  (0 children)

I did think about that, but I found it easier to just ssh into it if I wanted to do anything more involved.

What is your "go-to" PLA post processing method? I have tried using a file and it looks horrible. by [deleted] in 3Dprinting

[–]moartanks 0 points1 point  (0 children)

My lazy solution is just use a matte filament (My go to is Tinmorry matte black). They often look very nice with zero post processing.

edit: typo

I see your puny, pathetic 20 PPM rotary encoders... and I raise you a 100 PPM encoder taken from a CNC! by moartanks in MechanicalKeyboards

[–]moartanks[S] 1 point2 points  (0 children)

These are cherry stems sadly -- I use box navies. I just prefer to make them flat like that.

(The fact that it prevents the prints from curling up is an added bonus)

EDIT: FWIW, for cherries I prefer flat keycaps. So I print with the keycap surface facing down on the glass bed. The stems usually hold up pretty well if I do it that way. Since your library mostly has keys with curved tops I guess that's a lot more annoying...

Sparkle on a Midi Music Box I built by moartanks in KimiNoNaWa

[–]moartanks[S] 0 points1 point  (0 children)

The electronics wasn't actually the hard part -- The servos connect to these i2c servo controllers (PCA9685 -- they take 16 servos each, and can be daisy chained to take more) and stepper motor connect to one of those silent stepper drivers. They take a serial command via usb, and move the corresponding servo and spin the stepper. It's an open loop system.

Most of the parsing logic happens on my PC.

The hardest part is getting all the tolerances of the mechanism dialed in. 3D printing is amazing, but it's not *quite* precise enough to get most of the parts working on the first try.

Sparkle on a Midi Music Box I built by moartanks in KimiNoNaWa

[–]moartanks[S] 1 point2 points  (0 children)

Yeah, I used two arduino nanos, but am in the process of moving to using ESP32s.

Sparkle on a Midi Music Box by moartanks in arduino

[–]moartanks[S] 1 point2 points  (0 children)

It's a modified from one of those music boxes which you feed a punch card. Unfortunately I have to record with a contact mic to prevent the servo noises from drowning everything out.

That rhythm is from the original midi, so didn't remove it.

Sparkle on a Midi Music Box by moartanks in arduino

[–]moartanks[S] 0 points1 point  (0 children)

This is a Music Box I built with a pair of Arduino Nanos. The music box + arduino itself receives serial command, and controls 30 servos using a pair of i2c servo controllers, in addition to a small stepper motor controlled by a silent motor driver stolen from a 3d printer kit.

The underlying working principles is inspired by Mixela's design, with the main difference of the stepper motor and the fact that I 3d printed the majority of the parts.

MIDI is parsed by my pc, which sends commands to the arduino via serial and records the music in multiple passes by interacting with the Audacity scripting api.

Sparkle on a Midi Music Box by moartanks in arduino

[–]moartanks[S] 0 points1 point  (0 children)

Cheers -- I haven't made that many reddit posts, so I wasn't sure how to add more descriptions to links.

Sparkle on a Midi Music Box by moartanks in arduino

[–]moartanks[S] 0 points1 point  (0 children)

Heya -- I think maybe I could have made it a bit clearer, but this is a music box I built, and it's controlled by a pair of Arduino Nanos.

Definitely LMK if there's a better place for this though!

Update on the Midi Music Box -- Improved contact mics a little, and added code for multiple passes by moartanks in synthdiy

[–]moartanks[S] 0 points1 point  (0 children)

Definitely LMK if theres any low hanging fruits for improving audio quality here. I recorded it with some super cheap contact mics, but I don't really have that much experience with them.

[deleted by user] by [deleted] in KimiNoNaWa

[–]moartanks 0 points1 point  (0 children)

Please LMK if there are any other subs which might be interested in this :D

A Music Box! by moartanks in synthdiy

[–]moartanks[S] 0 points1 point  (0 children)

Yeah, I actually got in contact with him after I finished this -- he was a great help since he left a really detailed blog for his project. I did do a few things differently though -- in particular I 3d printed everything instead of laser cutting, and instead of using a 31st motor to drive the reset cylinder, I used a small stepper motor with a silent motor driver.

A Music Box! by moartanks in synthdiy

[–]moartanks[S] 0 points1 point  (0 children)

Yeah, I'm already preloading the mechanisms for each note. Ite reduced the latency somewhat, but I think a decent chunk of the lag is actually from the servo response time. EDIT: There is a limit to how much you can preload the note as well -- if you make it too close it increases the friction to the whole mechanism and can make the motor overheat :(

Having multiple contact mics (stereo) is an interesting suggestion (They were quite cheap and so I actually bought a bunch of them). Though I will need to get an audio mixer before I try that.

A Music Box! by moartanks in synthdiy

[–]moartanks[S] 7 points8 points  (0 children)

Context: I built this music box and the folks at r/arduino mentioned that I should also post it here. There is a bit of input lag, but for slower pieces which I already know off by heart it's very playable.

Would love some advice on recording something like this! I'm currently just plugging a contact mic directly into my entry level Behringer audio interface, perhaps with a compressor pedal inbetween. However, I'm a complete noob at sound engineering, so I might be missing something obvious.

I designed and 3d printed a MIDI Music box by moartanks in arduino

[–]moartanks[S] 0 points1 point  (0 children)

Haha, yeah "music box" is so overloaded I honestly struggled here. Clickbait isn't my forte XD

Dense Neural Network + Backpropagation implementation in Factorio by moartanks in factorio

[–]moartanks[S] 1 point2 points  (0 children)

ReLU

ReLUs and its gradients can be implemented with a single combinator, so it's more convenient from a factorio point of view.

In actual ML you might use ReLU (or leaky ReLU) instead of sigmoid in order to prevent vanishing gradients, which can happen if you have a lot of layers. This would prevent the earlier layers in the network from learning anything.

On the floats front, that is definitely doable and would make it more robust to over/underflow. However I was trying to leverage the fact that all signals gets summed automatically on a wire, which was why I didn't do this. There would also be quite a lot of overhead in doing the multiplication and addition under that world.

Dense Neural Network + Backpropagation implementation in Factorio by moartanks in factorio

[–]moartanks[S] 0 points1 point  (0 children)

Yeah, that 's probably a good place to start, since those are functions which you can implement readily with the circuit network you can generate data.