Search This Blog

Sunday, June 23, 2019

DSLR Intervalometer - Source code made available in GitHub


For those who remember my work back in the days with implementing an intervalometer for Nikon cameras (yes, in spite of it being rather simple to implement in the camera firmware itself, these larger brands prefer to classify such a feature as premium and make it available only in more expensive DSLRs), I have detailed in the following post, the solution that I have put together:

https://www.creationfactory.co/2012/03/timelapse-intervalometer-technology.html

Initially I built the Intervalometer to control (via a wired interface) a Fujifilm S9600 camera, but later I have converted the design to include an IR transmitter, and as such be usable with practically any Nikon DSLR with an IR-remote port (normally used with the ML-L3 IR remotes that are sold separately). This device mimics the ML-L3, and furthermore it has the intervalometer capability.

I have now made the project schematics and firmware source code available in GitHub, for those who wish to build the solution or contribute/fork/take as inspiration for a new project. You can find it in my GitHub section, under:

https://github.com/teixeluis/camera_shutter_timer

Enjoy!

Saturday, June 15, 2019

Yet another product safety issue - a self-balancing electric scooter, a.k.a. "Hoverboard"

Considering all the fuss about this particular type of personal transportation gadget having been responsible for numerous fire incidents, given that it is already part of a distant past (by modern perception), I took the chance of buying one of these units, going for a cheap one. My expectation was that this industry had some time to mature and learn with all the beating they received from the press and these incidents:



As such I searched for the available products and ended up deciding on a "BBOARD-60-B" from a brand called Brigmton.



It was a relatively cheap proposition, as I only had to shell out about 70 Euros for it. It features two 350 Watt motors, and a 36 Volt / 158.4 Wh battery.



After unboxing the unit, I noticed a rattling noise whenever I would shake it, as if there was something loose moving inside the unit. At first I underestimated the situation, assuming it could just be some random piece of plastic from the injection moulding process that got separated from the main plastic part.

But after some rides, and thinking in hindsight about other products that went past my hands, I finally got the wake up call I needed to open up the unit and check out what was going on.

These scooters are split in two relatively independent halves, that communicate via a central joint. This joint provides one degree of freedom, which is the necessary for the user to control the turn rate and direction.

Opened the cover of one of the halves, and immediately stumbled upon the twisted cause of the rattling: a 12mm long M4 screw lost inside the case where half of the electronics of the unit live, most notably the PCB with its exposed contacts, and the power MOSFETs that drive the motors.






Depending on where in the PCB this screw would touch, the results could range from frying some electronics and the story ending there (which could have painful results if happening while riding the unit), to more catastrophic scenarios such as the battery overheating and catching fire with the short-circuit caused by the screw.

Looked exhaustively inside the case where could this screw belong to, but could not find any orifice missing a screw there.



This strongly suggests that by mistake during the manufacture, the worker (or machine) let the screw fall into the case, and whithout noticing the presence of the said screw, closed the case normally and moved it to the next step of the assembly line.

After this experience, I was glad I opened the unit to check for what was the noise. On the other hand I was annoyed, because it is unfortunate that as a consumer I have to worry about these things, in spite of having been a cheap unit when compared to others. Safety should be for all, not just for the deeper pockets.

With this finding I considered it would be a good idea to inspect the rest of the unit, to check if there could be other suprises (even though I tend to be less and less surprised about what goes on in many China sourced products...).

Opened the other half, and found another equal board, and also the battery:



Other than the loose screw, I could not find anything obviously incorrect with the assembly. Two identical boards are used in both sides. Both these boards are populated with what appears to be the brains of the entire device, a GigaDevice GD32F130 ARM architecture microcontroller:



The battery module is a typical 10S - 2P 36 Volt 4.4 Ah job. These are composed of 20 18650 Li-ion 3.6 Volt cells, where two sets of 10 series connected cells are parallel connected, to double the Ah capacity of the cells. These modules usually have an integrated BMS (Battery Management System), allowing for the charging and cell protection to be done independently of the device where it is connected.

One curious aspect is the fact that they choose to use an XT60 connector (which has superior thermal and current handling characteristics -  60 Amps max) in one of the sides (where the battery is located), and selected a Deans connector on the other side. Both types of connectors are popular in the RC hobby industry, but have found increased use in other applications.



It would have been more reassuring to find the PCB coated with some kind of conformal coating (potential contact with moisture is a very likely scenario), but as it is visible, it is quite naked, straight from the reflow oven:



The casing also does not provide any serious isolation against water ingress, so definitively this device should not be used anywhere near water.

Another interesting aspect is regarding the unpopulated section of the PCB which apparently would house a bluetooth module, given the antenna pattern etched in the PCB, and the format of the module drawn in the silkscreen:



At a later time I may research a bit further about similar modules featuring bluetooth, and if/how a generic Bluetooth - RS232 module can be fitted and used here, and in this case, which of the two boards should have the module (one board is master and the other is slave?)

For now I will cross fingers and hope that the screw was the only serious issue with this hoverboard. The teardown and inspection left me reassured to some extent though..