Sad News Alert

Moira Rose is DEAD!

Test fit, it looks pretty good i think. I wanna reprint with the smooth print bed, im not a fan of the texture. Also, the knobs arnt actually installed, they are just shown to see what they look like.

I need to adjust the knob, the depth of the hole for the rotary encoder is a little deep and makes the top of the knob a little translucent.

I haven't shown you the sides of the main red "frame"... because they look like shit. Not sure why.πŸ€·β€β™‚οΈ

Diffuser is done, hopefully it looks good.

I got some plastic polish kit from amazon for that phone i brought.

I was just cooking something and hovering around in the living room, I decided to look out the window, and saw a car go past staring at our house, so i stepped to the side and kept watching whilt trying to hide, and the car pulled up, the dude was looking out his back window and made direct eye contact with me. I just moved away quickly. Then a few seconds later... the door knocked, then again, so i go and answer it, Its my amazon delivery i forgot aboutπŸ˜‚πŸ˜­

Amazing what a difference a slight adjustment of the z-offset can do for a first layer.

The top is 0.03mm z-offset, the bottom is 0.07mm. There is still some ripples in the bottom one, but its really hard to see, im just printing another with the z-offset at 0.08mm to see i f that clears the remaining ripples.

Third of the way through the print and its still looking good. So hopefully that fixed it.

I have no idea why, but that print had really bad stringing. i just did a stringing / retraction test and it printed fine... So im gonna try printing it again with scarf joints and a slightly higher retraction length. Hopefully it finishes without issueπŸ˜’

Printing the LED spacer in black. I added a slight chamfer to the top surface to try and make the separation lines a little thinner. Im not sure it if will work, but if not, i can just flip the spacer over.

I will never understand why printers print in the order they do.
You would think, with a grid, you would just start in one corner and work your way across, row by row. But nope, look at this

What kinda logic is thatπŸ˜‚

I just printed a test diffuser with multiple thicknesses to see what works best.

Im not sure why, but the slicer refused to print the 0.55 and 0.65 layers as separate thicknesses, it just printed one large 0.55 layer.

I dont understand why, but the 0.4 section looks thicker than the 0.45mm section?
I prefer the 0.45 section, but i think its personal preference, i like all of them, but 0.45 looks best to me.

I will reprint the led spacer tomorrow in black, and ive ordered a smooth pei print bed to see if that would make a better diffuse surface.

I just test fit the pcb into the frame of the led-a-sketch, it fits perfectly, but the little clamps on the back need to sit a bit closer to the pcb, there is a little too much wiggle room.

Im not too happy with the print quality tbh, I need to fiddle with the settings, and i turned scarf seams so i might try without it next time. Next time i print the frame, im gonna print it with the front side of the frame facing upwards, it would need supports, but it would let me do ironing on it to smooth it out, and it wont have the pattern of the print bed embossed into it.

The holes for the pots turned out pretty good considering there wasnt any support lol.

The grid thing covering the leds, i dont know what its called, so i just call it a spacer. i printed it in white originally, but it bleeds far to much light, so im going to try it in black next. I have tapered off the top of the spacer grid, just to try and make the lines a little less noticeable when the diffuser is on.

About the diffuser, i really dont know what to do about it. I feel as tho i could just print a test piece with stepped extrusion heights to see which looks best, I could also just buy a diffuser from ebay or something. I think im going to try the printed one, but i might have to get a new print bed with less pattern on it.

I haven't tested the potentiometer mounts yet

Here are some pictures.

The print hasn't finished yet, but i was just looking at the model and realized i didn't put the little notch in for the potentiometer sticky up metal part to stop it spinning in its hole.

Ill add them now, just incase i print it again.

This isnt what i wanna do with the phone, but can you imagine having it hooked up to alexa? u pick the handset up, it unmutes the mic, u then say alexa blah blah, and you can hear its response via the handset.
It makes the dialing kinda useless, but i was just day dreaming and thought of that πŸ˜‚

Just ate an edible, now watching Mr Bean Rides Again.

Im not sure what im going to do with it, but i have an idea...😏

I have no idea why, but i just got an offer on ebay for an old BT telephone.. I think i might buy it...πŸ€·β€β™‚οΈ

I forgot to add supports for the potentiometer mount😭
If i see any lifting on the current print, ill cancel it, sort the lifitng out, and add the supports obviously.

Nevermind, it seems i was further along in the project than i remembered.
I have started the print, see u in a few hours i guess lol.

