The content of this blog is my personal opinion only. Although I am an employee - currently of MIPS Technologies, in the past of other companies such as Intellectual Ventures, Intel, AMD, Motorola, and Gould - I reveal this only so that the reader may account for any possible bias I may have towards my employer's products. The statements I make here in no way represent my employer's position, nor am I authorized to speak on behalf of my employer. In fact, this posting may not even represent my personal opinion, since occasionally I play devil's advocate.

See http://docs.google.com/View?id=dcxddbtr_23cg5thdfj for photo credits.

Wednesday, September 02, 2015

Watch and fitness band

After the Withings Activite' Pop failed to satisfy, I have reverted to a slightly updated version of what I have been wearing for the past year: a semi-smart watch on one wrist, and a fitness tracker wristband on the other.

Before their watery demise, I was wearing the Basis B1 watch, and a Jawbone UP.   I bought the Basis watch first. I later bought the Jawbone UP, at first just to get vibrating alarms - but I liked the UP iPhone app so much more that it became my main fitness tracker.   I mainly used the Basis as a watch, to tell the time, and because it had a display so that I could see how many steps I had done without opening my phone.

Now I am wearing a Pebble Smartwatch, and a Jawbone UP2.

The UP2 because I continue to prefer its app, and for sleep monitoring.  The Jawbone UP was able to tell whether I was awake or asleep automatically, but only the Misfit watchapp can do that on the Pebble - and it interferes with other watchapps, like the Jawbone UP watchapp, which actually counts steps. 

Interference between watchapps is the bugbear of the Pebble.

I was therefore a bit disappointed to learn that the UP2 has separate modes for sleep and awake.   Automatically detecting is the entire reason I got the UP2.

The Pebble SmartWatch  (a) because running the Jawbone UP watchapp displays steps taken in almost real time - i.e. because it has a display.   (b)_Swimming.  (c)_Other smartwatch goodness: (c.1) calendar (via SmartWatch Pro), (c.2)_notifications about email and text (mixed blessing, needs better filtering), (c.3)_bus and train schedule. (d) Because I can write my own watchapps, in my own copious free time. 

I can already feel the gravitational pull:  I am frustrated when something that could fit in the smartwatch's limited form factor is not available as a watchapp. Just as I prefer to use my cellphone for most things that fit on it, I think the same will apply to the watch.   The cellphone just has a bigger display, and the MacBook an even bigger display, and a big keyboard.

If we had goggles...

Tuesday, September 01, 2015

Development Platforms for MIPS (esp MIPS64)

I have often been asked by my hacker friends "Where do I get a MIPS based system to play with?"  As in home, personal, hacking and experimentation. SW and/or HW.

Apart from saying "Well, your home router probably has a MIPS CPU" or "Install OpenWRT or the like on a home router" I have never really had a good answer for my friends.

In particular, I did not know where to find a MIPS64 development system - to recommend to my friends, but also for my playing around with at home.

I just found the webpage of MIPS development systems here, and in particular the Ubiqiti Edgemac ERlite-3.  With its big brothers in the Ubiqiti EdgeRouter family (datasheet), the ER-8 and the ERpro-8, ranging from

2 MIPS64 cores (from Cavium) @ 500 MHz

512MB DRAM / 2GB flash / 4 ports


2 MIPS64 cores @ 1 GHz

2G DRAM / 4GB flash / 8 ports

with prices from circa 92$ to 345$ on Amazon.

I was about to complain about the relatively small amounts of DRAM and Flash for 64-bit OS development.  (Although, a lot more than most routers have.)

But: this is MIPS.  SW TLB miss handling is the norm.  If you can memory map the flash, you could make the flash part of the memory hierarchy beyond DRAM.  I.e. treat DRAM as a cache for flash, write absorbing.

Heck, this could be a fun system for ASPLOS type OS hacking, designing alternative page table structures for OSes, virtual machines, etc.

Attach a NAS to the ethernet ports, and away you go.

A very nice system for SW hacking, especially if you hack at the virtual memory level.

Unclear how much hardware hacking you can do.

Daddy knows what he wants for Christmas.

Monday, August 31, 2015

Now trying Pebble as a fitness (swim) monitor

After my disappointment with the Withings Activite' Pop, described in previous blog entry, I am going to try the Pebble smartwatch.

Actually, I was about to give up and reproduce my old configuration - a Basis watch, *AND* a Jawbone UP wristband - but I realized that I could get both a Jawbone UP2 and an original Pebble for the price of the current Basis Peak model.

Plus, the Pebble is the only other relatively inexpensive fitness watch that supposedly can handle both swimming and walking. After the Withings Activite' Pop, the next stop seems to be Garmin triathlon devices >> 200$.

Plus++, the Pebble supposedly has much other goodness: downloadable apps, a free SDK so that I can try writing my own, etc.

Performing a Force Sync & Simulated Workout (Pebble) – Swim.com:

