Studio has been dark. The BSC.

I have not been shooting anything the past 2 weeks and it is driving me up the wall. I am hoping to correct that in the next few days, but the past couple weeks I have just been super busy.

Bread-board prototype of the BSC (Biolapse Studio Controller)


I have not been sitting on my ass though. I a building another Project3 robot for a client that wants a plug and play dragonframe moco system. I have also been busy working on the BSC (Biolapse Studio Controller), and it is shaping out to be a beast, and I cant wait to get it finished and in the studio. This is going to be a direct replacement of the older BCM (Biolapse Control Module) I have been using.

On the tail end of my last shoot, the BCM started failing to shut off the grow light again. I think it is just getting old. I have already replaced the arduino and the relay, the wiring inside it sorta sucks, as I really just threw it together. It has served me well the last several years but it is time to replace it.  This weekend I plan to pull it apart and replace the internal wiring, I have already replaced the relays and the arduino, it has to be the shitty prototyping board I used to make some connections.

For those who are wondering, the BCM is a fancy intervalometer that coordinates the lighting system and environmental controls.  This next version is going to be a heavy upgrade on all levels. The BSC will be built like a tank and should get me by for the next 20 years.

Warning, I am about to get nerdy on this one. 

I have several upgrades planned.

  1. I am moving away from mechanical relays to solid state relays, and rather than just having four, it will control eight. These are much higher quality than the cheapo Sainsmart 4 channel relay that I had been using,  and being solid state they do not have any mechanical parts to wear out.
  2. Custom made circuit boards. The old BCM uses one of our chronocontroller boards hacked in with a blank prototyping PCB for the connections. This is where I think a lot of the problems stem from. Using a new PCB instead of jumpers for those connections will keep things nice and tidy and more reliable.
  3. Assignable switched outlets. The current BCM uses four relays, each has a specific task, one handles the Grow lights, one for the fill lights, another for the humidifier, and the last for a heater. They are hard set for these functions, and if i want to change them I have to re-write the code. The new BSC will have eight switched outlets that can be assigned for different purposes.  Lets say I am using one of the relays to provide power to a heater in switched outlet 1, if it starts having problems I can just move the heater cable to outlet 2 and reassign the heating function to that outlet and continue with the shoot, and then pull the BSC apart and replace that relay afterwards.
  4. Switchable Dual Power Rails. Like the fist BCM, this new one will also sport dual power rails, one that can connect to a battery backup, and one without the battery backup. I use this already as if there is a power outage I don’t want the grow lights sucking up all the battery power, I want to reserve the battery power for the fill lights, camera, logic board, etc. The humidifier, heater, grow lights, none of these need battery backup, if they shut off for an hour it is not going to cause any problems.  On this new BSC each outlet will have a toggle to take them from one power rail to the other, where as the BCM had them hardwired.
  5. I am adding function groups to cluster several relays together for specific functions.  So i can assign outlet 1 through 4 as grow lights, 5 and 6 as fill lights, then 7 for the humidifier and 8 as a spare.  When using the manual relay function to turn them on and off, 1-4 will all turn on and off together.
  6. Extra functions.  Right now the BCM only controls 4 relays to cover Grow lights, Fill lights, Heater, and Fogger. This will be expanded to include the ability to control a Cooler, Dehumidifier, Pump, etc.
  7. 3 Day/Night zones. Controlling multiple grow light ones for up to 3 different day/night times for different zones to accommodate shooting on multiple sets and being able to meet the requirements for various plants.  I might have one that stays on 24/7 for filming flowers blooming while another one works with 12/12 hour cycles for a plant, and the 3rd doing 16/8 for another. All these would still be disabled before shooting.
  8. Improved display and control setup
  9. Multiple triggers with assignable skips.  When filming a Nepenthes I like to keep my intervals at an hour or longer, but when filming flowers 10-15 minutes is better. I plan to give it 8 camera trigger ports, of which can be set to only trigger every X amount of shooting sequences. With this, I can film Nepenthes at 1 frame per hour, while I film 6 frames per hour on a flower.
  10. Metric output. Every time the system runs an event it will log the data to a terminal session on a computer.  This will help with debugging in case any issues arise.
  11. Interval ramping. I like the idea of gradually increasing/decreasing the intervals between frames. This can be used to adjust the capture speed without making an obvious change in the rate of growth, it also would allow for some interesting effects as well.
  12. Physical Build is going to be far more substancial, everything from the upgraded Arduino to the upgraded solid state relays, to the Server Chassis I will build this one into. This is going to be a heavy duty overbuilt beast.

