As part of my efforts to accurately model Lego bricks, I need to visualise the finer features of Lego pieces and measure various dimensions accurately.

Googling for “excel timecode” didn’t produce any results which met my requirements:

  • support 29.97 drop-frame SMPTE timecode
  • calculate a duration given an in-point and out-point
  • provide conversion to and from timecode, frame count and microseconds
  • not based on Excel macros so that the solution can be easily redistributed

Because of this, I am pleased to present a solution which does meet the above requirements:

I have moved on from learning basic part design and scripting in FreeCAD and now want to tackle assemblies.

Following on from my previous post, Building FreeCAD with 3DConnexion Support on macOS using Conda, this post presents similar instructions for building the very promising Assembly3 Workbench for FreeCAD.

Again, I wanted to use the latest source AND use a 3DConnexion SpaceMouse on a MacBook Pro. Using Conda and the Conda Forge feedstock for FreeCAD makes this a scriptable, repeatable process.

My first serious microscopic soldering project took place over the weekend!

An Intel NUC had been prised open during a baggage inspection. Thanks TSA!

As a result the fan connector had been torn from the PCB.

I’m not saying it was a nicely executed repair, but the NUC does now work… Identified areas for improvement:

  • an improved solder flux situation: my 0.2mm solder didn’t want to flow onto anything, the thicker solder dumped a pool of flux eveywhere.
  • an improved glueing mechanism: again, I ended up with a pool of super glue…
  • improved software settings for the microscope’s USB camera: the photos don’t do justice to the stunning clarity I had through the eye pieces.
  • a PCB cleaning mechanism.

Presented here is a somewhat terse step-by-step guide to building FreeCAD from source using Conda and the Conda Forge feedstock for FreeCAD.

I need to do this to ensure I can run the latest FreeCAD code AND use a 3DConnexion SpaceMouse on a MacBook Pro.

I finished the DIY fit-out of my lab/office/study late last year.

A lot of planning and design was done before I started cutting into flat-pack furniture with the circular saw.

I’m very pleased with the result. This is a good thing as I’ll be spending a significant portion of my life for the coming years here.

I’ve been developing a FreeCAD macro for a while with the following aims:

  • Get to grips with FreeCAD and parametric modelling concepts: sketches, constraints, datum planes etc.
  • Learn Python and use it for FreeCAD scripting

To really push the boundaries, I challenged myself to use Python scripting in conjunction with the PartDesign workbench: I wanted to end up with a parametric model fully based on sketches and datum planes.

There are several limitations when referencing items in FreeCAD via Python script. This includes needing to reference Part items such as edges and faces by name, whilst the names are liable (and likely) to change each time the model is modified.

There are also a number of exposed native methods in the Python scripting layer which expect (rarely documented) integer based constants. In this post I collate what I’ve learnt about these constants for future reference.