I had this idea for an app to handle registration and results for kayak races. I had the following requirements in mind:
- It must work when off-line
- It must work on laptops and tablets
- Preferably, it will sync up with a server when it is on-line
- It must not require any installation or other technical futzing around because my target audience (the people who run kayak races) are not all very technically sophisticated.
I discovered PouchDB, which would take care of the storing information locally in the browser when off-line, and also would sync to a server when it came time to do that. And so off I went programming away. My little proof of concept was humming along, it could accept registrations and display and edit existing registrations, and I was well set to add results entry and display, when I thought to try it on the bane of every web developers lives, Internet Explorer.
First problem: IE reports the ‘fetch’ is not a valid function. Fortunately, the documentation for PouchDB warns you about that, and says to install a polyfill. So I install it, and now IE reports ‘Promise’ is not a valid function. Hmm, no mention of that in the PouchDB docs that I can find.
Can I just mention as an aside that the PouchDB docs do say that it supports IE 10 and IE 11? Yeah, about that…
Thanks to an answer on StackOverflow, I find another polyfill for Promise. Now IE reports that you can’t use IndexDB on web pages that are loaded as files rather than as URLs. Not sure what to do about that except tell people to stop using IE. It appears that with my polyfills and stuff, it does work in Edge, at least. Small mercies.
My Linux server, which I bought back in 2011, was getting flaky, crashing and freezing up with alarming regularity. So the first thing I tried was ripping out the two nVidia video cards – I’d originally put in two because I was using it as my daily driver and running three monitors (including a 4K), and didn’t need them any more because I only had one monitor on it and rarely logged into the console since I switched to using a MacBook Pro and then later a 5K iMac as my daily driver.
But that didn’t really help much, so I started looking at a replacement, and instead of getting a JNCS motherboard bundle and then finding my own case, power supply and drives, I bought a complete system from JNCS. However, in anticipation of getting the new system, I bought two new 4TB drives to replace the 3TB drives in the existing systems. And after I’d finished migrating the data from the 3TB drives to the 4TB drives and took the 3TB drives out of the system, the random crashes stopped! Shit, I didn’t have to buy the new system after all!
But anyway, the new system arrived. I moved the two 4TB drives and the two 256GB SSDs from the old system and fired it up. I had a hell of time swapping cables around and between SATA ports because I’d get the BIOS to recognize 3 of them but not 4 of them until I found just the right combination. I think a new set of SATA cables might be in my near future. After getting the BIOS to recognize the 4 drives, I could not for the life of me get it to boot from them. The grub menu would come up, but it couldn’t find the /boot partition for some reason. I tried booting with a live image to repair the boot, but couldn’t get it working, so I said “screw it” and just installed a new Kubuntu onto the built-in NVMe drive and restored all the required functionality from the old system.
I also had a hell of a time with the 4TB drives – they were RAID-1 with LVM on top of them, but the new system wouldn’t recognize them as RAID-1. I tried various “mdadm –assemble” commands, with no luck. Finally, I said screw it decided to just nuke it and start again. I used fdisk to re-write the partitions and did a “mdadm –create” to create a new RAID-1, but as a complete surprise to me, the system immediately recognized the existing LVM system and gave me back all my data!
Anyway, it’s working great now and one of these days I’ll be confident enough in the new system to reformat and repurpose the old SSDs. And boy does that NVMe drive boot fast!
|2007 Machine||2011 Machine||2019 Machine|
|Processor||Intel Core2 Duo E6360 1.82GHz 4MB Cache, 2 Core||Intel i7-2600K LGA-1155 3.4GHz 8MB Cache, 4 Core||Intel CoreTM i7-8700T Processor 12M Cache, 2.40 GHz|
to 4.00 GHz Turbo, 6 Core
|RAM||2x1Gb DDR2-800||4x4GB DDR3-1333||2x16GB DDR-2666|
|Disks||2x500GB HDD, 2x1TB HDD||2x500GB HDD, 2x1TB HDD||500GB NVMe, 2x256GB SSD, 2x4TB HDD|
|Motherboard||Intel DQ965GFEKR||Asus P9H67-M EVO||Asus PRIME B360M-A|
So I found a new waterproof external battery pack for the GoPro. This one used a waterproof case and a gland nut on the GoPro, and a separate battery pack with another gland nut. I’ve been starting to come to the conclusion that the problem with the GoPros shutting down is one of heat. So I was hoping that keeping the battery outside the camera case would reduce the heat build up.
I charged the new battery and attached it to the GoPro with no internal battery in it. I tried setting the GoPro to 4K/60fps and took it out while walking Gizmo, and then just letting it run. It make a strange chime and then shut down after just over an hour. I let it cool down a bit and reset the camera back to 1080p/60fps and (without recharging the battery) got over 3 hours on it.
What I’d really like to do is try it at 1080p/60fps in a more realistic scenario, where things are moving and the image stabilization has to work like it does in a real scenario. Maybe I’ll put it on the oscillating fan and just let it rip.
Ok, so I kicked both cameras down to 1080p instead of 4K, figuring it would reduce the heat build-up. And I managed to get the expected 4+ hours out of camera #1. Great!
However, camera #2 is still having problems – it would shut down as soon as I hit record. I tried doing a factory reset, I tried swapping SD cards, but the problem appears to be that it just doesn’t like the sidecar battery. It doesn’t matter which sidecar battery I use – as soon as I turn it on, it turns off. Take off the sidecar battery, and it’s quite happy recording for 100 minutes.
I think for this weekend I’m going to try using the sidecar battery on camera #1, but just going bareback on #2. I’ll probably put #2 on the bow facing back, because that view is usually only important in the first part of the race. When I get home, I’ll see if GoPro will admit there is a problem with their camera, although since it only happens with a third party battery I don’t have high hopes.
use a “sidecar” battery for my GoPros to get some extra battery life.
And when I was using them with GoPro Hero 5s, I was frequently getting
3.5-4 hours of video recording. But at the Round The Mountain race, one
of them shut down after less than an hour (I’d turned them both on
really early hoping to capture some of the flavor of the start area, and
it ended up shutting down when I was warming up). I took them out for
another test and I got 99 minutes out of the first and 120
minutes out of the other. In both cases, the sidecar battery appears
empty or nearly empty, but there’s plenty of life left in the “built-in”
battery. I’m able to turn them on and record another 80-90 minutes
after I finished.
know if it’s an overheating problem, or what. Unfortunately the sidecar
requires both it and the camera to be in a clear plastic case, which
can’t help with the heat problem. I wonder if I should cover the whole
thing in tin foil except the lens area?