I wanna start working on the code for the LED-A-Sketch, but I need to add the controls and such, but if i solder those, i need to print the case so they dont get yanked off. But i dont know if im ready to print the case yet. Im not really sure where i want to put the power jack, i need to work out how to secure the pcb in the case, cause my dumbass didnt put any mounting holes on the pcb. Also, im not sure if i need it, but maybe some ribs to prevent the frame warping / being twisted when in use. hmm

Here is the test code im running and a link to it on github, just incase. (i need to add code formatting to the site too it seems)
https://gist.github.com/PrawnCocktail/b1f38f65085d6e55b9fc4e45bb8dc1ed

#include <FastLED.h>

// Custom WS2812C controller using weird ass timings i just adjusted until it worked.
template<uint8_t DATA_PIN, EOrder RGB_ORDER = GRB>
class WS2812C_280us : public ClocklessController<DATA_PIN, NS(375), NS(1875), NS(750), RGB_ORDER, 0, false, 280>
{
};

#define DATA_PIN 4
#define NUM_LEDS 875

CRGB leds[NUM_LEDS];

void setup() {
FastLED.addLeds<WS2812C_280us, DATA_PIN, GRB>(leds, NUM_LEDS);
FastLED.setBrightness(10); // Increased brightness slightly for better visibility
fill_solid(leds, NUM_LEDS, CRGB::Black);
FastLED.show();
}

void loop() {
// Theater marquee effects
theaterChase(CRGB(127, 127, 127), 50); // White, half brightness
theaterChase(CRGB(127, 0, 0), 50); // Red, half brightness
theaterChase(CRGB(0, 0, 127), 50); // Blue, half brightness

// Rainbow effects
rainbow(10);
theaterChaseRainbow(50);

}

// Theater-marquee-style chasing lights
void theaterChase(CRGB color, int wait) {
for(int a = 0; a < 10; a++) { // Repeat 10 times
for(int b = 0; b < 3; b++) { // 'b' counts from 0 to 2
fill_solid(leds, NUM_LEDS, CRGB::Black); // Clear all pixels

        // 'c' counts up from 'b' to end of strip in steps of 3
        for(int c = b; c < NUM_LEDS; c += 3) {
            leds[c] = color;
        }
        FastLED.show();
        FastLED.delay(wait);
    }
}

}

// Rainbow cycle along whole strip
void rainbow(int wait) {
// Hue of first pixel runs 5 complete loops through the color wheel
for(long firstPixelHue = 0; firstPixelHue < 5*65536; firstPixelHue += 256) {
for(int i = 0; i < NUM_LEDS; i++) {
// Calculate hue for this pixel
int pixelHue = firstPixelHue + (i * 65536L / NUM_LEDS);
// Convert HSV to RGB and set pixel
leds[i] = CHSV(pixelHue / 256, 255, 255);
}
FastLED.show();
FastLED.delay(wait);
}
}

// Rainbow-enhanced theater marquee
void theaterChaseRainbow(int wait) {
int firstPixelHue = 0; // First pixel starts at red (hue 0)
for(int a = 0; a < 30; a++) { // Repeat 30 times
for(int b = 0; b < 3; b++) { // 'b' counts from 0 to 2
fill_solid(leds, NUM_LEDS, CRGB::Black); // Clear all pixels

        // 'c' counts up from 'b' to end of strip in increments of 3
        for(int c = b; c < NUM_LEDS; c += 3) {
            // Calculate hue for this pixel
            int hue = firstPixelHue + c * 65536L / NUM_LEDS;
            leds[c] = CHSV(hue / 256, 255, 255);
        }
        FastLED.show();
        FastLED.delay(wait);
        firstPixelHue += 65536 / 90; // One cycle of color wheel over 90 frames
    }
}

}

Im pretty sure the timing is solid...

Excuse the webp image (and the quality), i despise them, but i cant be bothered to add video support to the site at the moment and the gif was like 18mb 😭

Im trying not to get too hopeful, but i was just looking through this github issue,
https://github.com/FastLED/FastLED/issues/1806
and someone mentioned about the timings needing to be in 125ns increments, which mine wasn't.

Even though he wasn't talking about the WS2812C-2427 or the WS2812C-2020-V1 LEDs that im using, i figured i dont have anything to lose by just increasing the values.

So i adjusted it to be 125 increments whilst keeping as close as i could to the timings that almost worked from the previous post, and it got better. Now just showing different brightness of the same color it should have been. So i increased the T2 timing more and more by 125ns increments until it wasn't glitched.

Im about to test it with some patterns from the adafruit library to see how it holds up, but i THINK i might have cracked it.