Everything above has already been coded in, and now that it is starting to shape up I have to make a few final decisions before having the PCB’s manufactured and delivered.

A couple other ideas I am considering

  1. Adding a light sensor to monitor and ensure that a light has in fact shut off before it takes an image. When running into the issue with the BCM not shutting off the grow lights, it does not always fail and continue to fail, sometimes it only fails for a single frame.  By giving it the ability to make sure the light has shut off, it something sticks it can pause and try to turn the relay on or off multiple times to see if it can “jiggle it free”, then take the image and resume.
  2. Pump control. I already have this in the first BCM, but most never use it. It may be worth adding in to automate watering.
  3. Optional audible warning pre-trigger.

Project3 Final

Well Project 3 is done, and I’m calling this one Finn.

(Note, these are NOT real time speeds, this routine was shot as a timelapse with 10 second intervals on both robots)

This one was a real pain in the ass due to some errors I made. I wanted a nice finish so I spent quite a bit of time cleaning the aluminum and prepping it to be painted. Even after hours of prep, once the paint dried some of it immediately flaked off.  I decided to give my hand a powder coating, which is not something I have ever done before, but first I had to strip it back down to the metal. I picked up some excellent paint stripper from Ace Hardware, which also melted the gloves I was using and gave me some minor chemical burns. I found the best way is to use long pliers and some steel wool.

I picked up a powder coating system and practiced on a couple pieces of scrap metal and it worked great. It is not a pro-grade job for sure, but considering this was my first attempt at it, I feel i did pretty good. Just make sure you have a good hobby oven for this sort of thing. I have a convection oven i use for cooking circuit boards which was perfect, just sit the grate at the very top and hang the pieces from it.

Unfortunatly when I took the Pan/Tilt frame out of the oven, one of the welds broke loose. The motor mounts were not going to come off, so I had to either order new motor mounts and delay the process, or strip it all again. So I learned that paint stripper works well with powder coating as well. A few more minor chemical burns later, I cleaned it all up, re-filed the areas for the weld, and re-welded it. This time it is very solid though, once it cooled down I wrenched on the parts trying to break them loose and they are not coming apart. re-powder-coated it again, and this time I was golden.

The final build went pretty easy. I did have to re-tap some of the screw holes where the powdercoating got in, but that was not a big deal.

The  BDIU (Biolapse Dragonframe Interface Unit) was sort of a pain in the ass. I wanted to have some sort of port in which to plug the motors, so i marked out some lines, drilled some holes, and used some files to shape the holes into rectangles. Drilled a spot for the power supply and another one for the USB and then powder coated it.

I decided to attach the box underneath, but this box could easily have some feet stuck on the bottom and be perfectly sitting on a bench or set somewhere.

The connections are stupid easy.  Add a 12v power supply (preferably 6amp, but right now its running just fine on a 2amp channel off the 12v power center I built for my studio) and a USB cable to a computer running Dragonframe and presto, instant motion control for timelapse or stop-motion animation.

I admit, the rail is a bit short, 400mm of travel. But for this kind of work longer sliders just get in the way.

So if anyone is interested in one of these, After doing the entire build, i would be happy to build them for $1500 a pop for a 4 axis system, any color you want. That would include slide, pan, tilt, and linear.  The specs would be custom to your needs and built to order. Price may or may not go up depending on the requirements.  If interested shoot me an email.


This time lapse is a failure. 

But even as a failure, it is the most important timelapse I have done to date. The subject is a Nepenthes Sanguinea.

When I started to film this plant, I had a rough guess as to how the plant was going to behave. I have a lot of trash footage, because unfortunately as much as I want to predict the plant, they often have a way of surprising me and either growing out of frame, or out of focus, and when that happens the entire shoot is trashed. The longer the shoot, the bigger the risk of failure, and the larger loss of time.

I have been working on a technique I call Interactive Timelapse, which is a technique that allows me to follow the plant, so if it grow outside the area in focus, I can make live adjustments on the fly and continue to film. An entire year of building Otto, learning Dragonframe, working out the bugs, improving my workflow, and learning how to resolve issues mid-shoot has led up to this failure of a time lapse, and I have never been so excited about the work I am doing.

First off, thanks to the team at Dragonframe, all the bugs are finally worked out. Otto is running perfectly. A huge thank you to Dyami for his time and energy in helping me resolve these. Once Otto was finally running 100% rock solid, I was finally comfortable to take filming to new lengths and increasing the intervals to an Hour and longer.

