FreeCAD is an open-source parametric 3D modeller made primarily to design real-life objects of any size. Parametric modelling allows you to easily modify your design by going back into your model history and changing its parameters.
Designed a case for a measure tool, I’ve printed a case for a while ago.
What are my thoughts : I like it, I like the setup, workbench and the fact that you can edit every step again.
I’ve made a script to view the camera using vlc. But it was much work. Now I’ve installed the HACS Bambu integration in Home Assistant. Much easier to get an image.
While Bambu studio is nice, I started using FreeCad. I still use OpenScad and Blender, but I really try to use a CAD program for modeling 3D prints (technical prints). For sculpting I still use blender.
Add filament and print model (after calibration process)
All fine and dandy, problems? Check YouTube for solutions.
What do you know about 3D printing?
People are forgetting about the knowledge to get at this point ..]…
How does it work, what is needed?
My first 3D printer. Lets compare:
Get printer in parts
Assemble
Calibrate
Manual bed calibration (*) 5 point calibration step by step, needs user input
Test print
Fail several times
Try different sticky methods (hairspray, double sided tape, gluestick)
Bed warping? Add tape to underside
Feed filament by cutting at 45 degree angle and manual feeding.
Load and unload using buttons and feeding until previous color flushed
Learn about Gcodes
color changing? split part and pause manually, switch manually.
out of filament, problem with printing? start the whole print again
no out of filament detector, no temperature failsave
Filament error? Start again or split gcode by hand and superglue parts
Clean plate, clean head
Manual change temperature of head and bed when problems arise
Using multiple software tools to design and slice
Put your gcode on a sdcard to print, or later via octoprint
Every next print start at calibrate in above list.
What did you learn? How your machine works and reacts. Fix extruding problems, temperature, filament wetness, starting layers. Difference between PLA, PETG, ABS in great detail. Learn to wait Troubleshooting in general
Never forget where we came from! 40 years old, but getting available to the masses after 2000.
Having my own business means having a more professional electronics lab is a must. So I’m moving from the attic to our outside workshop. That also means I have to make our Music Studio smaller.
So moving, printing a lot on my new 3D printer and designing EuroCards.
Part of the Address decoding eurocard with din41612.
Above card will hold two address decodes parts, selectable using jumpers. ( Old skool TTL using 74xx and a new solution using ATF22V10.
We like Low Poly models, so I printed one using marble PLA.
In the back my 100yr old highhat from my Grandfather (moleskin)
I’ve cleaned my old 3D printer, and I am planning to convert this printer to a 2D plotter and a CNC machine.
I’ve already printed a pen holder and a dremel holder. (The filament head will be removed)
I’m working on a Gcode writer to plot drawings using a pen, or using a Gyro-cut knife to cut paper. And the biggest project using this old 3D printer, a CNC machine!
Test Code:
import time
import serial
arduino = serial.Serial('/dev/ttyUSB0', 115200, timeout=.1)
# Motor stuff
arduino.write(str.encode("M84 X Y Z S12000\r\n"))
arduino.write(str.encode("M92 X160 Y160 Z800\r\n"))
# Extrude fix
arduino.write(str.encode("G92 E0\r\n"))
# Go home
arduino.write(str.encode("G28\r\n"))
# Move to x,y,z
arduino.write(str.encode("G1 Z90 X50 Y50\r\n"))
# Wait
arduino.write(str.encode("M400\r\n"))
Sin wave fun:
import time
import serial
import math
from time import sleep
arduino = serial.Serial('/dev/ttyUSB0', 115200, timeout=.1)
arduino.write(str.encode("M84 X Y Z S12000\r\n"))
arduino.write(str.encode("M92 X160 Y160 Z800\r\n"))
arduino.write(str.encode("G92 E0\r\n"))
arduino.write(str.encode("G28\r\n"))
arduino.write(str.encode("M220 S100\r\n"))
arduino.write(str.encode("G1 Z10 X60 Y60\r\n"))
arduino.write(str.encode("M400\r\n"))
sleep(10)
count = 0
while True:
newx=(math.sin(math.radians(count))*50)+60
newy=(math.cos(math.radians(count))*50)+60
newz=(math.cos(math.radians(count))*10)+20
count = count + 1
mystring="G1 Z" + str(newz) + " X" + str(newx) + " Y" + str(newy) + "\r\n"
print(mystring)
arduino.write(str.encode(mystring))
arduino.write(str.encode("M400\r\n"))
# Not waiting for answer yet
print(newx)
sleep(0.1)
I was making a re-arrangement of a bagpipe tune. Designing a blender 3D printed light box. Cooking a Mexican BBQ dinner. Visiting a textile place with old and new weaving looms. (Which gave me some great ideas). And working on my 68000 computer.
A great weekend.
No embellishments yet, and no lights in de blender logo.
My little record player project is also in the picture, I need to re-print the parts using my new printer!
I used MCE to control some Windows VMs and programs running in it in the past. (Below link and a web interface engine which on the backend converted BWW/BMW (bagpipe music files) to PDF automated comes to mind)
Controlling a Windows VM using MQTT, very nice! (Use HA mqtt or mosquitto_pub in bash)
Question: anyone got a better solution to control programs within a VM? Let me know.
Next:
I’m creating a new case for my Wemos, LCD16x2, button, Led, Buzzer project (see other post)
I’m redesigning my previous case in blender.
But I really miss something like a generator function for different cases, like the one I made using Openscad. Question: Anyone know a tool/add-on to generate cases? I used a model of a wemos to get the usb connector/screw holes in place.
In the past, I’ve controlled some blender lights using python and MQTT. But now I’m trying to control it using DMX.
Example of lighting in our living using mock-up couch and tables.
I found a cool add-on called Blender-DMX. (B.t.w. wled can also use DMX)
Looks cool but, can I make a floorplan with this?
Blender add-on configuration
In Home Assistant I used a HACS add-on called : Art-net LED Lighting for DMX
Configuration can be done in configuration.yaml
light:
- platform: artnet_led
host: BLENDERHOSTIP # IP of Art-Net Node
max_fps: 25
refresh_every: 0 # Resend values if no fades are running every x seconds, 0 disables automatic refresh
node_type: artnet-direct # Which protocol to use
universes: # Support for multiple universes
1: # .Nr of Universe (see configuration of your Art-Net Node)
send_partial_universe: True # Only send the universe which contains data
devices:
- channel: 1 # first channel of dmx dimmer
name: dmx_dimmer_rgbw # name
type: rgbw # type
transition: 1 # default duration of fades in sec.
channel_size: 8bit # width of the channel sent to DMX device, default "8bit", "16bit", "24bit" and "32bit"
channel_setup: Wrgb # This is the magic to get colors correct
It works, but I’m not happy, anyone got a better solution?
And I have to check out GDTF profiles for fixtures.
At a later stage I’m going to 3d print a white floorplan about 1cm high, with LEDs and buttons. A floorplan you can hang on your wall.
"If something is worth doing, it's worth overdoing."