Arrow of time
Arrow of time
Supercapacitor experiments #1: just a LED

When I was a young student (in a third world country, mind you), around Y2K, we learned about capacitors in ...

When I was a young student (in a third world country, mind you), around Y2K, we learned about capacitors in pF, nF and uF ranges, that's pico-, nano- and micro- Farads, i.e. 0.000000000001 F, 0.000000001 F and 0.000001 F. All these are useful and used in practically all existing electronics. They are also very small amounts of Farads. Consequently, one whole Farad was considered ginormous, an almost mythically high capacity. I remember one student bragging that he actually saw a 1 F capacitor, and it was huge - larger than a brick. It was something of a Holy Grail to have one (though they would be useless for all "normal" things we did with electronics).

About a decade and a half later, advances in material science have made "supercapacitors" (those larger than 1F) extremely common and cheap. Still, because of what I was taught, I consider supercapacitors like the 9th world wonder.

I won't go into their construction, you can read about supercapacitor details on Wikipedia, I'll just make a small note on the difference between capacitors and batteries: though both store energy, batteries do it through chemistry: a reaction has to happen both to absorb and to release energy, so typically, battery capacity depends on the volume of the chemicals inside; capacitors store energy in their geometry: typically the larger the surface area of the capacitor's innards, the larger the capacity. Modern supercapacitors achieve huge surface areas within reasonable volumes by using a very fine powder, usually graphite or its more exotic cousins like carbon nanotubes. There are other significant differences, like in energy density (even supercapacitors have very small energy densities compared to the low-end batteries), charge / discharge curves (capacitors can be both charged and discharged much faster, almost instantaneously) and in charge cycles and durability (the "old style" solid state capacitors can last almost forever, the fancy new supercapacitors around 10 years, with hundreds of thousands of charge cycles).

When I found supercaps for cheap on Aliexpress, it was like finding a new shiny toy. So I got myself a 10-pack, and started playing with them. No photos here, all of them look alike, go click on some of the links.

What to do with a supercap?

I have a dream: to power something useful using a supercap and a solar cell. I currently have both, so my first test is to simply test charging it. I'll write more about this topic, so I'll just say that today is a cloudy and rainy day, and it took about an hour to charge the above 1.5 F 5.5 V supercap using this solar cell to around 4 V.

I've measured that this supercap charged to 5 V can power an ordinary red LED (through an 1 kOhm resistor) for about 2 hours. I will repeat this experiment with a Joule thief, where I expect it to last much longer.

My next goal is to find out how long would it power an Arduino, and to do that efficiently I need some more circuitry (a voltage booster). I will report what I find here when I get it.

What I will need next, and I currently have no experience with these kinds of circuits, is some kind of a battery charge controller or something similar, which would basically allow the supercap to charge, then when it is charged to about 5V, allow it to be discharged by an Arduino (or whatever else) until a certain lower voltage (say, 1V). In effect, I need something which would have a hysteresis in charging and discharging the supercap, so the Arduino can run occasionally, do some work, and go back to sleep / charging cycle. If you know of something like it (preferably as an ready-made PCB module), let me know!

Edit: I've started writing about electronics on a dedicated blog, so this one remains clear for other stuff.


Introduction to Go for Python / Django developers

This is a gentle introduction to Go for primarily meant for Django developers. Admittedly, it is in some ways like ...

This is a gentle introduction to Go for primarily meant for Django developers. Admittedly, it is in some ways like comparing apples and oranges. Since Go is a language (with a batteries-included standard library) and Django is a web application framework, this guide will make some choices on how to make Go useful for web application development. There is a very large number of Go libraries, frameworks and micro-frameworks out there, and more are developed...

Read More
C++ Atomic Types / Memory Barrier Performance (or: do we need CPU caches?)

A friend of mine, a computer scientist working on memory consistency models theory in C and C++, has relayed to ...

A friend of mine, a computer scientist working on memory consistency models theory in C and C++, has relayed to me an extraordinary claim, which boils down to this: "using memory barriers in code for each read and write does not have an impact on performance." Now, this claim is something he's heard second hand, and since he is an extreme example of a theory-oriented guy, the validity of this claim was not something he...

