A Single Light to Monitor Them All in Real Time

The context

This week-end’s project was focused around building a simple indicator on my desk that alerts me of any problem at home in real time. That way, I don’t need to regularly check things around. Well, this may sound overkill for many people. But over the years, I’ve written a program to monitor many things around me without the need to perform a regular check myself. The only thing I was missing was some real-time monitor that would alert me whenever something urgently needed my attention.

Computers. I am a computer engineer, and as such I do have a few electronic equipment around. I also monitor the temperature, humidity in an out of the apartment and also water leaks with sensors, as I have some sensitive musical instruments in my home. In the past 2 months, the temperatures here have gone up to 37 degrees Celsius several times. These measurements have helped us, without air conditioning (which makes things worse on the long term), mitigate the heat. We could close everything when outside was hotter than inside, and open in the evening when the temperatures outside were coming close to the temperature inside.

Here are the temperatures my system measured for the last 5 days:

Where I came from

I already had a raspberry pi set up with a tiny monitor showing all the indicators and a big green light (or orange or red) showing the overall status. Something like this:

But this screen consumes 2.5 Watt when it is on, and only 0.15 Watt when it is off. This is a substantial difference, not even mentioning how much wear it causes the screen to be constantly on, just to show a green light!

The solution

A simple solution: use simple LEDs (which consume virtually nothing) controlled by the raspberry. So I built a first circuit to test the whole thing out:

Of course, that also works with the screen off, that’s the goal after all!

A printed circuit

I had to arrange things together on a smaller plate:

… and solder the whole thing together (yes I butchered the soldering, sorry):

That was a mess…

Buddha (you can see his legs on top of the picture) had a hard time coping with the mess, but he played his role perfectly and went into a deep meditation:

And of course I then had to use this very useful piece of equipment for the cables:

Trying it out

The first testing worked out as expected.

I just needed to print a little box for it with the 3D printer:

Final words…

Using a single green LED was not an option. If it was constantly on and green, it could simply mean that the program crashed… which is not good. I could make the LED blink… but any blinking inevitable catches the eye and is bothering. But two green lights alternating doesn’t catch the eye, and ensures that the program is alive.

On the other hand, the error state and the warning state with an orange light are blinking to make sure that my eye will see it:

And now I have an indicator on my desk telling me at all times that everything is ok. Or not.

The managing software is now on my gitlab: https://gitlab.com/jytou/monitoring-and-sensors/

Planned Obsolescence 0 – 3D Printer 3

Here is another short blog post showing the use of 3D printing against planned obsolescence… or simply the inevitable wear of objects, even when they are well designed. There was a part 1 and part 2 before this one.

The problem

In this particular case, I had a perfectly functional object… except for one little part:

As you can notice, the plastic piece that is supposed to hold the paper roll has broken. And it is not a simple fix with some glue:

Designing a solution

Fortunately, thanks to 3D printing, we can now print the same piece at home. Some 3D scanners out there can quickly scan the piece to print an exact copy. However, a broken part generally signals a weakness in the design. This is actually confirmed by the other, symmetrical, piece which started cracking in the exact some area. So printing the same piece would lead to the same problem later. Thus I redesigned it, adding some reinforcements in the area where it broke.. This way, I will reprint the piece with a stronger structure in the places where there is most tension:

Implementing the solution

And now we just need to print it:

The result looks good and quite similar to the original except it’s stronger in the weaker parts:

The main difficulty of this piece was the part that plugs into a rail on the main dispenser. The rail had to be precise enough to allow moving without being too loose.

And it is finally fixed!

Now I am waiting for the left arm to break – it will be a piece of cake to replace it.

Conclusion

Think of all the metal and plastic that could be saved if we repaired our objects instead of systematically buying new ones!

Planned Obsolescence, 0 – 3D Printer, 2

This is a follow-up to my older post Planned Obsolescence, 0 – 3D Printer, 1.

Have you ever had a problem with you vacuum cleaner where the electric cord just won’t stay out and will annoyingly get back inside the machine slowly? Like this:

Well, that happened to me. You can of course open it and try to figure out which piece is having a problem. But there’s a good chance that it won’t fix it for good and the problem will come back – that’s the whole point of programmed obsolescence.

So I designed a very simple clip to hold the wire in place, using the spring of a normal clothes peg – which by the way turned out to be very impractical as a temporary fix.

Here is the result:

 

Plain and simple, and downloadable on my thingiverse page, as usual.

So, here we go, Planned Obsolescence 0 – 3D Printing 2. 🙂

A Board for Paper-Based Spaced Repetition Memorization

I’ve been using spaced repetition for quite some time now. My favorite program is Anki, even if I have also tried a few others. I had actually developed one myself before I even knew the SuperMemo algorithm existed back in the late 1990’s, that was more than 10 years before the first Anki release.