'via Blog this'

Thursday, August 27, 2015

My new fitness watch: Withings Activite Pop

I just got my new fitness watch: the Withings Activite' Pop.

It replaces the Basis B1 watch and Jawbone UP that I have been wearing together, one on each wrist. I got the Basis in October 2013, and the Jawbone UP in November 2014. Replacing them because they died after being soaked in rinse water with my wetsuit. :-(

I considered getting a new Basis watch and a new Jawbone UP, since the combination worked well, except for the large UP being a bit tight.

But I decided to switch to the Withings Activite Pop, mainly because it was one of the few activity monitors that can automatically track swimming as well as walking.

This blog to track experience.

Ubiqiti EdgeMax ERLite-3 - Imagination Community

Ubiqiti EdgeMax ERLite-3 - Imagination Community:

'via Blog this'

Looks like this may be a fun and fairly inexpensive way to do 64-bit RISC hacking.  (MIPS64.)

Plus, if it doesn't work out, it's still a good router, recommended by the bufferbloat guys.

Wednesday, August 26, 2015

Comcast home internet unusably slow (typically afternoons)

Yesterday and today I have worked from home rather than going into the office.

Both days my internet connection has become unusably slow sometime in the afternoon. This has happened before: I used to joke that it happened "When the kids got home from school."  But the kids are still on summer vacation.  Still, it could be "When the kids get off from day camp", or "When the stockbroker down the street stops trading for the day".

This afternoon slowness has happened many times before - so much so that I fell into the habit of driving into the office rather than working from home.  I had forgotten that this was the reason I was not working from home - I was wondering why I was not using my treadmill desk, which I love, as much as I would like (because I prefer to read email in the afternoon on my treadmill desk - and if my Comcast internet is unusably slow, then I try to be in the office in the afternoon, and hence do not use my treadmill desk).

I have not hitherto investigated this problem in detail.  Apart from saying "This is probably bufferbloat", but never getting around to installing modern OpenWRT, with bufferbloat mitigation, on my routers (because my first attempts to install CeroWRT/OpenWRT/DDWRT failed, possibly locked routers).

This blog item to hold notes related to investigating this problem.  In public, because it is unlikely to hurt, may embarrass Comcast into fixing the problem, etc.

Tuesday, August 25, 2015

Bluetoooth Stereo Headphones: Kinivo 240 & 220 neat SoundBot SB20 and Jarv Joggerz BT301

I depend on a headphone/headset/mike in order to participate in phone meetings.

I find that I cannot use earbuds - they hurt my ears, and often cause ear infections.

I prefer on-ear headphones. (Or over-the-ear, or around-the-ear.)

I used mainly to use wired headphones, but I had pretty good luck with a pair of Kinivo BTH240 bluetooth headphones.  When I mislaid them, I decided to do a bit of comparison. I have tried:

Kinivo BTH240 (29.99$ for a "Limited Edition" bright blue set; the set that I purchased in December cost me 24.99$, which seems to be a typical price.)

Kinivo BTH220 (13.99$)

Soundbot SB240 (14.99$)

Jarv Joggerz BT301 (17.99$)

BOTTOM LINE:   the Kinivo headsets 240 are best, mainly because they have a greater range of volume - they can be cranked louder than the Soundbot or the Jarv Joggerz.

The BTH220 differs from the BTH240 mainly in that the 220 uses a mini-USB connector, while the 240 uses a micro-USB connector.  The 220 also has less battery life.

One might think that the Kinivo BTH240 and the SoundBot SB240 would be similar - the common number "240" suggests they use the same silicon.   Physically, I prefer the Soundbot - it is easier to find the buttons to turn volume iup or down, and/or go forward or back on a podcast.   But, more important is that the Kinivo BTH240 can play louder than the Soundbot SB240.

Volume matters to me, because I listen to podscasts played from my phone to these headsets, typically while walking in the woods.  When walking near a moderately loud road, the Kinivo BTH240 volume can be turned up loud enough so that I can hear, while the Soundbot SB240 is drowned out by the road noise.

I do not know if the difference in loudness is due to physical construction, or due to electronics.   I suspect the latter.

The Jarv Joggerz BT301 was a hopeful acquisition:  the Kinivo and SoundBots all have fairly big bars connecting the  earmuffs, which make it difficult to do floor work like stretches and situps.  The Joggerz has a much lighter wire that sits closer to the skin.  Indeed, the Joggerz can be used to do situps: but overall the Joggerz is almost inaudible at my healthclub with its pounding music.  Moreover, the Joggerz controls are much harder to work.

So that's it: the Kinivo BTH240 is my preference, the headset that I try to use in the gym or outside.  The others I keep as backup, at my office, or in my home office.

As for colors: I mainly don't care, but there is some small utility value in having different colors, to make it easier to keep track of which is charged or which belongs in my gymbag.