This one first failed about 240 frames into the shoot. I was filming the closest pitcher with the intent to move the focus to the tip on the growing leaf, then follow it through its entire pitcher development. Around frame 240 the “nub” drifted out of focus. So I stopped the routine, moved Otto about 20 frames ahead, corrected the focus, then moved back to the last frame taken, and re-started the system.

It failed again about 50 frames later, same type of issue, same type of fix. And then again right before the nub makes contact to the ground, I had mis-predicted the location it would land and had to make more adjustments. After the pitcher was growing, the grass it landed in ended up pushing it to grow away from the camera, so another focus adjustment.

All of these were corrected, so why is it a failure? My stupid BCM failed to shut off the grow lights after 3 weeks and I got about 20 frames in a row where the grow light contaminated the images, that one I can NOT recover.

However, this is a proof of concept that I CAN in fact chase plants, respond to realtime changes, and alter the program on the fly, and to my knowledge this has never been done before. 

This is a preview of things to come.

Project3 Part 3



I need to come up with a better name. But so far it is moving along wonderfully. I had to make some part adjustments, the list is NOT updated as of Aug/24/2017. I will get around to that when I have more time.

So when we left off last time, most of the parts were in, and the Pan/Tilt frame was welded together.

The motor mounts were installed next, and that was a bit of a pain in the ass. I wanted to weld them on but the welds did not take. I think it is a different kind of aluminum. I ended up squishing one of the mounts in the process, so I went the old school route and bolted them on. The easiest way is to mark the holes and drill them through BOTH sides of the frame. That gives you a small hole for the hex wrench to go through to reach and turn the 6-32 screws. Once those were in place I used some aluminum epoxy filler to fill in the holes. To make sure the screws did not back out I used locktight on the threads and covered the screw heads in the aluminum epoxy.

As for the placement of the mounts, I just sort of eyeballed it.

You can see the epoxy on the frame in the previous picture, it is covering the holes drilled in the frame used to tighten the screws to the mounts.

The frame was painted with just your typical metal friendly rattle-can spray paint. I chose gloss white for this project.

I spent quite a bit of time cleaning the aluminum and prepping it for paint, yet i still have a couple tiny areas that flaked. I might strip all the paint off and try out powder coating.

The cradle was made from a couple pieces of 2in x .25in aluminum bars. I cut them to the desired length, then held them together with some 90 degree clamps and drilled/tapped some holes to join them together.

Now that part is out of the way, I wanted to get the head mounted to the rail.


The extrusion has slots with some bolts in it, makes for an easy connection.  I took a 2x2inch x 1/2 inch piece of aluminum and drilled some holes in it. 4 bolts facing down to connect to the anchors in the extrusion, and then 4 6-32 x 1 inch screws facing up into the larger hub clamp.

Easy enough. All of this can be done with a few bits and a drill press, just gotta make sure to countersink the holes so the heads recess under the surface. I did go ahead and add a hole in the middle that you cant see with a 3/8th inch tap so the pan/tilt can mount direct to a tripod.

This bracket gives a nice solid connection. My intention was to make this a 2 part connection, with the Rail mounted part using a 3/8th inch screw post, with a small 1 inch tall x 1.5 inch wide round base on the head with a 3/8th inch tapped hole. That way i could unscrew the head anytime i wanted, and even install a leveling plate in case I wanted to hold the rail at an angle. However I had one of those HOLY SHIT moments when cutting some 1.5inch aluminum stock. The piece I was cutting off ended up getting sucked up into the miter saw with a nice gunshot sound. So now my diablo aluminum blade is jacked up. This is the 2nd blade I have managed to destroy,  and at 60 bucks they are not cheap. 🙁

I wanted to get this mounted so I had to improvise with what you see here.

I am super excited about how this project is turning out.  I have to pick up a new aluminum blade so I can make the connection plate beneath the rail so I can connect it to to a tripod. Unfortunatly the extrusions walls are too thin to just punch and tap a hole, I’ll need a thicker plate beneath it and then secure it to the rail via the channel connectors.

Things I still need to work through

I am not overly happy about the paint. I spent quite a bit of time prepping the aluminum and it is already chipping in some spots. Being a studio queen, this would probably be fine and look great for years, but I would rather try to tackle this issue sooner than later. I have been reading up on powder coating, and I think that may be the right way to go.

The problem with avoiding expensive CNC mills on this project is that the holes for the bearings are limited to the size of the bit. if using a CNC, i could measure these in a few thousandths of an inch and get a nice tight fit. When looking at the photo, you may be able to tell that things are not perfectly held at 90 degree angles. I am looking into some possible shim ideas to tighten these up a bit.