Interestingly, spaced repetition has been around since the democratization of computers. That’s for a reason: spaced repetition is very easy to do on computers, but not so easy with physical supports. Although Piotr Wozniak, the inventor of Spaced Repetition, used paper to do his studies, he switched to computerized version as soon as he got a computer. I have been wondering for a while how it could be achieved without too much hassle from the user’s point of view. I finally came up with a rather easy and elegant solution.

The problem with regular flashcards

Who didn’t try to make paper cards of things they wanted to remember? You write a question on the front side, the answer on the back side. It could be anything, including pictures. When picking that card, you have to remember the answer. By repeating the process, you’ll learn that information, eventually.

However, without a planned schedule, that process is very inefficient. You often get exposed to cards that you already know perfectly, which is frustrating, especially if there are so many of them. The sensation that you’re losing your time is taking over. Then you’re tempted to put them away for good. Only to realize a few months later that you forgot the information they hold. Similarly, you sometimes get exposed to cards that you have already forgotten.

This is why Spaced Repetition has been invented: it is optimizing the interval at which you are exposed to the different cards.

Spaced Repetition principles

So, just as a reminder, what is Spaced Repetition?

Basically, it is taking advantage of how our memory works. When exposed to some information for the first time, the brain forgets it very fast. It could be just an hour or a day. Then it filters this information out, to give space to new information. But when exposed to this information again before it is wiped out, the brain starts giving some bigger importance to it. Thus it will remember it longer. Maybe 2 or 3 days.

Again, after a few days, that information will be deleted. Unless you get exposed to it again before it is erased, in which case it will get an even stronger importance. This time, the brain will remember it for a week or two. And so on. Basically, every time you remember that information before it gets deleted, the brain sort of doubles its importance. This means that it will take double the time before it forgets it. “Double” is a rough estimate, the actual rate varies from person to person, and heavily depends on the knowledge to be learned itself, along with the eagerness of the learner.

So the goal is to be exposed to the information at increasing intervals. The key being that the information should reappear before it is erased from your memory.

Attempts

There are people who have attempted to do that. Of course, the inventor himself came up with tables where he marks the intervals.

Although it works, it uses up some paper, and you need a cache to cover the words that need to be learned.

Other people have invented something which is closer to my goal. The idea is to have several boxes, each one of them contains a different interval. The first time you’re exposed to a card, you’ll put it in the first box, which is the daily interval. Once it is learned, it goes to the second box, which could be the weekly interval. And so on.

There is still a problem with this method: if you pick cards from the weekly box every Sunday, then you’ll pick cards from Saturday, which is not good.

In other words, the question is: how do you know how many cards to pick from the weekly box and when to pick them? How do you know 7 days have really passed since that card was put in the box? You don’t know. Which can cause problems. Especially when moving to longer intervals.

Thinking of a board

I thought about developing a board on which it would be easy to know when to pick cards, especially on longer intervals.

Just like the boxes, the goal is to have several zones on the board, with increasing intervals. Thus when remembering a card in a certain zone, it is then moving up to the next zone. This way, the intervals for a card are increasing, similar to the boxes.

Furthermore, for a card in a long interval zone, we can add markers to show where we are in the interval. Luckily, it is not difficult to make markers.

Additionally, everything depends on the size of the cards you want. I chose the “compact” route, with cards that are square and not bigger than an inch (actually 2 cm in my prototype). But of course, the same principle could just be used with bigger cards, it would simply take more space.

The final result and its explanations

Here is the model of the board I have come up with, which I then printed with a 3D printer.

The column on the right represents the shortest intervals. Every column has two parts: the left part with larger holes in which the cards can be kept, and the right part that contains small holes in which little pegs can be inserted. These pegs are the markers that help keep track of where we are in time.

Moving Pegs

Basically, you just move every peg one step further. They show you directly which cards need to be reviewed that day. Here is what happens when you start a new day:

For the longest intervals, the pegs are moved forward only when the last daily peg reaches one of the marked spots, as seen in this picture:

This way, the two last columns move forward only when the “Daily Move” column reaches one marked spot. This happens every week and every month, respectively.

Note that the last 3 columns have more “peg holes” than “card holes”. Therefore, you don’t need to review cards in these three columns right away when the peg comes to a new spot with cards. Instead, you can pick them gradually, for instance on less busy days.

Learning cards

Every day, you pick cards from the spots that are marked by the pegs. If you forgot the contents of the card, then that card goes back to daily learning, at the bottom right of the board.

If you did remember what was on a card, then you can move it to the next zone, just behind the next zone’s marker. This way, you will have to wait a full cycle of the marker to review that card again.

