Yes, I designed the chassis myself, it’s still in development, it’ll be finished hopefully soon.
I haven’t decided whether I’d commercialize it or not, it started as “I want to own a saber of my own design”, since the only other saber I’ve ever designed, I gave it away to my now ex girlfriend, that’s how life goes, right?
Having said that, it’s a very expensive chassis, I’m using Shapeways for the 3D prints and in parts alone, the cost hovers around $2.5k.
Also it’s a very advanced build, comparable to Martin Beyer’s Metal Origin Chassis.
The chassis is designed for and inspired by the Model X/Y Canon flashes, though I’m trying to make it work with Graflex flashes as well, we’ll see.
I’ll be bothering professor more and more with the things I want to implement in this chassis, so I’ll be posting more pictures and videos as I get closer to the finish line.
Again, thank you!
I’m completely in love with my chassis, however, as the creator, I’m extremely biased , so it’s good to see others find it to be a cool design as well!
from PIL import Image, ImageDraw, ImageFont
import numpy as np
# Parameters for the animation
num_frames = 150
duration = 5000 # duration in milliseconds
text = "ProffieOS"
font_size = 60
image_size = (1024, 1024)
# Create a blank base image with a space theme background
base_image = Image.new("RGB", image_size, color="black")
draw = ImageDraw.Draw(base_image)
# Draw stars in the background
for _ in range(100):
x = np.random.randint(0, image_size[0])
y = np.random.randint(0, image_size[1])
draw.point((x, y), fill="white")
# Load a font
font_path = "/path/to/your/font.ttf" # Replace with the path to a suitable font file
font = ImageFont.truetype(font_path, font_size)
# Get text size
text_width, text_height = draw.textsize(text, font=font)
# Calculate position for centering the text
text_x = (image_size[0] - text_width) / 2
text_y = (image_size[1] - text_height) / 2
# Function to create a single frame
def create_frame(base_image, frame_num, total_frames, text, font, text_x, text_y):
frame = base_image.copy()
draw = ImageDraw.Draw(frame)
# Calculate pulse effect
pulse_intensity = 128 + 127 * np.sin(2 * np.pi * frame_num / total_frames)
# Draw text with pulsing effect
draw.text((text_x, text_y), text, fill=(int(pulse_intensity), int(pulse_intensity), 255), font=font)
return frame
# Create frames
frames = []
for i in range(num_frames):
frame = create_frame(base_image, i, num_frames, text, font, text_x, text_y)
frames.append(frame)
# Save as GIF
gif_path = "ProffieOS_boot_screen_animation.gif"
frames[0].save(gif_path, save_all=True, append_images=frames[1:], optimize=False, duration=duration//num_frames, loop=0)
print(f"Animation saved to {gif_path}")
Yes I was on my phone. I prompted chat GPT to use dall-e to make me "a 160x80 pixel boot screen image for a lightsaber OLED display featuring some sort off space theme with the Main focus on text saying “ProffieOS” .
I used one of the images posted earlier, added a wipe and put it on the top layer during startup. The second layer is the battery monitor in the lower right corner. The crystal animation is the same as before.
Since these are all separate files and on separate layers, it’s super easy to change anything out for something else.
Also, I’ve uploaded everything I have so far to github:
it doesn’t work if I put these files in the font that is used on boot. I have to wait until the display is initialized, and then switch fonts, and then it works.
switching presets doesn’t reset the display, whatever file is playing keeps playing, which is not really how it should work.
The cool part is that these bugs are high-level bugs that weren’t easy to see or fix until the rest of the system was working fairly well. Once these bugs are fixed, we might be at a point where we’re going to need more people trying it in order to find out what’s left to do.
Ok, so these two bugs are fixed now, which I think means that color displays are semi-ready for people to start using them, at least in an alpha-testing kind of way.
Hi, sorry for the late reply.
I’ve taken time to try some things about sparks, but not convinced about the results I can have. I definitely miss tools and skills to make this cool/realistic, particle system is a hard path.
I can try particle effects which can improve the flash effects. The cristal as emitter “propels” particles that are catch from top like a vacuumed energy. I think it can looks better than these ligthnings ^^.