The Pan/Tilt got pretty heavy with these motors. This is not really a problem, but the motors are a little bit overkill for this project. I think next time some heard NEMA 11’s would be more appropriate.  Aside from that, I am very pleased with how this is going 🙂

Electronics mount.
I still need a place to mount the Arduino and driver board. I have not picked out a box for it yet either.


Overall current impression
I have to admit, I am very pleased with how this is going. It looks fantastic, and once I get the rest of this dialed in i have no doubt this will be a very capable system and a wonderful addition to my team of photography robots. The bearings are nice and smooth, everything is held together nicely, and I cant wait to fire it up, I just have to get the tripod connection worked out first. This will probably actually be a 6 axis robot, if I can get both focus motors mounted for Focus and Zoom control, and then I plan to have this system drive a turntable as well.
So while it is not perfect yet, by the time I am done with it this will be a rock solid little robot.

Heads up, if there are any animators or timelapse photographers that are interested in a dragonframe moco rig like this please let me know. I hope to have enough information here where an enterprising person might be able to build their own, and if somebody wants to try I am always willing to offer assistance. However, if somebody wants one of these pre-built, that is also a possibility. Cost for a complete dragonframe ready system would be about $1200+ depending on rail length, any extra design considerations, etc.  Email me, and we can discuss it. Turnaround time is not fast (2-4 weeks depending on part availability and my schedule), but I would keep you in the loop on the progress of the build. 


“The Holy Grail”

“The Holy Grail” is a term often used among time lapse photographers when referring to complete day to night transitions.  These are notoriously difficult and time consuming to pull off. When I first started this weird hobby of filming time, there were very few of these done. Now-a-days with the introduction of many new intervalometers and software programs aimed at de-flickering, you can find quite an abundance of very well done day to night transitions.  I admit, I have never successfully done one. But my interests lie elsewhere. More on this subject later.

There is a certain amount of technical difficulties I expect when working with these sorts of systems. Especially since most equipment was not meant to be run days/weeks at a time without a break. Most of the issues I have worked through, but two of them had been plaguing me off and on ever since I built Otto and started using Dragonframe. The first issue is when the camera shuts off for no reason, and the second is when it fails to capture an image.

Both of these finally appear to be resolved, if you want more on this check my Dragonframe Troubleshooting page. Top menu, Robots > Dragonframe >  Dragonframe Troubleshooting


Those last two issues were holding me up. I was hesitant to start longer term work until I had everything worked out.  (this is the reason for all the flower timelapse I had been doing, short shoots, low commitment) Now I have a high level of confidence that the system is working properly, I am able to start doing the things I always wanted to try.

There is not a lot of botanical timelapse work out there. Generally all you find are flowers blooming, or grass growing. You find other plants, but it is often really shitty work with lots of flicker and jumps and such done by a webcam as a novelty and thrown up on Youtube low res.  You do find some folks doing stuff similar to what I am doing, and some of it is quite impressive for sure! I have seen some excellent set building and some amazing results. But the motion is still normally very limited to basic moves, a turntable, a slide, not much else. The duration of the filming is often measured in hours with quick growing plants, spanning a few days, seldom breaking a week.

Botanical Timelapse is pretty difficult.  First you have to be able to predict the plants, which seldom behave. Filming a flower blooming over the course of 8-9 hours is chalk full of challenges, but filming a flower for a slower 2-3 day bloom has a much higher chance of failure.  If you go more than a few days, depending on the plant you may have to introduce day/night sequences which makes it even more difficult. You might film for 4 days and screw it up by watering the plant incorrectly which may cause an unwanted jump in growth.  Adding Motion Control increases the complexity and increases the potential failure points. Not only does your lighting have to work, and camera has to work, but even if those work perfectly if your MoCo fails the whole shoot is ruined and days of effort are down the drain.  I think this is why most motion control you find with this work is limited to a turntable. If the subject is in the middle and growing straight up, it will probably stay in focus.

What about plants that grow differently though? If the plants growth takes it out of the area in focus, you have to be able to predict it and work with it, which requires a more advanced Motion Control system that can handle focus control as well as Keyframing. Then you are playing the game of “I hope the plant grows as I predict”, and you pre-program the camera motion and start it up and hope that the plant behaves as expected. If the plant overshoots/undershoots, then you just wasted days or weeks of shooting.

Correcting Bad Behavior

This is where Dragonframe brings something amazing to the table. This is the only system I am aware of that gives you the ability to observe/react/respond real time to changes in the plants. And that is exactly what I am doing right now with my current shoot, and to say I was excited about this is an understatement.

