Hi all,
I get a lot of questions about how decisions about Kinograph’s design are made. I’ve mentioned it here and there what the priorities are and how I try to maintain adherence to a few basic tenets, but I’ve never gathered them in one place, explicitly. This is a rough draft of my thoughts after a long week so it should not be considered complete and will be refined through discussion with you all here.
You will notice his is more about process than specifics. I think that’s an important place to start. Anyone who has read more than 10 posts on this forum will see that there are a lot of opinions on how/what Kinograph should be. That’s a good thing, but it can also be maddening. What I am attempting to do in this draft is define a way of working that embraces a wide variety of opinions while also moving forward at a steady and consistent pace. Our process should welcome all voices, and respond with one.
What follows as the start of an ongoing, open discussion. I would love to hear your thoughts.
Outline:
- Philosophy
- Principles
- Process
- Current design goals and specifications
Philosophy
All cultural heritage is inherently valuable.
All collections should be accessible and the Kinograph is designed to be affordable and reproducible for anyone in the world. Where financial help is needed, we will help with fundraising for a Kinograph. Get in touch if that’s you.
Communities of cooperation are the strongest tool we have for saving and sharing cultural heritage.
Companies and governments come and go, the people always remain. By sharing our resources with one another and reaching beyond the limits of private interests we can safeguard the future of film heritage securely.
Mutual Abundance and Generosity of Spirit.
Sharing our knowledge, skills, and resources encourages others to do the same. When we greet each other with respect and openness, in knowledge and in identity, we create a spirit of generosity. This abundance is mutually available to all who uphold these same values within the community. What I have to give I give to you knowing that the community will give back to me when I need it.
Principles
These ranked principles help guide our decision making process in every aspect of Kinograph. It’s a way for all contributors to frame a conversation around a an idea, feature, or design when there is more than one option. When faced with a decision, we can look at each of these (in order!) and ask ourselves: “How does option A affect the cost?" When we have done this for each principle for each options, we usually find that one option starts to reveal itself as the solution. It’s not always perfect, but it usually helps keep the conversation on the right track which isn’t always easy.
It’s a dance of compromise, but in general, these are the tunes we dance to:
- Affordable: The Kinograph design should be financially accessible to as many people as possible. Where expensive options are available, the design should also be able to accommodate inexpensive alternatives (e.g. cameras, PCs, etc).
- Flexible: The Kinograph design should be easy to modify and improve. Components should be designed modularly so that they are not dependent on one another.
- Accessible: Kinograph design should be easy to build, assemble, and operate. No special skills, tools, or knowledge should be required.
- Repeatable: any customized parts should be able to be reproduced using common technology widely available throughout the world (e.g. 3D printers) without special training or certification. Where there is no access to technologies required to produce parts, the community is encouraged to provide parts by mail. While Kinograph has no policies on how these transactions should or should not be monetized, we encourage all participants to act in according to our philosophy of generosity and abundance as much as possible.
- Good enough: While Kinograph aims to provide a high quality result, we recognize that the definition of “good enough” varies wildly. As our philosophy states (see above), the Kinograph design prioritizes accessibility of content over preservation or perfection. Our mission is to make visual heritage available with a low barrier of entry financially and technically.The official design may not be up to the standards of some, but its flexibility will allow it to be modified to meet the varying needs of every user.
Process
Kinograph’s design is made to be hacked, changed, altered, and extended by its users. Many minds working on Kinograph in a variety of contexts will strengthen its evolution. To support these efforts, an “official” version of the design will exist to maintain consistency. Every part of Kinograph will have both an “official” specificiation, and a number of community alternates.
A council of Kinography community members will be responsible for overseeing the process of accepting new design ideas into the canoncial Kinograph design. For you Python people, this is similar to the PEP process. In our case, it’s an “X-ABC-D” process:
X = experimental
A = alpha
B = beta
C = community accepted
X: Experimental proposals for a new or alternate design for Kinograph can be submitted by anyone at anytime. This will likely happen on the forums or through a dedicated proposal page.
A: To qualify for an official review, the experimental proposal must be implemented successfully in at least 2 other machines. This is “alpha” testing, and is self-organized by the author and community members. This should encourage active, self-sustaining cooperation as well “window shopping” for folks with technical skills who want to get more involved.
B: All qualifying proposals will be reviewed by an engineering board. A proposal has three possible outcomes: revision (needs work), community solution (good alternative, published to wiki), or accepted solution (becomes part of long-term support).
Naturally, this may be too slow for some folks. That’s okay. They can blaze ahead and we’ll catch up. Our goal is not to be the bleeding edge, but to provide a stable foundation from which anyone can spring ahead to solve their own problem, while also continuing to support for existing machine owners and not leaving them in the proverbial dust.
Design Goals
Given all of the above, we are focused on the following simple goal:
A machine that can scan 4K at 24fps for <$8,000 USD, including PC and camera. This is based on an assumed price of $5K for a 4K camera and $1K for a PC capable of handling capture (read: not all of your post-processing dreams, just capture).
To do this, I have made the following choices (more detail to come as the design is finished and I have more time to write documentation):
For sure stuff
- 35/16 for now. A large 16mm reel is about the same diameter as a standard 35mm reel. The spatial requirements of machines for either format are very similar, so it makes sense to to tackle them both at the same time. The spatical requirements for 8mm are not close to either format and therefore makes more sense to exist as its own separate machine. Doing so will also create an opportunity to design from scratch without inheriting any of the decisions made for the larger machine.
- Tilted frame to enable scanning of film on cores without a split reel.
- 8mm x 8mm grid, and the use of goBilda parts for as much of the design as possible. They’re highly quality and can do just about anything. They’re also easy to reproduce with a mail-order CNC service if required (note that goBilda’s parts are copyrighted and would require alteration to legally reproduce). The grid ensures overall compatibility of parts and sets a standard for other people to use to ensure their parts can be shared. Using goBilda’s other hardware makes it easier for non-engineers to create new modules without the need for CAD or specialized fabrication tools. Also, goBilda ships from from the U.S. and Europe.
- Lighting. Kinograph will support scanning with white or RGB lights. It uses a custom lighting circuit and driver that accepts commands through serial prototcol. The current design has only RGB, but a new design is in development that combines both RGB and white on the same board. See below re: light housing.
- Machine controls: custom PCB easily reproducible, common parts, with physical controls and optional touchscreen interface via i2c.
- Software:
- Kinograph’s control software is written in C++, but I would like us to use Python in the future moving forward to lower the barrier to entry for contributions.
- No GUI (graphical user interface) will not be provided with the first version of Kinograph due to lack of resources (time and money). The features we need to build are not hard, but will require coordination. It is a perfect opportunity for the community to extend the project and provide high value to machine uses early on. I foresee us adopting Python as our overall preferred language, and using open-source and/or common standards for anything we build. For now, we will use software that comes.
- Gates will be swappable and dedicated to a single format. I had a design that was mostly working for a flat gate with a pressure plate, but I was noticing some lateral pinching and I’m taking a two-path approach to fixing it. First, I’ll just make a curved gate and I’m going to have it fabricated at a local CNC shop. Second, I’m going to revisit my roller design and make sure that’s solid and not contributing to any shifting of the film as it enters or exits the gate. I’ll re-try the flat gate and test the curved gate in parallel.
- Film is moved with a large diameter capstan roller. A larger diameter spreads the surface tension along a longer segment of the film (less stress per frame).
- You buy the camera yourself. This is mostly because you will need to own the license for the software that comes with it in order to use it legally. The software that comes with the cameras is meant for trial purposes only, not as part of a reseller’s offering.
- Bring your own PC. If you don’t need to scan 4K or run at 24fps, you can get away with an older PC and save money. Typically, the camera software runs best on Windows, although some do offer applications for Mac and Linux.
- Newly adopted features to the “official” design will never make a Kinograph non-functional. They may, however, require the adoption of other proceeding features in order to work. Adoption of new features is always optional. Long-term support of official designs and is prioritized until a new version set is required to ensure on-going stability.
- Community support is the primary means of resolving technical issues. When that is not enough, issues could be escalated to a member of the engineering council or me directly if the user is unable to solve their problem. I may later decide to offer a paid support tier, but that’s very TBD. Basically we’ll all do our best to help people out and share the work of doing so. If it gets to be too much, we’ve either got a bad design, or we need a more formal process…but we’ll cross that bridge when we get there.
Not-so-sure stuff
- Lighting: integration sphere or flat box…TBD with more testing.
- Idle rollers are currently small PTR rollers, but I am seeing some side-to-side shifting of the film currently. I’m troubleshooting and am not ruling out the possibility of going with a different roller design. I will know in a couple of weeks.
- When non-profit status, boards and councils, or community management will be implemented
- Film cleaning. For now it is assumed films have been cleaned before they are put on Kinograph. If not, debris build-up could affect results. There are two possibilities to pursue in the future, however: a wet gate, and the ability to run the machine in “inspection” mode, which could be used for basic cleaning.
- Support.
Whew, okay. Have at it.