Customizable Sundial

by doctek, published

Customizable Sundial by doctek Feb 17, 2013
2 Share
Download All Files

Thing Apps Enabled

Open in Customizer Order This Printed View All Apps



Customizable Sundial by doctek is licensed under the GNU - GPL license.

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag


Thing Statistics

9356Views 2157Downloads Found in Outdoor & Garden


Update 3/19/16: To make this actually usable, it no longer uses Customizer! All files to create it are now in the archive as well. I hope this helps everyone build this cool little sundial.

Customizable Horizontal Sundial. Use Customizer to specify your location and give your dial a custom label! Note that the dial is corrected to read in Standard Time for your Time Zone.


Update 3/19/16:Here are detailed instructions for editing the OpenSCAD file to build your custom version (avoids Customizer woes). For those in the Southern Hemisphere, it might be as simple as entering your latitude as a positive number (as though it were for the Northern Hemisphere). I'm not certain, but I think you will get a usable sundial. Please post your results one way or another.

Caveat: This sundial is designed for the Northern Hemisphere. I have no clear idea how to adapt it to the Southern Hemisphere yet. When I figure that out, I'll post a Southern Hemisphere version.

The Horizontal Sundial is easily customized to your location. Start by finding your latitude and longitude (in decimal degrees) here: http://universimmedia.pagesperso-orange.fr/geo/loc.htm
Longitude may be positive or negative; Latitude will be positive. (Otherwise you're in the Southern Hemisphere. Refer to the Caveat above, but maybe just change the sign.) Note you must indicate both your exact Latitude as well as the range of your latitude in degrees (Works the same for the Southern Hemisphere once you change the sign). This is because of an OpenSCAD limitation.The comments in the OpenSCAD code explain how to determine the range value.

Then find your time zone correction here: http://www.timeanddate.com/library/abbreviations/timezones/ There are many different names for time zones. At the site, simply use Find in your browser to look up the correction for your time zone.

Now use Customizer to enter your data and make an awesome custom sundial!

Update 3/19/16: Forget using Customizer. Download the file HorizDial.scad. Also download Write.scad and Letters.dxf. All three files should go in the same directory. (You can also get the Write package here http://www.thingiverse.com/thing:16193/#files , but the version I provide is known to work with HorizDial.scad and removes the annoying "ECHO" statements.)

Use OpenSCAD to edit HorizDial.scad and produce the stl file. (The latest version of OpenSCAD as of 3/19/16 is known to work.) You'll only need to modify the values for myHome (note 21 character limit!), latitudeRange, latitude, longitude, and timeZone.

Hope this helps everyone!

Note: Although there are other sundials on Thingiverse, this one was created from scratch to be customizable.

More from Outdoor & Garden

view more

All Apps

Customizer is the easiest way to take great 3D printable designs and make them your own. Make your OpenSCAD designs infinitely more valuable by empowering the community to customize them.

App Info Launch App
Customizer Thing App

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

Just a quick question.

I calculated the base to be about 2.8mm thick. What was you original planned thickness?

The SCAD source calls for 4mm thickness for the base. Is the 2.8mm as measured from a print? If not, how did you calculate it?

And the verdict?.......

Mr DocTek is CORRECT. Micrometer/Vernier says "Exactly 4.0mm"

Interesting that and you are wide awake :-)

I actually made an error in my calculations and then when you replied I did it again and found that counting the layers from Cura the thickness is 3.6mm thus 0.4mm short of the planned 4mm.

Hold your horses as I`m very close to coming up with this awesome print whence I can then measure the final thickness.

As I said. "Awesome"

I just found errors when running the the SCAD Rendering.

The reason being that there is a request for write/write.scad. Though I copied all 3 files to the /libraries I cannot find a /write directory. Where should this write directory be?

The path on my computer is c:/Program Files/OpenSCAD/ then the following sub-directories are
.../libraries (I copied the 3 files to this directory)

Should I create a .../write sub-directory?

Either create a write sub-directory with Write.scad in it, or remove the "write/" from the include statement at the start of the main file. Either should work.

Also, note the comment in the main file that the myHome string can be a maximum of 21 characters. (Answering your private message for all to see.)

Good luck!

Thank you very much.

This is an awesome design and the Designer is even more awesome for replying to just about everybody!!!

Personally I really like the fact that it can be customised "in-program" so to speak and further that it is a free and opensource program.

Congratulations to a really Great Designer!!!

Cant use the customizer, it fails everytime, did anyone else experience this. Its a great project but wont customize :(

Thank you for your interest in the Sundial!

As discussed in the Comments, Customerizer is broken and no longer used for this Thing.

Please read "Thing Details" for instructions on making your own Sundial. You'll customize it directly in OpenSCAD.


Thanks for sharing ... It seems to work ok in OpenSCAD but not customiser. I read your earlier replies, regarding thingiverse breaking the code.

I am going to re-post this, the Customizer gives an error: "Parser error in line 504: syntax error" This time it is 504 error, last time it was 505.

It is very frustrating when Thingiverse breaks their own tools! I will try and fix this, but it's really not my fault. My time is limited and this sort of thing (caused by others) is very frustrating. Don't know when I'll be able to get back to this. Sorry.

Thank you. I wont blame you, After I tried yours I saw a few other Customizer things that didn't work. Thank you for taking the time to create it. I was hoping to print one for the two or three days of sunshine I see.

I get an error in the customizer, "Parser error in line 505: syntax error"

What is the function of the "Latitude Range" option? (7-11)
(Sorry if this is a duplicate comment, I thought I posed this but do not see the comment,)

Hi, new to this.
Installed /ran OpenSCAD with the writeSCAD files and edited (put in my location /city name to) the original .SCAD file.
When I view/print, it seems to skew the lettering of the city name (starting at bottom front edge below the 4, and skews upward, almost to the 8)
Any idea what I might be doing wrong?
TIA! :-)

Did you use Customizer or directly edit the files? It's very hard to say exactly what's wrong without seeing exactly what you did. I still plan to get this Thing straightened out, but am in the process of moving. Sorry for the delay.

Thanks for your fast reply! :-)
The Customizer never worked for me - not a big problem.
I opened the Customizable_SundialR1.scad file with OpenSCAD .
In the left pane, I simply replaced the "Portland, Oregon" with my location,
and edited the lat/longitudes.
Then hit F6, saved file, then exported to .stl
Do I have to edit the "myhome" location for character length or anything?
And, yes I have the "Write.scad" and "Letters.dxf" files in the same directory (& another copy under the OpenSCAD library, just in case?)
(I'm not a programmer, BTW)
Thanks again!

Sadly, the problem seems to be that updates to Customizer are done without regard to existing Things that use it. Compatibility is simply not a consideration! I'll try to fix it when/if I have time. Please direct your thanks to Thingiverse Support (whoever that is). I'm very frustrated with Customizer and won't use it again.

"Parser error in line 509: syntax error" upon first opening in Customizer. Any hints as to what I am doing wrong?

This object generates an error in the customizer and does not work.

Can you be more specific? What parameters are you using? This has worked for a lot of people. Maybe a new version of Customizer is causing problems? Maybe you've found a real bug? Hard to say without knowing what you entered into the Customizer.

Without customizing it at all, the customizer displays the follwoing error: Parser error in line 506: syntax error

Did the fix that you proposed http://www.thingiverse.com/thing:241178http://www.thingiverse.com/thi... actually do the job? If so, I'll modify the code. I'm assuming that you are using the "R1" version of this Thing.

Fix of broken customizable sundial

Nope, I ended up designing my own sundial on Tinker Cad.

Customizing in OpenSCAD doesn't seem to work for those of us in the southern hemisphere. Using the Lat -35.501 and the long 138.783 makes the gnomon a very strange shape that wouldn't print and trying to use the time zone +9.5 puts some of the markings off the base plate.

Indeed, you are correct. When I first posted this, I didn't have the time to work out the details for the Southern Hemisphere, and I haven't been able to get back to it. Perhaps someone south of the Equator can do a derivative?

That's cool just didn't know if you were aware of that or not. After my uni study is over for the year, and I have spare time I might have a go at a southern derivative of it.

I believe you simply reverse the hour numbers on the dial for the Southern hemisphere and mount it turned 180 degrees (gnomon pointing South). Compensation for the latitude would be the same regardless of North or South latitude. In the northern hemisphere, a shadow of a post moves clockwise around the post. In the Southern hemisphere, the shadow moves counter-clockwise around the post.

Thanks for your interest in this Thing! Your suggestion is interesting, but I'm not sure it's correct. According to what you say, the shadow of the sun would stand still at the Equator. I don't think that happens. I believe the sun rises in the East and sets in the West in the Southern Hemisphere just like it does in the Northern Hemisphere. Thus, the shadow will move the same direction in both hemispheres (and at the Equator). I'd be eager to see a demonstration to the contrary, however.

Fun print. I made one about a month ago and came back to generate another but it seems to be broke. I keep getting an error on the page saying "Parser error in line 506: syntax error" . Hopefully this will be fixed soon.:(

Looks like some sort of bug in Customizer. I haven't touched any of the files and SW doesn't just rot from disuse. :>)}}

Hope for a fix in Customizer, or (better) download the OpenSCAD file and run it directly.

I did download the openscad file and it worked just fine!!! Thanks.

I am love sundials, and I've printed one of the others here. Giving this one a try as well.

I've found 2 things.

1) The Latitude Range isn't obvious what it is. I had to peak at the source code to see the comments so I could pick the right value.

2) Longitude that ends with a 0 seems to not work right. example: -88.24450

The easy fix is to remove the 0 at the end, it will then render right.

Very cool! Can you scale this up and down without affecting it's time keeping?

Should work fine as long as the angles aren't modified.

1 - text and lines display perfectly when using OpenSCAD directly.
2- text and lines do not display correctly in Customizer.

Ugly bug in Customizer, or it's not really ready to do anything but simple stuff. Hopefully, it will be fixed before the end of the contest so people can see what an Awesome Sundial this is!


This is extremely frustrating after all the effort I went to to create this and make it "customizable". Since it's fine in OpenSCAD and I followed the MakerBot rules for customization carefully, I would expect better.

Hi, nice script!

The problem with text not showing is because you're not specifying the write font. It works locally because the path to the default font behaves differently locally. We're actually going to be adding a fix for this tomorrow!

Also, the reason the object is showing up smaller than you'd expect (and the lines not showing well because of it) is because of the way Customizer calculates the size of the object. It takes into account all shapes even shapes that don't show because for instance they could be part of a difference() operation. If you reduce the size of the shapes, then the final object should be centered and zoomed in better. This is on our todo list to improve in the future.

Thanks for the support. Hopefully, the fixes will be that quick. I've also modified the OpenSCAD file so the outer cylinders (that trim up lines, etc.) are smaller. My problem is that I don't know how to edit my thing once it is posted. Is there a way to do that?

Hopefully, anyone who finds this now will have fun with it.

Looks like new Customizer update has fixed your text problems. To upload a new version, just upload it and then delete the old one.

Thanks for all the help! My Sundial is looking much better.

However, it appears that some of the lines (like for 4 and 5 am;7 and 8 pm) are still not being rendered in the Customizer. Any idea why not? Seems like there still is a bug or two in Customizer??

I ran the customizer and I didn't get any letters on the sundial! When I pasted the code into OpenSCAD it worked okay. Anybody else have this problem?

You might want to check that you are using the writecylinder() function exactly correctly against the cylinder you created because because from my experience, OpenSCAD is much more forgiving than the Customizer. I spent a whole day working on this exact problem with my own Customizer code where everything looked good on the PC, but once I put it in Customizer, no letters.

Maybe I should mention how to use a sundial for those who may not know. It's mighty simple. Place it in the sun. (Easier said than done in Oregon!) Put it on a level surface and point the large end of the center triangle (called the gnomon) to true North (not magnetic north as indicated on a compass). Read the time as where the shadow of the upper edge of the gnomon falls.

Even easier is to simply turn the sundial until it indicates the right time. If the surface is level, then the large end of the gnomon will be pointing North just like it should be. Check the time in a few hours and adjust as needed.

Have fun!