In my current scenario. I started out by moving the camera to its starting point, and logged its current position which created its first keyframe. I then moved the camera to the next position and logged that, then the next, and the next and so on until the entire move was mapped out. I then moved it back to the first position and checked the focus, and moved it forward along the path on each keyframe, and between the keyframes checking the focus, and anytime it drifted I would make an adjustment and add a new keyframe for just the focus.

I am shooting a leaf on a Nepenthes(Pitcher plant). This leave shoots way out, and the tip starts to grow and reach to the ground, where it will land and the tip forms a pitcher. I don’t know exactly where it will be so I am doing a rough guess with the motion sequence.  I have been filming the past 7 days, and periodically check the progress. Last night I noticed that the pitcher was moving further out than I expected, and the angle of the leaf is starting to pull the pitcher bud out of focus. If I let it continue, the shoot will be ruined, and I would have lost a week of filming.

On the left of the screen is the X-sheet where I can add notes and stuff about any corrections I make so I know where to look afterwards.

At the moment, I was at frame 210. The last image had been taken 5 minutes ago with 40 min left until the next image is taken. I stop the routine and apply a new keyframe on the focus where it is currently at to lock that position down, then move the camera to frame 230, which is the position it will be after 20 more frames. I then adjust the focus, and them move up another 60 frames to frame 290, and do the same. Once I feel I have corrected the course for the focus, I return the camera back to the position for frame 210 and verify everything lines up correct on the live view vs the last image taken at frame 219 and re-start the system at frame 219.

I can correct for the plant, in the past, I was stuck making the decision of hoping things correct themselves, risking losing another 5-6 days of shooting, or scrapping the whole shoot and lose the last 7 days of filming.

Recovering disaster

This morning I checked again and the pitcher had started its downward drop to the ground. It was placing it in a spot where it would land slightly out of frame. The current path was going to continue a slight tilt drop, But I was worried it would not be enough. I stopped the system, locked in a new keyframe at its current spot. Then moved about 60 frames in the future and sure enough the tilt was not enough, so I deepened the tilt until the area the pitcher would land was in frame, saved the adjustment, then moved back to the current spot. And that is when things went to hell.

The Z axis started dropping, and the Y axis started pulling in. Both were moving very slow but they WERE moving and I never told it to. I immediately disabled the stepper drivers to stop the motion, and in the ARC motion page I managed to get the motion to stop. I knew all the other motors had returned to the correct spot, it was only the Z and Y that had moved. I hit the button to return the motors to the current position and re-enabled the stepper drivers.  I manually moved Z and Y until they were lined back up at what looked like the correct spot. This took a little bit of back and forth looking at the current position and prior until I had everything in place. Then I disabled the drivers again, told it to return to the shooting position, and re-enabled the drivers. Now everything was back where it was supposed to be, the shoot had not failed.

I don’t know why Z and Y did what they did. But it only took about 5 minutes to correct the mistake, and I re-started the program. I ran a test shot and verified that everything was lined up fairly well. There is a tiny slight bump, but it is difficult to notice and can easily be corrected using the warp stabilizer in Adobe After Affects.

The shoot is saved, and currently things are moving along smoothly. Making these adjustments is always risky, and should never be done arbitrarily, but only when absolutely required. But even when the Z and Y axis started running free I was still able to recover the shoot.

I hate the term “game changer” because that is used so often. Oh this camera has a slightly higher FPS than the old version, what a freaking game changer. In this case though, it is not hyperbole, because this level of botanical timelapse would be impossible without the flexibility of Dragonframe.

This shoot has 2 weeks left before it ends. If the pitcher develops quicker or slower than expected I can adjust for that. When it gets towards the end, I may even pull the camera back a bit and shift over to one of the two smaller pitcher plants on the set and see if one of them has a new pitcher forming that I can film and maybe even the other small one as well, all in the same clip! The point is I now have the ability to film things as they happen, rather than pre-programming a move and hoping it all works out. As far as I know, nobody has ever done this before.

So what does this have to do with the “The Holy Grail”? ‘

I remember when I first started getting serious about photography 8 years ago I heard a quote. I don’t know who first said it, I believe it came to me as a re-quote, but one of the best bits of advice in life is “If you ever find yourself surrounded by other photographers, you are in the wrong spot” I have found that quote to be absolutely correct in so many ways, in so many times, and so many subjects, and well beyond photography. Find your own path, find your own vision, find your own self. This is my personal holy grail. This is the capability I have spent the last year trying to achieve, and It means I will be able to produce botanical time lapse unlike anything that has ever been done before, and show people something they have never seen.   I am so close!!!!!

Stay tuned!


%d bloggers like this: