I've worked on optimizing serial displays, and I think I see your problem. I think you are sending a lot of overhead with each write. i2c works by sending and address, a command, and data for that command. If you are only writing a single byte at a time, 2/3s of the transmission is completely unrelated to what you actually want to display. Instead of only changing the bits that change per frame, store a frame buffer on the computer's side, and write to the entire display at once. That would change it so that only 2/1027 bytes are overhead, and that should give a decent speed increase.
@@gorgpflug6087 I'm not talking about changing the i2c transmission speed, I'm talking about increasing the goodput(ratio of relevant data to irrelevant data) of the bus.
@@andreameparishvili5468 the i2c frequency isn't just an arbitrary limit, it's the maximum that mixtela's computer can output through the HDMI connection.
This is beautiful: the presentation, mesmerising machining, minimal and quirky narration, and the level of effort to create something totally and wonderfully useless.
Not gonna lie, I actually got emotional hearing and seeing bad apple show up here. Its such a cultural touchstone for so many people and touhou music became such a big part of my life for so many years. Overall it just fills me with joy seeing it used for demonstration purposes. I'm sure the music being in a music box rendition didn't help with the emotions I was feeling either, feeling like the perfect allegory for plunging deep into memory.
Try blue noise comparison (static) instead of Floyd Steinberg to dither. You can also try 3D blue noise or Nvidia precomputed spatiotemporal blue noise, but given low frame rate, I think static would work better. The problem is that the movement in the dither is obscuring the movement in the picture. With a static dither, maybe you'll be more successful with partial screen updates.
this seems like a good idea, but would probably need something more, to be worth making a new video about, and given how at first this was like april fools video, and then he made a cool case for it, then now what, fix the dither and...what, use another of those screens, to make a micro model computer with functional screen?
@@jan_harald Oh I do believe mitxela could figure this out! You're right that it doesn't look easy to build a video about, at a glance. However, I didn't expect this one, either =D What I would do personally is "here how the code was massively improved" - there's def some things that can be added, including partial refreshes (look up micropython SH1106 driver for simple page-based example) to increase FPS. In addition to that... 128x128 could be done with two displays, I suppose! But, AFAIU, mitxela's videos aren't software-focused typically? so I'd understand if this were to be left as exercise to the reader.
@@AryaFairywren didn't he just specifically talk about how he made it only send the updates to the screen? both at one point, and then demoing it at the end, how if only the mouse moved, it worked just fine? and rather than bigger resolution, I'd rather take lower resolution over bigger screen size, to make it more legible, lol, right now it's basically just tiny noise, even at a terminal prompt
This and the MIDI synth plug he might wind up with the smallest fully functional recording studio in the world Sometimes I forget that he's a musician.
im neither a musician or an engineer but i could convince you i was both given a few minutes of time, my skill set is veeeeeeeeeeery diverse and i am the guy people call to repair THEIR setups
Also if you need it for any future projects feel free to use my video edit of bad apple specifically designed for these displays: ua-cam.com/video/7XijCqWb5TI/v-deo.html
Dunno what the hell I just watched, but it's earned you a sub. That's a work of art. It might not be much use for playing DOOM, but it works quite nicely for the video of Bad Apple.
I dont know if you can change that, but if the dithering is slowing down the performance, maybe switching to indexed dithering would help. Floyd-Steinberg dithering is acumulating data in an iterative way, while indexed or lookup dithering is done per pixel and way faster. as a bonus you would get a nice retro pixel art vibe
The proper way to use that style knurling tool is to pinch your part between rollers, using the screw to apply pressure. Doing so puts almost no load on the lathe itself, and therefore won't damage it. A lathe is not really meant to take heavy loads in the direction that a pressed knurling tool generates.
🛠 The knurled brass HDMI connector looks super sleek. I never thought about customizing connectors like this, but you make it look both fun and doable. Also, the tech details you shared were really insightful. It's amazing how you manage to blend craftsmanship with tech so seamlessly. Can't wait to see what you come up with next!
The whole intro from 0:00 to 0:25 is an absolutely AMAZING joke/reference that I feel almost nobody got. _I just wish it wasn't true..._ EDIT: As of [May 17th, 2022 9:04 PM PST] 0 to 2 out of 466 comments have gotten the joke, excluding me. Yes, I checked *_all_* of them.
I have not seen a music box mech like that before. With the rotating strikers it looks as though you can actually adjust the sustain of each note by varying the rotation speed. Wicked!
One dither you could try would be a simple error propagation You start a line probably with something like 50%. If the first pixel is brighter than that 50%, you set white (100) otherwise black (0). Now subtract what you used from what you were seeking and that is the next value to compare against. Continue this across the line.This makes text illegible but grayscale pictures translate quite well. By removing randomness, you'll keep the same output for (some) static parts of the screen. I found that random combined with error propagation gave the most "accurate" representation of the original image but simple error propagation gave a more "clean" looking image at the loss of a little fidelity. (this was for printing images to a black and white thermal printer).
Sir i just discovered your channel a few months ago, and i have to say that your channel is very special, thank you so much and i wish you all the best
Uhhh, what? That's a 20+ year old Touhou track, "Bad Apple!!". It's been a meme for these low resolution displays for almost a decade now? Just like Doom. :P
For the next generation, you can just do what nVidia did, add frame interpolation to the driver, claim it now runs at "twice the FPS", and double the price. Or get one step ahead of them and do what I'm sure they will for the _next_ generation: add _three_ interpolated frames between real ones and claim it runs at four times the FPS.
I was so happy when you played bad apple on it. Even more when you busted out the midi music box. 11/10 mate.
I've worked on optimizing serial displays, and I think I see your problem. I think you are sending a lot of overhead with each write. i2c works by sending and address, a command, and data for that command. If you are only writing a single byte at a time, 2/3s of the transmission is completely unrelated to what you actually want to display. Instead of only changing the bits that change per frame, store a frame buffer on the computer's side, and write to the entire display at once. That would change it so that only 2/1027 bytes are overhead, and that should give a decent speed increase.
the ssd1306 has no problem with i2c running at about 1mhz....
@@gorgpflug6087 I'm not talking about changing the i2c transmission speed, I'm talking about increasing the goodput(ratio of relevant data to irrelevant data) of the bus.
I like your funny words, magic man.
well yeah but as @Görg Pflug mensiond 1darn mhz sooo what u writen there was unneeded
@@andreameparishvili5468 the i2c frequency isn't just an arbitrary limit, it's the maximum that mixtela's computer can output through the HDMI connection.
I really enjoyed the obligatory Doom on a tiny screen as demo of it's capabilities.
Kudos using every single bit of tools you have.
This is beautiful: the presentation, mesmerising machining, minimal and quirky narration, and the level of effort to create something totally and wonderfully useless.
But hey... It runs doom
Art is never useless.
The only thing you can make is s - h - i - t
don't forget about the hot glue
From the department of “but why would you do this?” comes another amazing creation.
Thanks.
Could not have said it better!
this brings a whole new territory to those tiny oleds people use to display stats or animations on their pcs
That i2c abuse is one of the best backwards uses of a technology I've ever seen. Kudos.
that's DDC
@@nneeerrrd For what it's worth, DDC2B uses the I2C protocol.
would have used SPI, might actually have a decent bandwith and the controllers supports it natively
@@Flowxing I don't think the video card can speak SPI but you're right if this were microcontroller driven
@@big0bad0brad oh I didnt know this was directly driven by the gpu, I thought there was a controller inbetween
Not gonna lie, I actually got emotional hearing and seeing bad apple show up here. Its such a cultural touchstone for so many people and touhou music became such a big part of my life for so many years.
Overall it just fills me with joy seeing it used for demonstration purposes. I'm sure the music being in a music box rendition didn't help with the emotions I was feeling either, feeling like the perfect allegory for plunging deep into memory.
Bad Apple is one of the "testing" videos, just like doom. So it shows up everywhere in tech.
what song is this?
@@NotAMachinist1024 bad apple on a music box
I swear this channel is amazing, you always learn something you didn’t know you want
I subscribed today.
Try blue noise comparison (static) instead of Floyd Steinberg to dither. You can also try 3D blue noise or Nvidia precomputed spatiotemporal blue noise, but given low frame rate, I think static would work better. The problem is that the movement in the dither is obscuring the movement in the picture. With a static dither, maybe you'll be more successful with partial screen updates.
Seconded, do look into that!
this seems like a good idea, but would probably need something more, to be worth making a new video about, and given how at first this was like april fools video, and then he made a cool case for it, then now what, fix the dither and...what, use another of those screens, to make a micro model computer with functional screen?
@@jan_harald Oh I do believe mitxela could figure this out! You're right that it doesn't look easy to build a video about, at a glance. However, I didn't expect this one, either =D What I would do personally is "here how the code was massively improved" - there's def some things that can be added, including partial refreshes (look up micropython SH1106 driver for simple page-based example) to increase FPS. In addition to that... 128x128 could be done with two displays, I suppose! But, AFAIU, mitxela's videos aren't software-focused typically? so I'd understand if this were to be left as exercise to the reader.
Thank you. I was bothered that I couldn't remember the name the dither.
@@AryaFairywren didn't he just specifically talk about how he made it only send the updates to the screen? both at one point, and then demoing it at the end, how if only the mouse moved, it worked just fine?
and rather than bigger resolution, I'd rather take lower resolution over bigger screen size, to make it more legible, lol, right now it's basically just tiny noise, even at a terminal prompt
This and the MIDI synth plug he might wind up with the smallest fully functional recording studio in the world
Sometimes I forget that he's a musician.
I don't, but then again, Stylobend is essentially the soundtrack to my life.
Wait he was musician?
I though he was engineer
@@legarishere I have hope of leaving software engineering and becoming a musician. Music is way harder than software.
im neither a musician or an engineer but i could convince you i was both given a few minutes of time, my skill set is veeeeeeeeeeery diverse and i am the guy people call to repair THEIR setups
@@frogz ok
When that music box started playing I about fell out of my chair. Marvelous dedication to a bit, really lovely work.
That Bad Apple bit at the end was perfect. The most useless display has a use!
If a display exists, bad apple will be played on it eventually
Below the chrome should be a copper layer, which - when exposed - would look even more steampunk.
When This Old Tony meets Marco Reps meets Wintergatan = mitxela! Excellent!!!
That's the nicest HDMI connector I've ever seen and I want one.
I can't even imagine what it's like to have so much command over software and electronics and physical items. You must feel like an absolute god.
What a coincidence! I was just on a binge of your old content. Great as always, keep up the good work!
What a cool project! Loved the bad apple part, keep on doing what youre doing!
AWESOME! The Bad Apple Demo at the end - That's what i wanted to see on this display from the very beginning of the movie.
Oh my gosh. That is the most adorable display I've ever seen.
every maker on youtube has a level of detailing beyond which they consider it a waste of work. yours is the highest I've seen.
If M1.4 are the smallest threads you have ever tapped by hand what was the smallest you did not tapped by hand?
This is absolutely stellar. This is my kinda ridiculous! It does make me want a more real gooseneck display for showing chat while I'm streaming...
That MIDI music box rendition of Bad Apple!! was absolutely beautiful and perfectly complements the beauty of the display itself.
Also if you need it for any future projects feel free to use my video edit of bad apple specifically designed for these displays: ua-cam.com/video/7XijCqWb5TI/v-deo.html
Dunno what the hell I just watched, but it's earned you a sub.
That's a work of art. It might not be much use for playing DOOM, but it works quite nicely for the video of Bad Apple.
I really do admire this esoteric UA-cam channel, absolutely stunning!
Its perfect.
It's
@@waldolemmer Is"t
@@a51mj12 Is'''t''n't
I dont know if you can change that, but if the dithering is slowing down the performance, maybe switching to indexed dithering would help. Floyd-Steinberg dithering is acumulating data in an iterative way, while indexed or lookup dithering is done per pixel and way faster. as a bonus you would get a nice retro pixel art vibe
Indexed can also be readily performed on a pixel shader due to its nature.
Always happy to see another version of Bad Apple, and always happy to see the Midi music box.
in case anyone was wondering- the drums in the background track are the default club samples in FL studio
The proper way to use that style knurling tool is to pinch your part between rollers, using the screw to apply pressure. Doing so puts almost no load on the lathe itself, and therefore won't damage it. A lathe is not really meant to take heavy loads in the direction that a pressed knurling tool generates.
This man is going to end up making an hdmi LED
That's... Kinda awesome, in a terrible way. 1x1px resolution "OLED".
@@4.0.4 OLED being abbreviation of One Light Emitting Diode
wtf,..gay lol led
Someone bought a mill! Congrats! Btw, I am sure, you know how the "pinch" knurling holder should be used.
I was wondering the same thing and I figured someone would point it out
I love how the first thing you did with it was try to play DOOM. Subscribed!
Legendary stuff as usual, bad apple just made this perfect
Honestly this is pretty close to the sorta shit I'd be coming up with if I had my own workshop. Living vicariously through you right now.
that tool that applies the high grip surface blew my mind
Bad Apple music box actually sounds good? Like it has a nostalgic feel to it.
You should put a ridiculous fresnel lens in front and make it look like the screens in the movie Brazil
new videos by both you and suckerpinch?! In the same month!! a mighty boon to us all. :)
Among all those things that never should have been done in the first place... No one has EVER done it better. Congrats.
I would add a ink-stained microscope slide in front of the screen to protect it and change it away from B/W
Scotch brite in one direction, looks lovely on brass.
Not that it isn't now 😅
You did the thing!!! Thank you!!
Bad Apple and DOOM... incredible, what a legend
Is this the start of ThisOldAlex? and well done, you made me laugh a lot with that punchline
you’re honestly like the coolest ever
Another amazing Bad Apple rendering
🛠 The knurled brass HDMI connector looks super sleek. I never thought about customizing connectors like this, but you make it look both fun and doable. Also, the tech details you shared were really insightful. It's amazing how you manage to blend craftsmanship with tech so seamlessly. Can't wait to see what you come up with next!
This is so completely awesome. Really gives off vibes of wintergatan and clickspring at the same time. Wish I could give more than one like.
Looks awesome! Though I'm surprised you didn't countersink the screws on the front.
I think this works better for the looks
@@Nate-bd8fg If steampunk is the look, the screws should be slotted
The whole intro from 0:00 to 0:25 is an absolutely AMAZING joke/reference that I feel almost nobody got. _I just wish it wasn't true..._
EDIT: As of [May 17th, 2022 9:04 PM PST] 0 to 2 out of 466 comments have gotten the joke, excluding me.
Yes, I checked *_all_* of them.
This video has all the good things: music, technology, mill, lathe, brass and fine work.
I have not seen a music box mech like that before. With the rotating strikers it looks as though you can actually adjust the sustain of each note by varying the rotation speed. Wicked!
This is so awesome! You really nailed the steampunk aesthetic.
bad apple really lends itself to a music box tone
Yes, i use PoH (Power over HDMI) on my monitor.
What size? Does the hdmi have enough current?
@@309electronics5 It's just a joke about he is not connected anything except HDMI.
Well, HDMI does pass 5v so...
@@NaddlyCOnly at a measly 55mA though. Difficult to power anything much bigger than this 😅
@@oliverer3 wow, I didn't know it was that low
Beautiful! Although I'd say the white version of these OLEDs would've fit the aesthetic better than blue.
Looks like white to me. The colour on those things isn't that great to begin with. I didn't know there was a blue version.
Great project. I guess precision is key. You can still hear the slight variations in timing when the servos fire.
i never expected to see "steampunk" and "HDMI" in the same sentence
“A weight off my solder” is such a beautiful song, i had to go back and listen multiple times. Wow.
One dither you could try would be a simple error propagation You start a line probably with something like 50%. If the first pixel is brighter than that 50%, you set white (100) otherwise black (0). Now subtract what you used from what you were seeking and that is the next value to compare against. Continue this across the line.This makes text illegible but grayscale pictures translate quite well. By removing randomness, you'll keep the same output for (some) static parts of the screen. I found that random combined with error propagation gave the most "accurate" representation of the original image but simple error propagation gave a more "clean" looking image at the loss of a little fidelity. (this was for printing images to a black and white thermal printer).
13:01
> hiding your sins
Adam Savage would be proud
You make pretty good content for someone with a default profile picture.
EDIT: YOU DID ALL THIS JUST TO RUN BAD APPLE!?!?!?!?!
Always very exciting when a new mitxela video comes out!
Sir i just discovered your channel a few months ago, and i have to say that your channel is very special, thank you so much and i wish you all the best
We leave you alone for five minutes and you become ClickSpring.
Seriously tho this is legendary
Nothing bad with that!
This is amazing! Can't believe you both built this, but also composed the soundtrack for it.
Uhhh, what? That's a 20+ year old Touhou track, "Bad Apple!!". It's been a meme for these low resolution displays for almost a decade now? Just like Doom. :P
@@SLLabsKamilion Ah, I see you're a man of culture as well.
@@SLLabsKamilion No, you're wrong. Mitxela made Bad Apple.
What a missed opportunity at the end to Rick roll us 😂😂😂
OMG YESSSS 15:45 you have no idea how psyched I am to see Bad Apple on this
Wow, and “bad apple” theme in the end is beautiful with this display!
The Bad Apple remix and display made this worthwhile. Got really nostalgic here. Great job!
Thx for the little track at the end
Very nice!
For the next generation, you can just do what nVidia did, add frame interpolation to the driver, claim it now runs at "twice the FPS", and double the price.
Or get one step ahead of them and do what I'm sure they will for the _next_ generation: add _three_ interpolated frames between real ones and claim it runs at four times the FPS.
What a legendary job you just did! Hats off to you 👍
OH SNAP! Is really PCBWay! :U
@@gem-squared YEAH, The original, the ONLY
Really like that music. Something different and not so overused. Keep it up!!!
Beautiful! Lovely music and mezmerizing work. Why does this remind me of Bad Robot?
That was incredibly well built. I had no idea you could interface hdmi to an ssd oled. Great work!
That ending made me think I was watching a video by Junferno.
I really love your videos, they're the sort of videos that I've been looking for.
Bravo :) That screen would make a great little CPU activity monitor on the side of your laptop!
those connector covers are freaking gorgeous.. if you made cables with this and sold them i'd honestly buy them
amazing. And holy crap that music box demo at the end
“I don’t know what he’s doing, but he’s doing it good”
So useless and beautiful. Thank you very much, you never fail to amaze me.
I happened to watch this video while playing guitar and I had a lot of fun jamming with the background music.
13:24: cheese n rice - that's a rubbish soldering job
This is beyond describable. You're an absolute legend.
The performance of Thus Spake Zarathustra on the piano makes this ending just so much better.
Your hand machining has such an art to it
i appreciate the hefty knurl on this thing. lovely net-like pattern, like a knurl network...
I'm loving the JRPG-style music. Somehow fitting for this little side quest.
Thank you for this wonderful rendition of bad apple!
Best video out there!! Love the music box !
What is the song being played by the music box at the end? It's soooo beautiful...
2:15. That’s what alligator clips are for. Hold the wire still!
Beautiful!
There's always a backup income stream for knurled brass connectors then.
Wow ... that's an impressive project !
I love all this metal work ;-)
Well done... the last 5 minutes was amazing!