The problem: holding your marshmallow at just the right spot in the fire while simultaneously rotating it just enough for an even toasting.
The solution: the Rotisserie Marshmallow Roaster.
Just in time for summer, this little contraption is fully 3D-printable with no supports needed. Just add your roasting stick or skewer. I use this to cook anything over the fire: marshmallows, hot dogs, woofums, etc.
See the labelled drawing for assembly. There are 3 options for the reel. Reels 1 and 2 seemed to have worked best for me. Everything should be able to be printed in the orientation uploaded without any supports. Please feel free to like, share, collect, and comment on anything you feel is necessary.
Update 7/9/18: for those of you having a hard time threading the stick centering screws I uploaded an updated one that should be easier to thread now.
The print settings in your slicer will be critical for the flywheel and reel. I don't change out my nozzle until it's blown out to probably twice its original size, so that might play into it. But here are some suggestions for each part:
Flywheel and reel: these were modeled with zero tolerance, so unless your printer prints perfectly you will likely need to adjust the "horizontal expansion" in Cura. I used a value of "-0.15." Once printed, you will need to spin it around for a while to loosen it up. Rafts could also help printing since the moving parts will most likely fuse together on the first layer or two otherwise. The more precision the bearings have the better everything works.
Screws: even though the infill can be 15% for everything else, I did these at 90% just to ensure I didn't shear them to oblivion like I do the oil drain plug screws on all my cars (3D-printable torque wrench anyone?). You might need to cycle the screws in and out carefully a couple times before they start threading easily.
Everything else: I printed everything else with either no horizontal expansion or "-0.05." Again, that probably goes back to my nozzle being blown out.