Here is the representation of the movements of the cards, according to the current peg positions on that board:

Conclusion

This board, which I have already been using for a while now, is very convenient for spaced repetition without the need of a computer. It is quite compact, in fact I have calculated that it could hold no less than 5000 cards. Of course, other boards can be printed if this is not sufficient! It still needs to get a decent cover so that it could be easily transportable.

The board is available to print on Thingiverse: https://www.thingiverse.com/thing:3974248

It is also available on my gitlab: https://gitlab.com/jytou/3d-paper-spaced-repetition

I have also written a converter to print your anki decks: https://gitlab.com/jytou/anki2papergenerator

Broken Stuff 0 – 3D Printing 1

Recently, I got a package with broken stuff in it. It was actually some shelves with doors, and the broken part was that plastic part that contains magnets which hold the doors closed. Here is a picture of what I received:What generally happens in this kind of circumstance is that people will complain and return the package, then get another brand new article. That’s a lot of wasted transport and energy for such a little missing piece.

So I decided to 3D print the part. In the process, I decided to make it more ergonomic. Those white plastic parts are generally a little sharp and can even scratch your hand if you’re not careful. So I designed a round one. I also had some round magnets around and I decided to use those rather than the stock ones which are rectangular.

As the shelves were made of wood, I also printed that part with wood PLA. Here is the resulting piece with the original near it:

Then I glued the magnets in place:

And here is the final result:

Isn’t that much cooler than the original? I love 3D printing!

Planned Obsolescence, 0 – 3D Printer, 1

It is not the first time that I fix something with 3D printing. But this one was an interesting one!

The problem

A few years ago, I bought two stands for my microphones. Okay, they were inexpensive, and maybe it was a bad long-term choice. Maybe I should have opted for more expensive ones. But I have noticed that higher prices don’t always mean better quality. These days, they often mean higher reseller margins.

Anyway, both stands were poorly designed. Even though they did last several years, they finally broke recently, roughly at the same time. Unsurprisingly, the faulty piece is a part made of plastic. It sustains high pressure on a very small surface. And after a while, it just gave in. I believe that, without me noticing, cracks developed over time, until they became big enough to break the piece completely:

As you can see, it is pretty bad. Of course, I couldn’t find spare pieces, especially as these are already “old” (anything beyond a year is “old” nowadays). And without this piece, the stands are totally unusable.

Reflexes…

The first reflex was: it’s cheap stuff, I can buy new stands! Why bother for 20 euros?

But apart from this broken piece, those stands are in perfect condition and they could serve their purpose for many more years. Why pay? Why extract more metals from the Earth, build more plastic pieces mostly from petroleum, more rubber from trees or worse from petroleom again, use energy to forge, heat, assemble, then use again more energy to ship those new stands to me or go and fetch them from a local store – where they would have been shipped from somewhere anyway? And dispose from transport boxes that kill trees? As well of course as disposing from the broken stands. And as a result buy new stands in a few years when those new ones will break?

I didn’t actually want any of that, especially as I have the “Planned Obsolescence Killer” at home : a 3D printer!

Compared to all the waste of buying brand new stands, printing a piece is quite environment-friendly: it does use some electricity (not much), and I mainly print using PLA, which is basically made of… corn. This material does have its pros and cons, but it is certainly better than petroleum-based plastic.

Designing a solution

I spent some time designing a solution. This piece allows the axis to be rotated to the desired angle, and it is a functionality that is really needed for this kind of object! So even though there were many alternative ways of fixing that stand, I wanted to stick with the original design as much as possible.

On the other hand, printing this kind of piece with PLA was going to get me in the exact same trouble in a few years: the plastic would certainly not resist the pressure. I could also print with nylon, but I try to avoid it as much as possible due to environmental concerns. Besides, given the pressure on that piece, I wouldn’t be so sure that even nylon would resist for a long time.

I first thought of adding washers to maximize the surface in contact, but I finally came up with using nuts with a ring base.

3D modelling and printing

Here is one part of the final model:

I heated the printer and printed the pieces:

Results

That piece has two other pieces which hold the nuts in place and stop them from turning, even if the pressure actually isn’t a rotating one but a pulling one.

Mounting the nuts in place and putting one of the pieces in its socket:

The socket for the second piece is clearly visible. The final mounted piece:

And now it was just a matter of putting it instead of the old piece:

Et voilà ! Both stands are fixed with just a few grams of PLA. I think they will last some more years. In fact, I believe this kind of thing should last at least for a lifetime. But then, how would we sustain “economic growth” to pay for growing banking interests?

3D printing – part 1

I have been curious about 3D printing for a few years now but never found the time and courage to finally take the first step and buy a printer. The fact is that the prices were quite discouraging for a simple hobby, at least that’s how I saw it.

