Automatic cat litter box. #3376
Replies: 48 comments
-
Posted at 2024-01-04 by @gfwilliams This looks awesome! It's so ingenious! Does anyone make anything you can buy like this, or was it all your own idea? I'm really impressed how nice you got this looking - so you just made it out of cardboard, added resin, some filler and sanded it down? How did you connect the servo to the dsd6? Just using the vibration motor output? Do you have a way to detect if the cats are in it before it does its cleaning cycle? I guess the DSD6 has an accelerometer so you could maybe detect any movement from the cats inside it and use that to delay the cycle? On the 'non-strong' software - I wouldn't worry! This is just the kind of thing Espruino was originally made for - if the code works, it'll almost certainly just keep working forever - it doesn't have to be pretty! |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-05 by @enaon Hello Gordon, there are some ready made products, but they all use a quite bigger ball and the whole cat enters inside, there is not a ball based one that half the cat is outside. I think most if not all are not really cleaning/maintaining friendly machines for a toilet use, some are ok, some are really bad designs, I am proud on how simple/clean this implementation turned out to be. It is battery/mains powered, 6 months of 10 emptying cycles per day is my estimate on 8 18650 batteries, but I will know for real after I run some test during this weekend, and is basically water proof. the dsd6 has the serial on the usb, it turned out that I can controll 2 servos, 2 relays and the powerbank using just those two pins, so I did not opened it up, it is a standard dsd6. I went for the dsd6 because there were many problems to solve, I wanted the controller to be really simple in the first go, the dsd6 and espruino made the controlling part a breeze. I made a custom lock that also transfers vibrations from the ball to the dsd6, so the accel is working fine for cat presence, I am using the tap feature of the accelerometer at 2g force sensing, every trigger resets the 2 minutes counter. I also monitor voltage drop during the emptying cycle, I found out that I can relate drop to sand weight quite well, so it knows how much sand is in the ball, and this also serves as a "something went wrong" alert. I also run the dsd6 power in through a reed switch that is disabled when the drawer is missing, so it has drawer presence sensor , 5 volts is power on, 0.6 volts is power off( powerbank in sleep mode, 30μA drain), 0 volts is drawer out. Yes, it is just cardboard, two component thin liquid construction resin, it soaks in the cardboard well, filling and sanding. The resulting material feels a bit like poly-carbonate sheets, very nice for prototyping I think, it was my first try using this technique, I recommend it. My comment on the "not the strong point" was about my coding skills, other that this espuino is rock solid, as it has always been for me, a true tool. I have some photos of the "making of" in this greek forum, I will be happy if you care to have a look. Thank you again for espruino, happy new year. https://www.phorum.com.gr/viewtopic.php?t=50568&start=75 ps, this is maybe the best product on the market, but it really served as a reason to make something more cleaning friendly, I do not like it, it is not bad but it is not good either, the scoop part is not even removable, there is no way to really wipe clean the sand pocket, I am not sure the people in the cat litter robots business really have cats. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-05 by @fanoush BTW nice to see you back, you went silent for quite some time so I was a bit worried what hapened :-) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-06 by @enaon death happened, but life goes on I guess, sorry if I caused worry, nice to see you too fanoush, I missed reading you. :) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-08 by @gfwilliams @enaon sorry to hear that, but I'm glad you're back! That's really cool about using a totally unmodified DSD6 - that makes them a really neat little tool! I was considering making something for Bangle.js that would give it IO (using SWD) but I think realistically it's a bit too pricey to be used in the same way. I did already look through the forum pictures - thanks! I'll have to give the cardboard + resin approach a try next time I need to make something biggish. I've always quite liked working with fibreglass, but I never considered building cardboard into it! I've got a laser cutter here so building nice cardboard parts should be pretty easy. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-27 by @enaon
You make me feel like a caveman, I didn't even use a ruler, If you make something please tag me, I am curious. I am leaving this here too, the electronics, dead simple. The nice thing is that the powerbank module I used has a very nice feature, it turns off if the output is shorted or overloaded, but turns on again on a button press. The button is sensitive to pulses greater than 100ms, so it does not interfere with the servo. this demonstrates a power loss and an overload, the logic only has to recover power, cutting off power to release the servo in a case of overload is done by the power-source, fail proof. Attachments: |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-27 by @enaon added bonus, I liked being able to remote control the powerbank output, so I made my self two powerbanks, one has 6 batteries and the dsd6 fits inside, the other has 5 batteries, two powerbank modules, and the dsd6 is removable. Attachments: |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-01-29 by @gfwilliams Thanks! That's great - it's really cool how simple that was to wire up. And yes, I'll have to have a try doing something with cardboard forms made with the laser cutter. I do a few things (like Bangle.js stands) with it, but I only really ever cut cardboard stuff out when doing craft things for the kids at the moment. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-06 by jmontane Hi, @enaon, I'm planning to fully replicate your design. I'm newbie with espruino, dou you plan sharing your code? I've already read Greek forum, but:
|
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-07 by @enaon hello @jmontane, yes I will upload the code to github, and will make a final parts list for the electronics. as for the controller, I was thinking about it a bit too. @fanoush may know of a band that could work and is still on sale, or maybe an official espruino board could be used, or even an esp board if battery operation is not importand, or maybe have it in sleep mode. (I have not yet done any proper measurements, but the prototypes are now 2 months in, 300+ empty cycles, ~65% battery level, idle consumption of the powerbank module looks good) I used the ds-d6, because I had some, Ι wanted the controller to be waterproof and it was easy to use the accelerator for sensing movement, but I will use the magic3 (*) next, I will place it on the top of the power bank/motor cover, it is removable so it makes sence for easy deep cleaning, and I will use a shaking vibration sensor- Ι am not sure how they are called, little glass capsules- for the sensing part, so maybe you could get one of those, the code for it will be on github too, with menus etc. I plan to upload the current code for the dsd6 on github by monday. (*) https://forum.espruino.com/conversations/347237/?offset=50#comment17292219 |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-11 by @fanoush
DS-D6 was unique because it has two generic GPIOS on the usb data pins. Only few smart bands made by same Desay company had this feature DS-D9,DS-D6, HX03(W,F) and also SMA Q2 had it. Sadly none are available for sale nowadays. I don't have any more new DS-D6, only few used used ones (maybe atc1441 https://youtu.be/3gjmEdEDJ5A?t=6 still has some ?) , I still have two boxed HX03W. If you just want nrf52 device with battery and screen and don't mind taking it apart to get GPIOs then the Magic3/C17 is cheapest and is even nrf52840 and relatively easy to open (price is about 11EUR with shipping and taxes from aliexpress) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-11 by @enaon
I wanted to ask you, I will have a look myself, but did you happen to find any unused pins on the board, like you did for the dsd6 back then? |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-12 by @fanoush no, not me, but @yngv126399 did something with adding e-ink to Magic3 recently and other people mentioned some stuff on discord over years with some photos. but I guess you already opened it many times so you already know the inside, |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-12 by yngv126399 I found 3 pads on the back that were not listed on @fanoush's Magic3 pin table: D13 (unmarked, grouped with SXD,TXD,D+,D-), D28 (unmarked, to the far right of that cluster), and D27 (unmarked, to the near right, below and to the left of D28). I also reused I2C SDA/SCL as I have removed the touchscreen. Of course, that's the ACCEL lines as well, so you'd have to write a cooperative routine that makes sure they don't interfere with each other. Also good for hacking is the DT28 (also cheap on AE). No "new" pins that I found, but you can find the touchscreen pads (SDA,SCL,INT,RST). When I get a chance I can check the RX/TX to see what they are... |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-03-12 by yngv126399 I do believe he still has several hundred thousand of those... |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @enaon this is a run cycle I just recorded, I like your tiny dash :) when it starts the empty cycle, the main gauge goes from powerbank battery reporting to ball placement reporting, you can see the empty cycle movement. Thanks again |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @gfwilliams
So is it that problem? That sounds a lot more serious than just a delay to me...
It should work ok - it tries to rechedule as soon as possible, but only after processing inputs and running through other intervals I believe. I guess it's possible if the first interval adds a timeout/interval itself it might trigger a re-run which might cause the behaviour you're having? |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @enaon
I believe so, I was able to make the dsd6 run slower just by making the signal worse, and eventually it was rebooting when using puck.js.com script. But I did not want the cli to be exposed anyway, so the NRF.updateServices solution is better in any case for real use, I did not investigate further. I can try something if you like though, I have a nice visual feedback of the delays to reboot sequence, the ball moves slower and then stops :) but I do not have the probem anymore, the NRF.updateServices way solved it for me. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @gfwilliams
Thanks, but I wouldn't worry - it's older firmware so it'd be hard for me to track down here (it could already be fixed if it is an issue). Glad you found a way around it though! In a way it'd be nice to have a way to easily check how full the output buffer was, but doing setTimeout after as @fanoush suggested is nice and easy :) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @enaon
nice, yes fanoush's solution sound fine, I will try it next time I want to use the puck.js script. I had one more problem with it though, in your git example there was not a disconnect on lost signal event, it was not disconnecting when signal was lost, so I used the google way to be sure, disconnect due to low signal works fine with the google example. Next time I will ask for info :) this is what I am using now it is served from github from this page. sCat-a in greek sounds like shit, poop etc, in case someone wonders about the name :) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-04-17 by @enaon
nice, most probaby this was the case, I do have a watchdog that only needs 5 secs to fire, because the button on the dsd6 resets every 6 seconds or so, and I want to trigger it manually if needed. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-08-20 by @enaon
thank you for this post, I had a look and I did found the pins you mentioned. D13 is the RxD I think, it is unmarked as you said but it is next to the TxD, so I guess it is the RxD. The TxD is pin D38, and pin D46 is active on the magic too, the one in the middle on the key connector, so 5 easy solder pins in total. Thanks. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-08-20 by yngv126399
|
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-10-01 by @enaon The toilets did fine during testing, so I've made some more, version 2 :) I have added:
This last one is very important: The toilet can now handle pellets, a world's first I believe, it can scoop the solid waste and sift the sawdust at the same time. This is a game changer, it leads to less waste volume and sand loss, for a fixed available volume it almost doubles the time needed between refiling the ball with sand/emptying the waste drawer. It also makes the silicone lining most commercial solutions use not needed, when using a clumping sand type like betonite, 5 seconds of vibration is enough for everything to get unstuck. I will upload a demo during the weekend, but until then if one can guess where the vibration is applied, and how the sawdust exits the ball, I will be happy to read. ps. automatic toilets need a clumping type of sand, so that waste, solid or liquid, can form an object larger than the hole openings. The sand will trap it self and the waste will roll out. Pellets do not clump when liquid is present, they dissolve to sawdust. This means that the dust will get trapped along with the rest of the sand, it cannot exit the ball, till now :) |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-10-23 by @enaon I had a problem with the Neakasa m1, the lid mechanism is a weak point, it got stuck, I had to disassemble the toilet and found a lot of sand inside, so I decided to make a lid that is cleaning friendly, as an extra. Big mistake, curves with precision are not easy to make, but I think I got it. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-11-04 by @enaon a small demo of the scale accuracy. It used a hx711 and 4 x 10kgr load sensors off aliexpress, the hx711 runs from battery voltage. I used the nordic PPK2 to test the hx711 at voltages from 3 volts to 4.2, readings were not affected by voltage, I read online that the hx711 modules are 5v only, but testing says they work fine from 3v upwards. there are tree BIC lighters in the video, blue=empty, green =almost empty, yellow=brand new. The scale is stable and can accurately tell which lighter is the full one, amazing espruino, I thought it would half work, instead it is the best scale I have in the house. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-11-25 by samsam Hi @enaon, congratulations on this amazing project! I’ve been following this project both on the Greek forum and here in this thread. I’m the proud owner of two young cats, and I’ve noticed that the products available on the market don’t fully meet their needs (or mine). This has inspired me to consider building my own solution or even replicating your design. Would you mind sharing more details about your second version? In the meantime, do you have a link or recommendations for sourcing the electronic components, especially the servo motor and sensors? Aliexpress can be overwhelming, and I’ve had bad experiences with fake or even unsafe components in the past (be cautious with relays, even when buying from Amazon). I also tried finding the Bama flower pot at the price you mentioned (around €14), but the only ones I’ve come across are significantly more expensive. I’m based in France—did you purchase it directly from the manufacturer? Lastly, the resin-filled cardboard technique is truly ingenious. Would you consider documenting the process in a video if you create another piece in the future? It could be an excellent way to inspire and empower people to move away from 100% reliance on consumer products. Thank you again for this incredible project and for sharing your knowledge! |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-11-27 by @enaon Hi @samsam, thank you for the kind words, I will upload a per item photo-story on the greek forum for v2, I am waiting for some parts from alliexpres, the vibration requires a better way to secure the scooping part, it moves out of place. :) I will also upload all the code for the magic3 on github. This a list of the parts I used(some you can find cheaper on other stores, those link are from my past orders page, so I have used them without problems, but I can see some prices went a bit up): for the Bama flower pot, ~18 euros is the standard price here in Greece, I can see that on amazon.fr it costs 26 and not available. I am not sure if any of the Greek shops ships to France. on the resin-cardboard I agree that it is useful for diy, it was an experiment so this time I got better and can do things like curves with no special tools or mold/template, paper is very nice to work with :) I will make some comments on the procedure, unfortunately all 5 new ones are past the resin stage now, but I do have some photos. But over all it is super simple, the cardboard it self is important on how well it "drinks" the resin, I found out that cardboards that are somewhat soft, are not very resin friendly*. The cardboard on the bama pot is excellent, if you peel out the printed layer, it will "drink" all the resin you place on it, perfect to get a good idea on how strong resing/cardboard can be. Very strong. I am actually a bit lucky, as the first cardboard I used was the one from the bama pot, so I got very good results, had I first used some others I later tried, I maybe would have dismissed the idea as not useful. *For example, I made two toilets using the cardboard from the neakasa m1, same thickness as the cardoard I used from some solar panels I got, but the neakasa m1 was not "drinking " the resin as well, I think some cardboards may have some anti moisture treatment on the paper, I think you can figure them out by how soft they are. The resin I am using is [this one] (https://www.alchimica.com/en/products/444/epoxy-resin-21-clear), it is used in construction applications, but I think any low viscosity/high penetration epoxy resin will do. For reference, 1Lt costs 22 euros, and each toilet(base/scooping part/drawer) needs up to 1.5 lt to be very strong, or as low as 0.5lt to be good enough. On how to apply the resin on the cardboard, I do it in two stages, first I use a painting brush to paint the resin on both surfaces of the cardboard, wait for 6-7 hours, and then depending on how well the cardboard drank the resin ( the second part is not needed for some thin cardboards like the one on the bama pot), I use the brush doing what one should never do when painting something, I repeatedly run it on the top edge, so that the resin falls though the holes. You can do it the other way around the first time, to get an idea on how well yous cardboard works with the resin. Run the brush on the edge several times to force resin through the holes, and wait an hour, the resin will eventually find its way down and out and will make the outer surface dark/wet. The time from no resin to ready is over 4 days, 12 hours in it will be non stick and easy to work with, bend it a bit, make final adjustments etc, maybe apply some more, but it needs at least 4 days to reach full hardness. the paint is FLAME BLUE spray, 400ml – FB-834 (LIGHT GREY NEUTRAL), and is almost identical to the Ice (white) Bama sfera flower pot. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-11-28 by samsam @enaon Our main concern has been how long we can leave our cats alone. We were aiming for around 15 days, which really limits the available options on the market. This litter box has a 13L dirt capacity, which might work for us since our cats (and their poo) aren’t too big. However, I wouldn’t want to rely on it long-term. One feature I found interesting is the microwave radar sensor, which eliminates blind spots. It seems like a great idea to incorporate into a DIY project. I didn’t purchase their entrance step, though, because $99 for a piece of plastic feels excessive. Instead, it seems like a perfect opportunity to test your cardboard-resin method. I’m really looking forward to more details from you. Thanks again for your help! |
Beta Was this translation helpful? Give feedback.
-
Posted at 2024-11-28 by @enaon
Good choice on the a CATLINK Pro-X self-cleaning litter box, we will pretend it was yours. :) 15 days is easy to achieve if you switch to crystal sand, or some other non clumping type for the period you are away. The 13L dirt capacity is not that important because if 13 lt of bentonite mixed waste is in the waste bin, no sand will be left inside the litter box, it will be empty, they will have no place to go. For 15 days you do not need just a huge waste bin, you also need a way for the the litter box to auto refill, or not loose too much sand. Crystal sand helps a lot on that part.
You are right, you can use polyurethane resin too, it is not as penetrative, you will have to use the brush running along the edge technique a bit more, the end result is indeed ABS like. Not soft, just bendable a bit, but strong enough. Price wise the difference it small, If you have one or the other use what you have to test, but if you get one I think an epoxy resin like the clear-21 is best, the polyurethane will need extra care to store what is left once you open the can. |
Beta Was this translation helpful? Give feedback.
-
Posted at 2023-12-26 by @enaon
Hello again, just wanted to share an idea, this is based of the dsd6 I got sometime back from @fanoush, using espruino of course. The ball is a flower pot from Italian maker bama, it is a bit small, 40cm diameter, but otherwise very nice for a cat bed or litter box, and well priced, so it gave me the motivation to make it automatic. Everything else is paper, resin and some polyester coating. The servo is one from AliExpress, 30 euro, 12volt 150kg, I am running it at 5volts, only using a max of 5watts for moving 3.6 litters of sand.
I will upload the code later, but it is not the strong point, I believe it is very cleaning friendly, very simple on using and maintaining.
I uploaded my endeavours in this Greek version of channel4 forum, in Greek but there are some photos, If anyone cares on the how to, I will be happy to share my problems and solutions.
https://www.phorum.com.gr/viewtopic.php?f=43&t=50568
this a simple demo run, is is designed to allow for as simple ball placement/removal as I could think of.
https://www.youtube.com/watch?v=u9RIlObnvNE
this shows how the scoop is removed and the sand emptied, for deep cleaning.
https://www.youtube.com/watch?v=7z5zREmaqtM
and this is an not so happy to be on yt cat, but she did go while I was filming the demo, so here she is.
https://www.youtube.com/watch?v=D4g8feknsxU
Beta Was this translation helpful? Give feedback.
All reactions