Read More
TIL: How do bicycles (and cars) turn?

It occured to me while driving a car that the act of turning direction is actually non-trivial. Reducing the case ...

It occured to me while driving a car that the act of turning direction is actually non-trivial. Reducing the case to a bicycle, consider this: You are pedaling your bike, and driving in the forward direction (of course). You now have certain speed and acceleration vectors pointing in front of you. You stop pedaling, and decide to turn left, 90 degrees to your current direction. You turn the wheel. Depending on the angle of the wheel and...

Read More
Bitcoin works exactly as intended, get over it

There have been some alarmist articles recently which basically boil down to "Bitcoin is doomed! Abandon ship!", and while I ...

There have been some alarmist articles recently which basically boil down to "Bitcoin is doomed! Abandon ship!", and while I agree with some of the points given, I think that almost all of them, together with most of the current users of Bitcoin, are a bit missing the point of its existence. Here's my take on it. Blockchain itself is independent from the networking part, and it works fine The blockchain is basically a way...

Read More
Why Oculus Rift is not the future of VR, and Cardboard is?

Because of availability. Thank you for reading, and good night, see you again sometimes, don't be a stranger! Explanation ...

Because of availability. Thank you for reading, and good night, see you again sometimes, don't be a stranger! Explanation I didn't think it needed an explanation util I talked with a collegue of mine who almost completely disagreed. Here are four reasons why I think that, unless corporate shenanigans fuck things up, a descendant of Google Cardboard will still exist in 5 years, while currently hyped darlings like Oculus Rift, Samsung Gear and others will be forgotten. #1: VR...

Read More
Using Go for web app development

Last year I've been considering and experimenting with learning another compiled programming language, which would supplement Python which I ...

Last year I've been considering and experimenting with learning another compiled programming language, which would supplement Python which I normally use for, well... almost everything nowadays. There's really only one objective reason for this: performance. With Python, it simply never gets better, and Python 3 is a mess, with basically non-existent PyPy support. Sure, I could write performance-sensitive parts in C (or C++) and use them from Python, but... no, just no. The things I...

Read More
Developing Bitcoin services - general notes

For some time now I've been developing back-end stuff with Bitcoin, and here are some things I wish I ...

For some time now I've been developing back-end stuff with Bitcoin, and here are some things I wish I could have learned the easy way: If analysing the blockchain (for whatever purposes), it's all fine and breezy until about block 200,000 - that's where the fun starts. Don't test your code with earlier blocks, since compared to the more recent ones they are trivially small. Python is fast enough, PyPy is faster. If you're using bitcoind RPC,...

Read More
Story: Court of the Red King

1946. On an almost black and white day in November, the plaza was full of solemn people. Tens of thousands ...

1946. On an almost black and white day in November, the plaza was full of solemn people. Tens of thousands of them, in fact, had gathered under the gray sky, in the semi-circular theater surrounding the huge podium, in the middle of the busy construction project of the Great Hall. It was said that, once completed, the monster building would take two hundred thousand people, all watching and enjoying the power of their Reich....

Read More
How are successful open source projects started and what keeps them going?

I've been thinking about what drives the core developers of successful open source projects, or in other words, what ...

I've been thinking about what drives the core developers of successful open source projects, or in other words, what keeps the projects going. These are just my own thoughts, they may or may not be correct or applicable for any purpose, YMMV. Being done by human beings, open source projects depend on those people being motivated. In general, people are motivated by similar things, and those, I think, are in open source projects...

Read More
Go: methods, receivers and benchmarking

One interesting feature of Go is how easy it is to write tests and microbenchmarks for it. In fact, tests ...

One interesting feature of Go is how easy it is to write tests and microbenchmarks for it. In fact, tests and microbenchmarks roughly folow the same syntax. Another interesting "feature" of Go is how it introduced subtleties in language which can be tarpits for beginners and those familiar with other languages. Take for example the Go equivalent of classes. There are no classical classes here, but a way of doing things which is similar to...

Read More
Trying out Nim, D, Go and Rust - part 1

Currently, if I want to describe myself as a developer, I say I'm a "C and Python guy." What ...