I did have some real interest in 3D printing as I actually already printed a few items through a 3D printing website, such as a camera cache for my tablet and a magnet holder for my drinking glass.

While the first one is a classic, you might wonder what the second one is for. I invite you to check the Professor Luc Montagnier’s research on water, it might give you a few clues, and this is just a little experiment of mine. Since I have been drinking that polarized water (for a few years now), I have not been sick, although there are still some things that could be improved in my lifestyle regarding health.

Anyway, back to 3D printing, the cost of delegating the printing to a 3rd party is quite prohibitive. The second piece cost a mere 30 euro + shipping. And I ordered 2 of them. You’d better not make any mistake in the design.

Then, in December 2017, I found a 3D printer kit on Gearbest on sale at 100$. I thought “What the Heck, this is the equivalent of printing 3 of my magnet holders!”. And I had many other projects in mind but I was reluctant to make them because of the inferred cost. So I just bought the printer, although I had some idea that as it was a kit it would require quite a bit of attention and time. Well, that’s an understatement.

The thing is that 3D printing is not yet for everyone. Not only as a bare kit, but also in general. Even high-end 3D printers are still having a lot of issues, from what I read on the Internet. I’m actually glad that I bought a kit:

  • it was very cheap,
  • I got to get familiar with every single part and detail of the printer,
  • if anything fails I always have a fix at hand.

The last point may be the most important of all. If you have a stock printer, when it fails and you don’t want to burn your warranty, you have to go back to the seller or the manufacturer. That’s a lot of cost, time and energy (communicating, explaining your problem, sending it to the post then waiting for it to return, etc.), when you could actually use that time to fix it yourself.

Of course, the thought of printing your own stuff is very thrilling. But do bear in mind that 3D printing is very demanding, and before jumping into it, you should know what you are putting yourself into.

Although I’ve had my printer for just 6 months, I have already printed quite a lot of things. In fact, the printer has been active for almost 2 full months:

And I have also spent some time transforming it, fine-tuning, fixing problems, etc, and it is significantly different from the original kit now:

Anyway, what I can say is that it is also very demanding, in time and energy. Many things can go wrong with that technology, especially if you start from scratch with a kit:

  • there are obviously heated parts (at least 200°C, that’s 392°F), which can be dangerous, including the hazard of burning yourself,
  • mechanical problems including bending parts,
  • precision is key, a fraction of a millimeter can make the difference between failure and success,
  • sensitive electronics (a motherboard, an LCD screen),
  • strong currents that can represent a fire hazard, especially as the basic equipment that comes with the kit is not exactly 100% safe,
  • melted plastic, with all its potential caveats (toxic gas, fluidity, adherence depending on the temperature, stuck nozzle, etc.),
  • bugs in software and firmware,
  • moving parts and wear (soldered wires coming out…), strongly vibrating parts which can cause loose screws, detached pins, etc.),
  • noise issues…

I think you may get my point by now. Every single of these aspects is sensitive enough to cause printing to fail. Just keep this motto in mind: “If it is possible for anything to fail, it WILL fail after some hours of printing.” Thus you want to have everything safely secured so that there no possibility left for it to fail.

In order to achieve this, many different skills are required:

  • feel at home with computers (obviously) and have some minimal knowledge of electronics is definitely a plus,
  • fixing mechanical parts, including very small and detailed pieces,
  • patience (that’s a big one as printing big parts can sometimes take a full day or more – my record is 37 hours),
  • being capable of soldering and making your own wire connectors,
  • unless you only want to print things that have been designed by others, 3D designing skills, so that you can take full advantage of your printer, creativity is definitely a plus here,
  • coping with the constraints inherent to 3D printing (minimal wall thickness, connection thickness and detail, as few hanging parts as possible, etc.),
  • finding an appropriate place to put the printer in your home (if you plan to print ABS you definitely want a ventilated area),
  • evaluating the physical resistance of printed pieces. This point is not a joke, especially as heat can come into play with certain materials:

In this particular case, it was a combination of underestimating the strength of the piece compared to its width and the weight it was supposed to carry, but the color with which I printed it was quite sensitive to the heat from the sun, and that was PLA. After printing it in white and a bit thicker, I don’t have any problem anymore although the temperatures in France are currently reaching 35°C.

So yes, there is a lot of fine-tuning, trial and error in 3D printing. And changing any single thing in your habits, including the filament brand or even color can break a print.

However, all this said, 3D printing is a lot of fun!

Have a look at my thingiverse page where I share pieces that can be of use by other people (which is not always the case: 3D printing is mostly about making pieces that fit exactly your own needs – not necessarily your neighbours’).