20 ms·
Show HN: I made a tiny camera with super long battery life
Hey HN!
A few years ago someone kept trying to steal my motorcycle, so I decided to make a small camera with really long battery life to catch them.
The hardware/software is totally open source, but the companion app only supports macOS currently. (I'm a big fan of native apps, and didn't want to block releasing on Linux/Windows support.)
I wrote some blog posts about the process:
PCB design: https://toaster.llc/blog/pcb https://toaster.llc/blog/pcb
Enclosure design: https://toaster.llc/blog/enclosure https://toaster.llc/blog/enclosure
Image pipeline: https://toaster.llc/blog/image-pipeline https://toaster.llc/blog/image-pipeline
Rainproofing: https://toaster.llc/blog/rainproofing https://toaster.llc/blog/rainproofing
Source: https://github.com/toasterllc/Photon https://github.com/toasterllc/Photon
- r0fl 2y agoIs there a way to have these shipped to Canada?
- davekeck 2y agoSend me an email (support@toaster.llc) and I can make a custom Stripe invoice / shipping label. Still need to figure out how to automate international shipping!
- mariocesar 2y agoI love "the fine print" section. This is so great. Congrats on all your hard work
- idiot900 2y agoAre there sample images from the camera on the product website? This is a neat idea but it would be nice to gauge to what extent it is fit for purpose, and a helpful way to do this is with a bunch of sample images.
- davekeck 2y agoI should definitely add some sample images... For now, the Mac app has real imagery in the demo mode: https://apps.apple.com/us/app/photon-transfer/id6476578040 https://apps.apple.com/us/app/photon-transfer/id6476578040 (The demo photos are from the Lick Observatory on Mount Hamilton.)
- aconz2 2y agovery cool, love the website design and the blog posts had a lot of interesting bits, like the backplate removal jig. I was kinda surprised to see an fpga in there but makes sense. Could that design be repurposed as a general image sensor -> sd card module or is it pretty specific to the sensor?
- davekeck 2y agoHmm interesting question. I think a lot of the FPGA RTL should be reusable for most parallel-output image sensors. (It seems like all the really nice image sensors are headed towards MIPI nowadays though...) I tried to make SDController.v and RAMController.v as re-usable as possible.
- laweijfmvo 2y ago> exclusively for Mac Why not just have it connect as a generic mass-storage device?
- Suppafly 2y agoYeah, even if you're a mac guy, it doesn't make sense to make hardware that is mac only.
- jackstraw14 2y agoIt looks like the companion app is in the App Store, but yeah if it's going to be open source then I don't understand either.
- rasz 2y agoSaw it on EEVBlog, even owning a Mac is not sufficient if its not the latest OS version. SD Card doesnt store pictures in windows readable format either.
- davekeck 2y agoDang I haven't mustered the courage to watch Dave's critique yet! I wrote/tested Photon Transfer (the companion app) on macOS 10.15 (Intel), so it should work on that and above. If not it's a bug that I need to fix!
- rasz 2y agoI cant find the video now somehow (otherwise would link it). TLDR: he loved it, both idea and design, but could test due to Mac store requirements.
- CamperBob2 2y agoHe gave you a pretty good review, I thought. I'd have been interested in the camera myself if it supported Windows. Given the rate at which the data flows -- nothing at all for a long time, then a burst that isn't particularly time-sensitive, then nothing at all again for a while -- I wonder if the right way to do something like this is with LoRA. That way the camera could be mounted someplace hard to access, with no need for a file system at all. There would then be a separate receiver module that could listen for traffic from multiple cameras and store it for later access by a PC/Mac/whatever.
- mysteria 2y agoCool project, here's a few comments after a quick glance over: - There's no license on the code and design files in the Github repo, thus this currently isn't open source but rather "source-available". If you plan to allow others to modify the code and build their own cameras you should add an appropriate license. - The Mac only support (and it's MacOS only, with no iPad/iPhone support) with a dedicated app to operate it seems to really limit the market for this device. Since all the app does is allow you to view/transfer photos and configure the device you probably could make do with a simple MTP interface for access to the photo files and have a second interface for configuration. Also if you do plan to release this under an OSS license and market it as a hackable + privacy friendly device Linux support is pretty much a requirement. - Consider using automotive grade ICs to allow the device to function below freezing. The current stuff may be fine for Cali but people in northern states won't be able to use it outdoors in the winter.
- kristianp 2y ago> Linux support is pretty much a requirement Support isn't required for linux: I think there will be people who will be keen to hack up Linux support based on the open source code available, and the same with Windows. However if "Dave" wants access a larger market, Windows or even Android support would make sense.
- romwell 2y ago>Windows or even Android support would make sense. How about an SD card slot with a configuration in a plaintext file, so that one isn't tied to the software which may or may not be available in the future. I just got myself a Sony Mavica which shoots photos on a floppy disk, and I can still use it without thinking about which OS my computer runs. For a camera that boasts battery life in years, needing "exclusive" software (that may or may not be available years down the line) defies the point.
- mysteria 2y ago> Support isn't required for linux: I think there will be people who will be keen to hack up Linux support based on the open source code available, and the same with Windows. I guess this is more of a marketing thing but I wouldn't be interested in buying this as a Linux user even with the other benefits if it came with unknown DIY support. If you're advertising it as an open source device and such then the people willing to play with it and pay a premium are typically Linux makers/hackers. If it's being sold as a Mac only device with a slick interface and app-only control that appeals to a different market entirely.
- Eric_WVGG 2y agoso cool! For your next trick, how about a super long battery life MP3 player? A friend asked if I knew of an MP3 player that would be good for a two-week hike with no access to electricity, and it really seems like there's nothing out there beyond carrying around a bunch of batteries.
- michaelmior 2y agoThere are other options such as chargers powered by solar power, hand crank, fire, etc.
- walterbell 2y agoFiiO M3 Pro? https://www.amazon.com/FiiO-M3-Pro-Resolution-Touchscreen/dp/B086Z65V49 https://www.amazon.com/FiiO-M3-Pro-Resolution-Touchscreen/dp... > 15 hours battery life and 35 days standby time: Adopt 1000 mAh high-capacity lithium-ion battery and USB-C charging technology. The M3 Pro has a battery life up to 15 hours and standby time up to 35 days. That means if you listen 3.5 hours every day, the M3 Pro can go for a whopping 1 week before needing to be charged again!
- taid9iK- 2y agoMy Cowon D2 might be old but it still goes on for days and days and ... you get it, it's awesome!
- mixermachine 2y ago15 hours seems not that much considering an iPod nano can do 30 hours (according to Apple)
- latexr 2y agoFifteen hours is not enough for a two-week hike. That gives you one hour of listening per day, maximum.
- ramses0 2y agohttps://www.amazon.com/dp/B01NAJ3KQB https://www.amazon.com/dp/B01NAJ3KQB ...probably at least 10-25 hours playback on a single battery, which means 8 batteries gives you 80 hours of listening (2 weeks). For that space though, you could scavenge a solar garden light charger and get indefinite listening with ~4 batteries. 1 loaded, 3 charging, with a nominal "fully charge 3 batteries with 16 hours of daylight", which means a ~33% duty cycle. One sunny day charges 3 batteries, which means you have 45 hours of charge before needing to obtain another 16 hours of sunlight.
- michaelmior 2y ago> A few years ago someone kept trying to steal my motorcycle, so I decided to make a small camera with really long battery life to catch them. The camera seems really cool. But given that the device has no way to get photos off it without physical access, it seems like this wouldn't be super useful for your original purpose. If someone just takes the camera (or manages to successfully steal your motorcycle), then then camera doesn't provide any value.
- nicwolff 2y agoI don't think the camera goes on the motorcycle.
- davekeck 2y agoYeah my plan was to hide it in the garage's rafters. (I ended up moving out of my apartment complex anyway though, so I ended up not needing it for that anyway.)
- michaelmior 2y agoThat makes a lot more sense :) Although you still have the problem of someone potentially finding it.
- whatahw 2y agoThe one use case he mentions could also be satisfied by a $50 trail camera with video capability, better photo quality, better low light performance and better motion sensing. I'm really struggling to figure out why people are excited about this. Do they not know trail cameras exist?
- ipsum2 2y agoLove that everything is open source! Code relating to cameras have been traditionally locked down and hidden under NDAs. Surprised there's no sample photos nor specifications on image sensor.
- instagib 2y agoLooks like 5MP but saves as 3MP files. https://github.com/toasterllc/MDCCode/blob/6afdde594861264f82a609d2547fb2da65460ec6/Other/arducam_mini_5mp_plus_ov5642_camera_module_ds.pdf https://github.com/toasterllc/MDCCode/blob/6afdde594861264f8... Pixel resolution Size = 2304 x 1296 = 2,985,984 pixels Pixel count = 2.99 million pixels Resolution = 2.99 mega pixels Aspect Ratio Width / Height: 1.78 "landscape" (horizontal) orientation Type of aspect ratio = "HD 16:9" Couple photos here too: https://github.com/toasterllc/MDCCode/tree/6afdde594861264f82a609d2547fb2da65460ec6/Other https://github.com/toasterllc/MDCCode/tree/6afdde594861264f8... I guess its for hiding a camera near where you park your bike and see who stole it or looked at it.
- MarkusWandel 2y ago> Looks like 5MP but saves as 3MP files. OMG that's so refreshing. Just recently I've come across, both from garage sales, a "40MP" camera smartphone (Chinese brand-X) that actually has, probably, a 13MP class sensor in it and upscales, and a wildlife camera that does the same. Waste a great deal of storage just to fool people into thinking they got a better camera, and then you have to downscale all that again to achieve something like pixel-level sharpness.
- davekeck 2y agoIndeed it's 2304 x 1296, 12-bit color. (That .jpg in the repo was a test image from a different camera.)
- userbinator 2y agoOmnivision's camera datasheets and sample code can be found everywhere on the Internet.
- peterhi 2y agoWonder if this could be co-opted to function like a Narrative Clip. Take a photo every 30 seconds (or something like that). I had mine for 3 years before it died
- designed 2y ago50,000 pic battery life * 1 pic every 30 seconds = ~17 day battery life. Not bad
- hiatus 2y agoSmall note: though the battery will last for 50k pictures, the storage will begin overwriting old photos after ~20k.
- davekeck 2y agoIt does feel a little weird that the battery outlasts the storage. Maybe I should've gone with 256 GB SD cards == 40k photos.
- mjard 2y agoDoes it start replacing the oldest photos?
- davekeck 2y agoCurrently it replaces the oldest photos, yes. (There might be use cases where you only want to keep the first 20k photos though -- if anyone wants that, get in touch and I can add a setting.)
- mjard 2y agoI figured that was the case. That makes the most sense for your original use-case. I ordered one last night, are you seeing a large uptick of orders from this post?
- scld 2y agore: Footprints being a solved problem, SnapEDA/SnapMagic is a great place to start for beginners. You still want to verify, but they have metrics on how many users have used the footprint and other "trustworthiness" indicators. re: the sealing, you may want to test the seals over a temp cycle. fully enclosed housings sometimes need a vent to prevent pressurizing the housing and, literally, blowing a gasket.
- polalavik 2y agoReally well done! I also love the design of your website, is it a boilerplate/template or did you design it yourself? Is this the same sensor as the rpi hq cam? Would be cool to have interchangeable lenses on this, but that might make weatherproofing it difficult.
- abdullahkhalids 2y agoIt says here [1] that the image sensor is AR0330. [1] https://toaster.llc/blog/architecture/index.html https://toaster.llc/blog/architecture/index.html
- davekeck 2y ago> I also love the design of your website, is it a boilerplate/template or did you design it yourself? Website is painfully custom haha. Credit to the wonderful Iconfactory for the Photon art!
- clumsysmurf 2y agoI try to avoid devices with built in batteries. Could a version be created that uses a replaceable 18350, 18650 or even AA? I'm OK swapping every few months etc, but when its time to dispose of it, I don't want to fret about how to remove the battery for recycling.
- NegativeLatency 2y agoAlso when the battery dies and it renders the product garbage that only someone with fairly advanced skills can fix.
- davekeck 2y agoI 1000% agree with the sentiment, I hate that we throw so many electronics away. I need to make a blog post showing how to replace the battery.
- NegativeLatency 2y agoIs the battery soldered? Is it a fairly standard kind of thing like an 18650 (obviously not the same size, but I'm not familiar with what "standard" pouch style batteries exist)?
- davekeck 2y agoIt’s not soldered, but it does have a Molex Pico-EZmate connector (chosen for its low profile), and I’m not sure you can find batteries premade with that kind of connector. You could reuse the existing connector with a new battery, but that would ideally involve soldering.
- davekeck 2y agoTotally fair, I feel the same way. Originally Photon was going to use AAs but I changed course when I decided I wanted to make it water resistant. (FWIW Photon uses a 103040 which is pretty commonly available, the only caveat is it needs a Molex Pico-EZmate connector, which is a super-low-profile connector since interior space is scarce.) I'd love to revisit the battery story some day...
- tromp 2y agoWould this be suitable for strapping on a helmet to take a picture every (other) second on a bike ride and turn into a time lapse video afterwards?
- thih9 2y agoLooks like yes > capture photos at particular times or on certain dates, perfect for time-lapse photography With 50k photos on a single charge you could capture almost 28h of continuous 0.5fps video.
- tromp 2y agoI was wondering about the weight which I couldn't find specified (although at that size it can't be much) and about ways that you could attach a strap to it.
- davekeck 2y agoI think it should work pretty well for that use case. I need to add support to the companion app to make exporting videos convenient though. Right now it only allows batch-exporting images.
- euniceee3 2y agoNo. You need some motion smoothing for that too look good. At 3MP it does not have enough CCD to stablize and transcode into smooth pics.
- b20000 2y agoI want to know who designed your site and who implemented it :-) One of the best sites I have ever seen.
- tamimio 2y agoFew questions come to mind: - what’s the image resolution? Is it fixed or can it be changed in the settings? - can you attach an actual image file? The previews are barely clear to show anything. - any info about operating temperature? The battery might not die but the camera shuts off due to high temperatures, happens to me all the time with gopro and the likes. - what’s the storage capacity? Not mentioned anywhere. Edit: ok I see now the footer of the site, it didn’t load before
- davekeck 2y agoUntil I add some good imagery to the site, you can see real imagery in the demo mode of Photon Transfer: https://apps.apple.com/us/app/photon-transfer/id6476578040 https://apps.apple.com/us/app/photon-transfer/id6476578040
- higgins 2y agogreat landing page! "IOT? how about NOT"...i lol'd
- qup 2y agoI really like the focused idea. This is likely the best product in its niche. It's an oddly large niche--this is a tool that can solve a lot of problems. Is the battery replaceable if it fails?
- davekeck 2y ago> Is the battery replaceable if it fails? It's replaceable but I hadn't thought that far ahead regarding end-users doing it. The caveats are: 1. I made a special tool to avoid scuffing the aluminum when removing the backplate: https://toaster.llc/blog/rainproofing https://toaster.llc/blog/rainproofing Search for "Backplate Removal" 2. The backplate needs to be re-sealed (with standard RTV sealant). 3. The PCB uses a Molex Pico-EZmate connector. (It could be transferred from the old battery to the new battery, or I could sell pre-made batteries if there was interest.)
- davtbaum 2y agoLove this - congrats Dave on the launch
- davekeck 2y agoThanks bud! XD
- k2xl 2y agoWould be great if it had Zwave and Zigbee support... Would love this for home automation use cases
- rossant 2y agoCan it record videos?
- LorenDB 2y agoWhy not just use something like Qt to build a native cross platform app? As others have mentioned, advertising a device as open source and yet Mac only is going to turn away a lot of people.
- meatmanek 2y agoQt apps, even in 2024, still don't feel native when used on Mac. Personally I'd much rather just drop the custom Mac app and replace it with: - firmware that can read/write a proper filesystem - firmware that can create e.g. DNG files that can be handled by regular photo editors like Lightroom, RawTherapee, Darktable, etc. - A webapp that lets you generate a configuration file and does the battery life estimation.
- davekeck 2y agoReally appreciate the feedback. The honest answer is I'm a Mac guy, and a terrible businessman. FWIW I love Linux and used it extensively to develop Photon. (In fact the "MDCUtil" tool for debugging Photon already supports Linux.) I'd love to add Linux support for the app if there's enough interest in this thing.
- nottorp 2y agoCan he afford Qt? He'd need a lawyer on retainer.
- dbish 2y agoNice. Ever read The Circle? Bet you could get some good SeeChange camera streams going from this :)
- _Bruno42 2y agoReally cool! How much does it weigh? I'd love to attach it to a collar on my cat to track their fun adventures.
- davekeck 2y agoI just put one on my kitchen scale: 70g.
- carl_dr 2y ago> “made by Dave in California” Love this, well done, looks like a great product.
- NegativeLatency 2y agoNeat, if there was something like this that was more like a car dashcam, I'd really like something for my bicycle helmet, I want a dashcam like experience incase someone hits me, but the battery life and charging ergonomics combined with having to empty the flash card on a gopro makes it not work well for the usecase.
- bambax 2y agoFor this I use a Virb Elite mounted on the bike itself. Garmin stopped making them in 2013 I think, and they can be found in mint condition for $40-50. They're very sturdy, waterproof, and have GPS. The battery life is reasonnable (with new batteries). The mounting system is very practical, they can be taken off or put back on with one hand, something I was never able to do with a GoPro. And they just... look weird, so they don't get stolen.
- mschuster91 2y agoSide note for those with ... let's just say unhealthy spending habits: is there a list of all the hardware stuff that HN'ers launched/kickstartered?
- scosman 2y agoOkay, you also made a drag and drop terminal app for rebasing?? Super cool products all round. True hacker news. https://toaster.llc/debase/index.html https://toaster.llc/debase/index.html
- ozzydave 2y agoOh wow! I’ve wanted this for ages, even started making it myself at some point!
- demondemidi 2y agoBlows my mind how much this guy knows. From embedded to native apps to fabrication. I feel lazy as fuck.
- nl 2y agoThis is awesome!
- injidup 2y agodrag and drop in the terminal is certainly cool but I've been recently getting into lazy git, also a terminal git client and it's workflows are all keyboard driven. It presents a mental model that is much easier to deal with than standard git terminal command line. https://github.com/jesseduffield/lazygit https://github.com/jesseduffield/lazygit
- corytheboyd 2y agoI’ll always endorse the heck out of lazygit when I see it mentioned, it’s one of the best pieces of software I have used. Sure it can’t do everything git cli can, obviously, but it makes 95% of what you do 100% better.
- foehrenwald 2y ago>USB-C >just as god intended ???
- thebruce87m 2y agoNot sure about god inventing USB-C but satan definitely invented usb 3.0 micro b
- b3lvedere 2y agoFor He saw that his minions required a minimal of three frustrating attempts to connect devices, in all His wisdom He required a connector that worked in just one attempt. And He saw it was pretty ok.
- rrr_oh_man 2y agoYour "fine print" is an honest breath of fresh air. Excellent communication throughout the page!
- adolph 2y agoThat is neat and your project docs are a fun read. You'd get a design identity ++ if the dovetail backplate was more similar to ejecting toast. . . .but looks like that isn't in the final anyway. Did you consider radar[0] instead of PIR with the MPS430? 0/ https://www.youtube.com/watch?v=9WiJJgIi3W0 https://www.youtube.com/watch?v=9WiJJgIi3W0
- davekeck 2y agoOhh fancy! No I didn't consider radar, watching that video now. The main consideration for the motion sensor is power consumption -- Photon's PIR consumes ~2µA. Any idea what the power consumption is for these radar sensors?
- adolph 2y agoSpeiss’ videos are good about measuring current. He was an early one on the coin operated ESP8266 movement. Looks like they are outside your energy budget: 2.3mA is the lowest. The video I linked was from 7 years ago? Here is a more recent one but it doesn’t seem like he measured energy consumption: https://youtu.be/s-GzUTyIH9c https://youtu.be/s-GzUTyIH9c As validation of your PIR-Cam idea, LilyGo sells a PIR-Cam-SSD1306 combo board: https://www.lilygo.cc/products/t-camera-s3 https://www.lilygo.cc/products/t-camera-s3
- WhackyIdeas 2y agoExcellent information. Thank you for releasing all of this, I particularly enjoyed reading through the rainproofing as I am building a raspberry pi camera and there really aren’t any examples out there that I could find.
- pineaux 2y agoWould buy, but doesn't ship to Europe...
- davekeck 2y agoDang I need to fix that! If you send me an email (support@toaster.llc) I'll let you know when that works.
- rpozarickij 2y ago(Another potential buyer of this camera from outside the US) By the way, some users might be unwilling to provide credit card details without knowing whether the product can be shipped to their country. Knowing that in advance IMHO is a much better UX.
- InCityDreams 2y agoAnother EU purchaser here. I've passed the link around - I think there would be many people over here that would be interested. Also...consider, dare I say it, Windows? Or am I mis-reading "delightful, Mac-tastic software Photon Transfer is designed with love exclusively for your Mac", though I'm sure the usb c is er...bipartisan? I'd say 30% of the people I know use a mac, the rest windows, all with linux for work etc. *getting stuff from the states via post is no problem, just gotta check on import fees (relatively easy to circumnavigate, but I'd rather not).
- deleted 2y ago[deleted]
- apocalyptic0n3 2y agoI'm not interested in the product, but I have to say this site is great. Too many sites that get posted in Show HN are so difficult to decipher what service they provide or function they serve. This landing page is about as clear as you could be straight away: it's a small camera -> great battery life -> pricing (without going to another page!) -> Mac Only -> Buy/Download links. You provide use cases, your tech specs are visible just by scrolling a bit, there's photos of the device that highlight its size. It even looks good. Only downside is a lack of example photos (which sound like they'll be added). This is a breath of fresh air and I applaud your effort on it.
- davekeck 2y agoThat means a lot, thanks friend.
- bbor 2y agoYeah echoing this. Everything about the design is technically immaculate (color contrasts & usage, consistent styling, and a satisfying visual variety), but it has that super important element that most product pages lack: a cohesive narrative. Not, like, a literal narrative (though the motorcycle story sounds intense!), more like… being introduced to a friend’s friend for the first time. I guess I’d give credit for this effect to my internal questions coming up in the same order as they were answered by the page! As a fellow solo-webdev/“founder”/layabout, OP I’d love to hear your comments on design and how you got to this point, if you find the time and interest. The camera itself looks sleek as hell and I’d love to hear about the physical design too, but that’s much less my bailiwick lol
- sgallant 2y agoYes, the site is very authentic but at first glance I was pretty confused. The animated cartoony camera followed by "only for mac" and "download" made me think this was an app, not a hardware camera. I'd put a real photo of the camera in the hero section so people instantly grok that it's a real device.
- deleted 2y ago[deleted]
- 2y ago
- hm-nah 2y agoI really appreciate the considerations at the bottom of the page. Excellent
- wferrell 2y agoWhat an excellent post. I love it and learned so much. Would you be willing to share a ballpark price for what you pay for the enclosure? And maybe ballpark how many you ordered at once? I have found getting enclosures made to be incredibly expensive -- but I have only ever done VERY low volumes (5-10).
- davekeck 2y agoSure! Checking the invoice, I paid $2205 (including anodizing and shipping) to make 125 enclosures (which includes 125x enclosures, backplates, and buttons). So that works out to $18 per unit. This is my first time doing something like this so I have no idea if that's a good deal or not.
- 23B1 2y ago$200 is a very fair price given the capabilities and novelty – since you're at it, would love to hear your BOM cost too!
- davekeck 2y agoIIRC all the chips were about $100 per unit, but of course that depended on the quantity that I was building (~120). When I looked at it briefly, it looked like I might be able to get the BOM price down to $50-70/unit if I made 1k-10k units. There was a ton of manual assembly for each unit (some due to my errors, some due to the PCBA's errors, some simply due to the design of the device). All in all, it's not get-rich-quick/ever scheme haha.
- RyJones 2y agoReasonable. I find anodizers are easy to find, good ones hard, and great ones almost impossible. I found a great one in Auburn and I feel lucky I did. Iirc you’re paying for the batch. If you pick a color they don’t do a lot, you’re paying the same for 1pc or 2000. The dye and handling is pretty much the same.
- 2y ago
- j1mmie 2y agoTook a while to find the image resolution - 2304 x 1296 pixels. Or, 3 megapixels. I love the website and the product's design. But I'm not sure what the use case is. Spy cam?
- davekeck 2y agoI originally wanted this to try to catch a thief, so there's that. My neighbor recently wanted to figure out what animal is invading their garage, so that's another one. I spent a lot of time working on the time-tracking aspect too, so making time-lapses is a third: https://toaster.llc/blog/timekeeping https://toaster.llc/blog/timekeeping Another (incredibly stupid or delightfully whimsical, your call XD) is putting it in your fridge to have a collection of images yourself / your family when they're hungry.
- bambax 2y agoThe fridge image idea is so cool!! Love that. Could the cold become a problem though? It would be so funny to have such a device with wifi enabled, to live-blog trips to the fridge. But then the battery would become an issue of course. Instead of making Internet-enabled fridges that serve no purpose, manufacturers should include USB ports inside their fridges.
- eth0up 2y agoOff topic, but all the camera nerds are here, so I'm gonna ask: I want to attach a cheap camera to an arrow, which may be single use depending on the target. Ideally it would attach with 1/8" thread (presently unknown pitch) or smooth (glueable) 6.2mm shaft. The total weight must be no more than 200 grains. Any suggestions? I'm pretty ignorant with cameras. Regarding the Photon, seems really appealing, but I'm an old Linux curmudgeon. The only Mac I ever had ran debian.
- supportengineer 2y agoThe flying through space graphic is beautiful. Looks like a great product!
- lofaszvanitt 2y agoCan it record continously and for how long?
- davekeck 2y agoIt can't record video, just stills. (In my testing I usually got ~80k stills out of the device with a new battery.)
- the__alchemist 2y agoIf you don't mind me asking, what is Mac-specific about it? Is it the GUI toolkit? The PC-program toolkits I've used to transfer data to and from embedded devices using USB-C: (Qt, EGUI) don't care what OS you use. The web-based ones like Electron don't either. So, there would be nothing blocking the release; they just work on any OS you compile on or cross-compile for.
- colordrops 2y agoTo be frank the "mac exclusive" marketing is a huge turn off for something that should obviously be nearly completely agnostic regarding PC operating systems. Makes me wonder what other poor decisions went into the design of this thing.
- davekeck 2y ago> Makes me wonder what other poor decisions went into the design of this thing. Haha me too man, me too. (Edit: I don't mean that sarcastically, I'm genuinely interested how others would make this thing.)
- kelnos 2y agoYeah, I actually physically rolled my eyes when I read the "exclusively for Mac" copy on the website. I get it if you want to build a cool photo transfer/view app as an add on to the experience, and want to do it native, and only have time to build for one platform. But calling that out in that way makes it sound like some sort of "feature", which is a huge turn-off, regardless of whether or not they're building exclusively for my platform of choice. But the camera itself should support MTP, USB mass storage, or something of that nature, and should just work on any platform. If it doesn't, that's a pretty silly oversight.
- zoky 2y agoIt's not an oversight. There are very good reasons for it, which are detailed elsewhere in the comments thread.
- 2y ago
- iends 2y agoThis is really cool. As a software guy, how can I learn more about making PCBs (other than the linked blog)?
- mattclarkdotnet 2y agoOne way is to find something you want to make that has schematics available and then hack on it. For audio stuff https://sound-au.com https://sound-au.com has lots to start from. Use jlcpcb or similar and you can get small boards made for $1 each plus shipping
- LiquidPolymer 2y agoThis looks really cool. I've made my living a photographer for over 30 years and I'm very tempted to purchase. This small form factor would be perfect for a project I'm doing documenting California condors rearing their young. Sadly, I would also need it to shoot video to be effective for my needs (and I'm sure this would kill the battery). Its one of these situations where I setup the camera system in November, and then can't touch it again till after the young have left the nesting site in Fall. Its been tough to come up with a solution that provides good image quality along with the unique demands of the project. I wish you great success. For those wondering why I can't use a GoPro for this project - I have several reasons. Power consumption is one. This is in a breeding facility, and although I can turn off the beep in GoPro menu settings, I've had the beep spontaneously reset after a power outage (which are frequent). Also - Gopros don't turn back on after losing power and must be manually powered back on - something I can't do when chicks and parents are present.
- geocrasher 2y agoCheck out CHDK for Canon PowerShot cameras.
- abhgh 2y agoIf you don't mind a tangential question, what are some good places to watch condors in CA? We watched them at the Pinnacles National Park and loved the experience.
- alexdig 2y agoI don't have an answer, but at least for Europe you can use www.birdingplaces.eu. The website has some entries for California, but couldn't find condors. Good luck!
- micw 2y agoUnrelated to the camera. But couldn't you add a long cable to a place where you can change a battery occasionally? Or use an external solar rechargeable battery pack?
- whatahw 2y ago
- holografix 2y agoPlenty of small form, battery life conscious cameras out there but they all have one thing in common: shit picture quality. Please add image samples to the website. Sunny days, well lit, cloud cover, dusk, night time etc
- WheatMillington 2y agoAwesome project.
- numpad0 2y agoThis is super cool. Custom FPGA based camera with this magnificent machined case is something I can only wish I could build. I kind of wonder, is it going to hurt aesthetics too much to replace the lens mount with a transparent window, with the lens mounted to the board and PIR sensor off a short cable, so the front face would require less machining and that the board can be secured to the bottom plate? That would save machining time and also might allow use of customizing options on existing enclosures, if it would make sense to do so.
- temp20240604 2y agoI would market it as a security camera. Just “camera” implies I might take this to the colosseum or to take family photos. But without a view finder and with deleting old photos I don’t think that is the use case. It is super niche though. Most security cam buyers would at least want cellular or wifi to capture the images “so far” before the thief steals the cam itself. So this is for situations where small is the main thing, I suppose almost for spying.
- r0fl 2y agoBrilliant suggestion I have been in the market for something like this forever for security cameras near sheds I have on properties I check on once every couple of months First time that I’ll be buying something of hacker news this quickly
- deleted 2y ago[deleted]
- remywang 2y agoThis is fantastic! I’ve been looking for something like this to take on my runs forever, as I hate bringing my phone while running. Also for people who want to replace their phone with a smartwatch, the only thing missing is this.
- FredPret 2y agoI wish more products had a page like this
- demondemidi 2y agoThe fix for the MSP di/dt bug made me smile. Lucky but also smart!
- edweis 2y agoGreat product! Out of topic: I see this trend where people do not capitalize the first letter of their title. Any reason ?
- LoganDark 2y agoAll-lowercase is an aesthetic choice. For example, Keybase doesn't capitalize the first letter of their email subjects. I believe it's meant to seem friendlier / more informal than perfect capitalization.
- xelia 2y agoMakes it feel less corporate, more authentic, I feel
- latexr 2y agoExcept this is often done by corporations (or their spokesperson) to exploit that feeling. So we’re back to square one.
- e-_pusher 2y agoThe brownout prevention hack you mentioned in the pcb design page is really neat!
- davekeck 2y agoI got so lucky with that, still can't believe I could work around it!
- jrussino 2y agoI wonder how much would it decrease the battery life to add a screen. Maybe just an e-ink display that refreshes to show the most recent image? I'd love to have a dead-simple point-and-shoot camera for my little kids to play with.
- labaron 2y agoThat market already exists, for example I got a simple camera from kidamento.com for my kids. I hope OP doesn’t increase the cost of the product and decrease the battery life by adding edge case features like this.
- contingencies 2y agoIt usually makes sense to have a slew of tests formally defined and to write a test that functionally checks every subsystem. If you don't test, Murphy ensures you always make errors before ordering next revision boards. Rushing never helps. Assumptions always fail. Hardware's very unforgiving coming from software, just because our brains are too impatient and we feel it's OK to cowboy all the time. For most of my boards I wound up writing a bunch of tests that automate current readings across different power rails while stepping boards through different states. This verifies that subsystems are moving approximately how I expect them to move without having to make too much of a manual test, and allowing full validation of remote control round trips. Really makes proper testing easier. For a camera, having an LED rig on your test jig to check pixels move in the right direction when lit in different colors would be a reasonable approach. Cool fix though... at least until the components age and the net properties shift subtly...
- sgt 2y agoRefreshing ! I'd like to see more products like these.
- owenpalmer 2y ago10/10 landing page
- max-ibel 2y agoSince there is so much anxiety about mac-only -- could you provide a small python file to read out the raw photos on any platform ? It looks like you could just 'dd if=/dev/disk123 of=/tmp/bigrawfiles' and then postprocess with said python script. Yes, not as good as a polished apple app, but for many people that really like the hardware and don't mind a bit of DIY, it's maybe enough...
- davekeck 2y agoThat actually kind of exists currently via "MDCUtil", which should work on both macOS and Linux: https://github.com/toasterllc/MDCCode/blob/rev10/Tools/MDCUtil/main.cpp https://github.com/toasterllc/MDCCode/blob/rev10/Tools/MDCUt... For example: $ MDCUtil ImgReadFull <image number> output.cfa That outputs the raw data stored on the SD card though, so I need to implement converting that to a standard format like DNG.
- thesmok 2y ago[dead]
- spaceman10 2y agoMr Dave, much appreciated for the post. Looking for help how to learn from your github where the raw data for building is located. As an aspiring creator of similar things, I'd very much appreciate a road map from your view on how to best approach the github source... from a learners perspective. So for example, if a break down was based on complexity, barrier of entry, activation energy of baseline starting... etc. the key areas I see are: - hardware design - hardware ordering - software design and interface with hardware - materials selection - chips - case/3dprint/scaffolding - time constraints to keep in mind for the above so as not to 'overload the novice' So ... Thanks for the post and the clear historical reference frame. If you end up answering this post, it will only add to the appreciation! :D
- voidUpdate 2y ago> simply unhackable. Photon doesn't do Bluetooth, Wi-Fi, or cellular, so your photos can't leave the device without physical access to it saying that something is "unhackable" makes me very uncomfortable, like saying something is "bulletproof". Having no external wireless connectivity also doesn't make something unhackable. If it communicates to a host app on the computer, and that app is vulnerable, it could be hacked through that. if it has a firmware update option, you can hack it through that. I'm reminded of smea's smart sex toy hacking video, where he exploited a sex toy by going through a chat client, then exploiting its bluetooth connection via a vulnerable usb dongle. Replace bluetooth with a usb c cable and it could be vulnerable
- davekeck 2y agoFair enough. When I was writing that I wasn't 100% comfortable with that wording either. I couldn't find a phrasing that meant "100% unhackable over the internet when in service", so I just went with "unhackable" and let the description clarify. But point taken.
- mlukaszek 2y agoCongratulations on the launch! Not sure if anyone mentioned it already - huge kudos for publishing insights of your journey in the detailed posts on your blog. I learned so much! Loved the details, photos, clips demonstrating problems you encountered. Thanks and good luck!
- labaron 2y ago“Photon's motion sensor can't detect motion behind glass.” That’s a pity. Though probably the use cases behind a window usually have access to power anyway and wouldn’t need this.
- pmontra 2y agoThe real problem for me is the next point on the page: > When placed in nature, Photon's motion sensor tends to trigger often due to grass or leaves blowing in the wind, which can cause Photon's battery to deplete quickly if configured to capture a photo when motion occurs. A future software update may provide a motion-sensitivity setting to help address this scenario. So, not behind a glass and not outside a glass. Maybe I could place it close to my front door and check who rings to me and which cats pass by? I hope that software update will happen soon. On the other side, the demo images on the Mac app page seem to be all outdoor pictures, so I wonder if excessive motion sensitivity is really an issue.
- davekeck 2y agoYeah, I was trying to set appropriate expectations for the motion capabilities. The sensor is pretty sensitive, so if there's movement within the spec'd range (~5m) it can trigger. It works quite well indoors / in garages / outdoors where there isn't constant movement in the ~5m region. > On the other side, the demo images on the Mac app page seem to be all outdoor pictures, so I wonder if excessive motion sensitivity is really an issue. FWIW I captured those using the time-based triggering (every 30 seconds), so the motion sensor was disabled for those photos.
- phito 2y agoExclusive for Mac... Sigh...
- anxioustech 2y agoI absolutely love this. Well done ! If I set a camera with 1 picture every 30 minutes, how long would the battery last ? Can I set it up outside, will it take a beating under the sun and rain ?
- unglaublich 2y agoAll of this is answered in the first 100 words of the website.
- davekeck 2y agoThe best way to calculate the battery life is in terms of photos. It can take a minimum of 50k photos on a single charge, so 50k photos * 30 minutes == 2.8 years. The battery self-discharge will deplete before that though, so I'd expect 12-24 months. Note though that the SD card can only fit 20k photos, so the battery typically lasts longer than the SD card, and after that the oldest photos are overwritten!
- tcmb 2y agoDoes it have a standard tripod mount? Also, maybe for a later iteration, if you could make a case that enables compatibility with GoPro accesories would be plus. Otherwise, I'm very impressed, it requires a lot of dedication and different abilities to makes something like that!
- davekeck 2y agoIt unfortunately doesn't have a mount. (A friend has been hounding me for months about that...) I've been using adhesive pads to mount it to things. The Gorilla "mounting tape squares" are strong and don't leave any residue.
- wilgertvelinga 2y ago'The Gorilla "mounting tape squares" are strong and don't leave any residue.' Which is also an engineering marvel: https://www.youtube.com/watch?v=E-F2QQuZZGk https://www.youtube.com/watch?v=E-F2QQuZZGk
- balou23 2y agoHi Dave, nice project! I'd love to hear more about the low power design. You mentioned going for a MSP430 on here, and the high level architecture blogpost has some infos about the power domains too. But I'd love to see another blog post with some more nitty-gritty powersaving stuff. I was also wondering... have you thought about adding a simple streaming compression algorithm to increase battery life? Less data to write would mean less time of VDD_B being active. Could maybe even be implemented on the FPGA. I was thinking of something like delta encoding, with two different code lengths for small and big brightness changes (per color channel. E.g. first bit 0 -> 5 bits of +/-32 brightness delta following. First bit 1, 11 bits of brightness delta. You'd loose some minimal information if brightness changes by more than 2048 between two pixels, but you could just "smear" that change over two consecutive values (e.g. [0, 0, 4096, 4096, 4096] would end up as [0, 0, 2048, 4096, 4096])
- davekeck 2y agoThanks for the suggestions! The compression is an interesting idea. It's been a while since I touched the FPGA RTL but I think there might be space to fit something like that. Related to compression -- a dirty little Photon secret is that currently, the 12-bit RAW pixels are written as 16-bit words, so 25% of the SD card (the high 4 bits of every pixel) is actually zeroes. So an easy compression win is to compact those pixels, and we'll go from being able to store 20k photos to 27k photos, and spend less time writing the photos (like you said) which should translate to longer battery life. It would be interesting to quantify what the biggest consumer of power is while capturing a photo. I'm honestly not sure what the power breakdown would look like (image sensor vs SDRAM vs SD card vs ICE40).
- julius 2y agoThanks for sharing your product journey. Making hardware products is very interesting, when a single guy does it. Would you mind sharing some of your prototype to production journey? - How did you find companies that make the parts (pcb, enclosure)? - How do you assemble all the parts (do you do that yourself or did you find a company to do that for you)?
- davekeck 2y ago> - How did you find companies that make the parts (pcb, enclosure)? For the PCB, it came down to who could meet the specs that I needed for the board. I recall the three important specs being BGA pad spacing, wire thickness, and wire spacing. The ICE40 was the aggressing chip IIRC. I ended up using nextpcb.com. For the enclosure, I think I just Googled some and had 3 different manufacturers make the same enclosure, and chose the best one to mass produce. I ended up using mfgproto.com. > - How do you assemble all the parts (do you do that yourself or did you find a company to do that for you)? For the PCB, I had NextPCB do PCBA, except for the BGAs (which I soldered myself, 500 of them!) and motion sensors, because I didn't trust mailing my high-value stock to China during Chipageddon. That was likely a mistake -- in the future I would have them assemble everything, because their process isn't designed for how I wanted to do things, and soldering that many BGAs sucked. For the final assembly I did everything by hand (insert PCB into the enclosure, screw in PCB screws, connect battery, add battery shims [to prevent rattling], add RTV gasket to the backplate, screw in backplate screws, add lens adhesive, focus lens while streaming images). It's a ton of manual labor!
- nusl 2y ago“USB C, just like god intended” I like USB C more than A. Also quite like that this thing isn’t making itself available via wireless methods. Getting quite tired of every random thing having WiFi.
- conductr 2y agoNGL, my favorite part of USB C is that the plug works both ways.
- kaladin-jasnah 2y agoI don't really understand why this has to be heavily marketed as Mac-only. As an open-source product, restricting the application to the most restricted of consumer operating systems (namely that any consumer hardware can run Linux or Windows, either bare metal or through a VM, whereas only Macs can easily run macOS) seems a bit sad. I had to read through the comments here to realize that as someone who doesn't own a Mac, I _could_ theoretically purchase this and use it, even if it meant sacrificing some UX. Reading the comments, it would be trivial to even at minimum state that there could exist community support for Linux, in the form of a command-line tool, even if it's not as polished as a Mac app, considering how open this product is about its limitations, and would likely bring in more customers.
- xur17 2y agoStrongly agreed. I started scrolling through the website, was somewhat interested, and might have considered it, but just closed the tab when I saw mac only.
- ChrisMarshallNY 2y agoSounds like this guy is a Mac programmer, and couldn’t afford to hire folks to write for other platforms. I feel that pain. I write native Apple software, and the torrents of hate that I get, for not spending tens of thousands of my own dollars on multi-platform development (for a free app), is ridiculous. It sucks to be hated for something I love to do. It appears as if he’s opened the communication architecture, so it’s probably possible for someone to throw up their own drivers.
- conductr 2y agoYea I get that it's no BT/Wifi so probably USB. But I don't get why USB would require a mac. I personally like the hardware but don't care about the rebase or whatever software addons he strapped to it. If I just plugged in a USB cord and used any OS to copy off the photos, it would make sense. This is basically the same usage as a thumbdrive or point-and-click camera from early 2000s and shouldn't be limited to a particular OS.... if I'm understanding it correctly
- 2y ago
- whatahw 2y agoWhat is the use case? Trail cameras already do this and they cost $50 instead of $200 with better photo quality and better motion sensing. Oh and they take video too.
- deleted 2y ago[deleted]
- ocal5 2y ago> better photo quality and better motion sensing Would you have some specific model in mind, and what aspects of photo quality & motion sensing are better ? For sure, I never seen a so nicely managed battery life.
- whatahw 2y agoHis camera costs $200 and takes 3MP photos with no video capability and poor low light performance. A $50 trail cam will take at least 10MP photos, will have night vision and will be able to take videos. People have left trail cams out for over a year and they were still taking photos. Battery life is cool, but if existing devices already have more life than anyone needs what's the point?
- dsalzman 2y agoTrail cameras are much larger. So if size is a restraint this could be better, but valid point. Most trail cameras use 8x AA batteries!
- euniceee3 2y agoI can customize the code for this project where I cant with a trail cam. I wish my $50 trail cam would do timelapse and motion detection at the same time. Really I want timelapsed phones and videos if motion detection. Plus all the other reasons others said.
- azinman2 2y agoThis looks exceptionally cool. Thank you for writing an excellent Mac app - forget the rest of the hate here. Do you think this would be appropriate for turning into a long form video? I’m imagining seeing videos of my boys growing and playing where I just periodically dump the camera and eventually sitch it as frames into a movie. Anyway to know when it’s about to write over itself in storage?
- wasteduniverse 2y ago[dead]
- davekeck 2y ago> Do you think this would be appropriate for turning into a long form video? Time-lapses are certainly one of the intended use-cases. I still need to add video-export features to the companion app though. Right now it only supports exporting images. > Anyway to know when it’s about to write over itself in storage? Currently it silently overwrites the oldest photos once the storage is filled, but I've been thinking it should have a setting to prevent that. When the battery gets below 2%, the device enters "battery trap", where it stops capturing images and simply blinks the red LED every 5 seconds. Maybe there should be an optional setting to enter that mode when the storage is filled. Would that work for you?
- azinman2 2y agoI could always just use ffmpeg to turn into a video. Blinking when full would work. I think it’d also be helpful to know when that might be- like could I see the expected date somehow based on the rate of capture? Maybe that’s too niche of a feature.
- zellyn 2y agoThe camera and the blog posts are lovely! Beautiful and inspiring work. Is there any way you could publish an RSS or Atom feed? I'd love to follow your blog in my feed reader (NetNewsWire, fwiw).
- romanzubenko 2y agoAmazing post, read through all blog posts in a single beat. I would be great to have a final blogpost on assembly process. On a different note, it's mind-blowing that today one person today can do small scale design and manufacturing of a consumer electronics product. Super inspiring.
- parag0n 2y agoThanks for putting in the effort and time into this cool project. My question is: How does your manufacturing process look like if someone decides to click the "buy" button and do you have any open orders currently? Also do you actively use it currently on your bike or do you know some use cases of someone that bought/has it?
- davekeck 2y ago> How does your manufacturing process look like if someone decides to click the "buy" button and do you have any open orders currently? I assembled ~120 of these devices beforehand so I just need to package them up and ship them out when I get an order. > Also do you actively use it currently on your bike or do you know some use cases of someone that bought/has it? I intended to put the device in the garage to catch the thief, rather than attach it to the bike. But with a good mounting solution (which I should invest some time into!) you could certainly use it on a bike for time-lapses. It should work great for a cross-country road trip. A friend of mine is using it to do a timelapse of a house construction project, and I mailed out the first orders today so they're in the wild now!
- chrisallick 2y agoJust bought one. Not totally sure how I'll use it, but we shall see. I think addressing the waterproofing, glass blocking motion sensor, or the non-wirelessness will improve it...
- ezl 2y agoI truly admire when someone takes an hint of an idea iterates and iterates and iterates and gets into every nitty gritty detail. I salute you.
- devwastaken 2y agoCool hardware. It's DOA because the software is Mac only. You're selling a product, so if you don't put the features of that product in the hands of consumers, they will not consume. "Native apps" are proprietary junk. Make an electron app, flutter, or react app in a week for all platforms and your users will thank you for it.
- thalesfc 2y agohey Dave, what would you recommend if someone wanted to go from nothing (maybe some softw. experience) to be able to do a hardware design like this? Is there any book/courses you consider to be a must?
- davekeck 2y ago- I think the most important skill for making hardware is just having a good fundamental understanding of electricity. Just developing an intuition around Ohm's law gets you remarkably far in terms of developing and debugging circuits. Towards that end, Khan's "Introduction to electrical engineering" and MIT's 6.01SC Unit 3 both look great. - For this specific project, I needed to program an FPGA so I drew on my college experience (18-240) where we learned about FPGAs and Verilog. Coursera's "Introduction to FPGA Design for Embedded Systems" looks like a good option. - Don't be discouraged by hardware tools. Coming from a software background, using hardware tools is like traveling to a foreign land where good UX is punishable by death. At its core, designing PCBs is really just drawing 2D shapes, and it's striking how painful drawing is using hardware tools (eg Eagle, Kicad) versus how delightful drawing is using artistic tools (eg Sketch, Figma).
- thalesfc 2y agothanks!
- 8mobile 2y agoHi, I really like the webcam and its long battery life, on the landing page I prefer any comparison or more specific details. Bravo
- tobeagram 2y agoI feel like there's a huge market for this, especially as it can be used so well by consumers a fun (non) disposable camera. Lots of my friends have started buying disposables or point and shoot cameras as an excuse to solely take pictures and not worry about how they look until after they been developed. This is perfect for that, will start recommending it!
- ramonverse 2y agocan you make a microphone? I would buy that
- _lvbh 2y agoAlthough it’s advertised as MAC only, most of the code looks like it’ll work cross platform. I’m sure people can hack together a CLI if they need to on Linux
- pollyplummer 2y agoI love this idea! I think it would be really fun for my kids to use - maybe if it had a chunky wrap-around case so they wouldn't lose it. :) But overall this is such an elegantly executed concept. Did you ever catch the motorcycle thief?
- taoufix 2y ago$200?
- timms 2y agoNice work! It would be cool if you would make a schematic PDF available, the KiCad 7 import of your Eagle files doesn't give a very readable result. How did you choose the image sensor? Why an ON AR0330, and not OmniVision? Nice choice to use an MSP430, this is a good application for using FRAM. But why use an ICE40 and an STM32 together? Why not use an STM32 with a DCMI peripheral?