Currently, if I want to describe myself as a developer, I say I'm a "C and Python guy." What I mean by that is that I like to work best with C and Python, and seek such opportunities - but it didn't start like that. I basically grew up on BASIC and Pascal and counting by LOC I've probably written the most in PHP. I also have experience with C++, assembly, Java, C# and JavaScript,...

Read More
Why do you need an Encrypted Notepad?

If you are like me, you probably have dozens (or even hundreds) of passwords for various services and systems which ...

If you are like me, you probably have dozens (or even hundreds) of passwords for various services and systems which you either don't want to "remember" in your web browser, or the services are not (shockingly, I know!) browser-accessible. You have probably already remembered to search for an application for your mobile phone, or your desktop, a laptop, or whatever, which would to the job of remembering "7i48!fac3" for you. And then, like me, you've realised that there...

Read More
Why FreeBSD's pkg sucks

A not too long time ago I was a big FreeBSD user, with dozens of production installs. Gradually, I've ...

A not too long time ago I was a big FreeBSD user, with dozens of production installs. Gradually, I've been using it less and less and now I feel I must describe why, in a hopefully productive and positive fashion. In short: it's all about the packages and ports. An operating system is useless without its applications, and the currently blessed binary package management system, the pkg is seriously broken. I was very enthusiastic about pkg (then called Read More


Installing Django on Windows

Though it is obviously a blasphemy, sometimes it is actually necessary to run Django on Windows - mostly due to a ...

Though it is obviously a blasphemy, sometimes it is actually necessary to run Django on Windows - mostly due to a client having based its infrastructure around the Windows ecosystem. The "blasphemy" part comes from Django being a really nice framework which evolved on and for a Unix-like system, and it relies heavily on features like WSGI, FastCGI, and command-line tooling which are foreign to the Windows environment. Luckily, the compatibility is improving, by features...

Read More
Online.net physical ARM-powered cloud

Online.net is a French hosting company offering the usual range of services from simple web hosting for 1 € / mo ...

Online.net is a French hosting company offering the usual range of services from simple web hosting for 1 € / mo to dedicated servers, but with a twist I haven't seen before: their offer of dedicated servers is incredibly affordable! See this example: for 6 € / mo you can get yourself a dedicated VIA Nano x86 CPU powered server completely for your own usage. These CPU's performance is comparable Read More


Intel Atom vs Xeon performance

I recently got myself a small laptop, an Asus Transformer Book T100TA, and I'm surprisingly happy with it. The ...

I recently got myself a small laptop, an Asus Transformer Book T100TA, and I'm surprisingly happy with it. The current generation of these devices is what netbooks were supposed to be: very portable, with a very long battery life, but still powerful enough to be usable. In fact, I'm writing this blog post on it. Finally, both the hardware and the software (the device is running Windows 8.1 and I'd be crazy...

Read More
On (artificial) intelligence

Consider this armchair philosophising on the possibility of artificial intelligences. My stance on the existence of our biological intelligence is ...

Consider this armchair philosophising on the possibility of artificial intelligences. My stance on the existence of our biological intelligence is that it's a matter of accident, in the sense that all evolved traits are basically accidents: random mutations which get selected for over a large time span. It was very probably honed during that time, as individuals which had "more of it" had an advantage over the others. However, something singular must have happened some time ago, some...

Read More
Story: The Sin

It looks like "the writing bug" comes with the territory of being a nerd with an abundance of ideas and ...

It looks like "the writing bug" comes with the territory of being a nerd with an abundance of ideas and a complete lack of time to do them in. I have been writing mostly technical articles for almost 10 years now. In this time I've written literally hundreds of articles, at a rate of approximately one every week or so, most of them for a real, printed IT magazine in Croatia named Mreža. That's all in...

Read More
Why I listen to Nick Cave

Just listen to this as the sountrack to this post. I hope it will not be a long one. A ...

Just listen to this as the sountrack to this post. I hope it will not be a long one. A few days ago I was surprised, and a bit amused when some of my friends told me they think I'm a pretty cheerful and relaxed person. Which got me thinking of the ways in which they were right and where they were not. Soon after that event I've watched Nick Cave's...

Read More
  • 1
  • 2