Showing posts with label nRF51422. Show all posts
Showing posts with label nRF51422. Show all posts

Friday, September 9, 2016

The case of protocols–Kinetic and ANT+/BLE

It has been a long time since I’ve posted, but I wanted to chime in on something that affects me more as a consumer than a developer. It’s the recent choice by Kurt Kinetic to continue to avoid ANT+ and the standard BLE profiles.

I’ve recently read the Simon Sinek book “Start with Why” and I’ve watched the Ted talk (here) numerous times annually as a reminder. Having worked with a startup and poured my heart and soul, and not to mention 60 – 80 hours a week for over two years, I feel that I’m a little in touch with the why I do things. The why for me is connected with my what – as in my personal history. Motivation to make a cheaper powermeter extends from being poor and being fat, and changing that with smart purchases. One of my first smart purchases was the Kurt Kinetic Road Machine.

I wanted a trainer for my used road bike. My choices were Cyclops, 1up, or Kurt Kinetic at the time and these were all big purchases for a poor Masters student. As a person of engineering I researched and researched and researched. What I came up with was that over long periods of use (think years, like 5+ years) the Cycleops may leak. The 1UP, while well reviewed looked cheap and dated. Then Kurt Kinetic, new in the world of trainers, only one product, a little louder than the competition, had a trainer that was guaranteed not to leak. And boy was the technology amazing. It couldn’t leak! EVER! I was amazed. So I bought it, and I stayed home all morning waiting as long as I could for the UPS guy to show up… only to find that he just left it outside on a busy street. Mixed emotions that day.

[DSC_89214.jpg]

Not only this, but there was a power curve. I had just heard about training with power and I was intrigued. I built up a little Arduino platform, wrote some software that pre-dated TrainerRoad and Zwift by years that allowed me to follow my workouts from the Andy Coggan / Hunter Allen book “Training and Racing with a Powermeter”. I trained to this power curve using my own software for 2 years. Over this time I migrated to using the ANT+ Speed / Cadence sensor instead of the Arduino.  Then I got a Quarq Cinqo Saturn and adapted the software to use the ANT+ power profile. But the power curve of the Road Machine was in the software still and I tested it against the power meter and I was happy with the results from Kurt Kinetic for all those years. The ANT+ profile was so easy to implement. It could be done in a day!

[DSC_9595%255B4%255D.jpg]

If you go through my photos on this blog you’ll see my trainer in the background in a lot of them. It doesn’t matter what I’m working on, the Kurt Kinetic Road Machine is always there. It was my rock. It was a powermeter test device. It was a calibration stand. I even got a dial gage and magnetic base and it became an AMAZING truing stand saving me hundreds of dollars.

Over the years Kurt Kinetic grew and I was excited. I was also loyal. They came out with the rock and roll and I loved the idea (but couldn’t afford it). They believed in a reliable trainer that never leaked and innovation! That was their why. They had a cycle computer that had a regressed power curve, like I was doing, but it couldn’t log data and was expensive. I forgave this because I believed in the why of Kurt Kinetic. I would say “They make good hardware. Bad electronics from a probably Chinese outfit can be forgiven”.

Then Kurt Kinetic replaced the bad cycle computer with a little pod. I was excited until I found out that it was only BLE. My Cell phone didn’t have BLE (Samsung Galaxy S). I have a background in mechanical simulation so I don’t use a Mac because there is no Solidworks or ANSYS or ABAQUS or CATIA or Unigraphics or PRO-E or Altium or ORCAD or.. well you get the idea. I make things, and to make things with professional software I use Windows. Windows had almost no good Bluetooth support then, let alone BLE. I figured I’d forgive this transgression because “Kinetic” (dropping the Kurt) does awesome hardware. This module is probably outsourced. It’s not part of their “why” as a company. It’s just to fill a gap to try and catch up with Wahoo. Or maybe they believe in BLE only – not a large sin, but still a sin in my eyes.

Enter Smart trainers. I didn’t like the original Wahoo Kickr. Maybe it was early firmware, maybe it was that the cassette didn’t align properly to my wheel and I’d have to constantly adjust the rear derailleur between riding indoors or outdoors. Maybe it was that it never appealed to my price conscientious history – again, being very poor growing up means that high profit margins can put a very foul taste in my mouth. Gouging customers is akin to murder with me. Charging over an MSRP for instance should be met with the end of the Rick and Morty episode re-enacting “The Purge”.

So I brush it off. Smart trainers aren’t (at the time) my thing. They aren’t even close to accurate to a real powermeter at the time. Software control of the trainers was non-existent and slow and BAD. I also thought there cannot be a market for this 1800 CAD product (Bad exchange rate at one time). However, the market grew and smart trainers were a thing. Wahoo had invented an all new product, and after some teething pains, they got it right. Early adopters through to creating a market. Congrats to Wahoo. Awesome work. Now for the bicycle paddle boat that Chip wants to make.

So now I’m thinking about how most things work so nice together over the years because I got into the right ecosystem. I had a Garmin FR60, replaced with FR910xt and an Edge 500 replaced with 520. I have Trek Bikes with built in Speed/Cadence sensors. I have a HRM from Garmin and one from 4iiii’s. I have numerous pieces of software, all working with an ANT+ USB stick perfectly, reliably, without fail. Multiple devices can receive and transmit. It’s a wonderful ecosystem – now owned by Garmin. However, they try VERY hard every year at the symposium to say “guys, if you have ideas we’ll help you write a whole profile, just work with us!”. They invented Connect IQ as a way to accelerate this! They allow for Private manufacturer pages to be reserved and tested openly with Connect IQ. Garmin wants peripherals! What they probably don’t want is watch and head unit competition – but that’s another story. The only reason I see to not support ANT+ is because you are going to make a BLE only head unit.

Which brings me to Polar. Polar right now is where Nokia was when smart phones were invented (or maybe a few years after). If they survive I’ll be impressed, and if they do, their only saviour is the iPhone and later Android, by latching on (poorly) to the BLE profile and still trying to act superior. I don’t know the story well, so I won’t speculate too much, but it did lead me into an interesting problem.I’ve used the $500 CAD Polar V800. It’s a joke compared to the FR920xt or the new FR735xt. I’d pay 100 – 150 CAD for it personally. Same goes for the Sunnto Ambit 3. So disappointed in these. In a few years they may get their act together and maybe (doubtful) Apple will help out people with the power profile and push the implementation. To Apple, who really is the push for BLE, the dedicated sports market is a small market. Their money comes from the every person who wants to “feel different” and is willing to pay.

Now we can segway into how this affected me and my girlfriend. My girlfriend has a Nike runwatch made by TomTom. It uses the Nike proprietary footpod and a Polar proprietary HRM. While I had spare ANT+ and BLE HRM’s nothing would work with the watch except the nearly $100 CAD Nike specific Polar HRM. She wanted heart rate data while running, but baring multiple devices she couldn’t. She wanted Strava data from here watch, but had to use numerous websites to upload here data or also capture to her very large phone. She couldn’t merge the HRM data with the Nike data from a non-GPS watch. It was bad. Everything was just harder. Initially the BLE was flaky too due to poor implementation in most apps. In fact it was so frustrating as Nike updated their site, removing a lot of features, that she pretty much gave up on Nike altogether. Nike and Polar had blocked her from her own data. So now what?

We got a used FR910XT for her cheap and the Nike watch we don’t know where it is. It was cheaper than buying more proprietary stuff. It uses the FIT format and ANT+ and even though it’s older, it’s way more capable than other newer products I’ve used.

So let’s look at the pro’s and cons of Implement ANT+ / BLE.

Pro Cons
Instant compatibility with software 0.25 USD Licence Fee for nRF52
Ability to support new profiles quickly May have to switch from nRF51822 to 51422 and increase cost
Felt as part of an ecosystem, can implement new features and roll them out to others as part of the working group Develop BLE support or migrate existing proprietary takes time and money
Can use Connect IQ on Garmin products for apps and widgets Develop ANT+ Transmit / Receive takes development effort, again time and money
Increased industry contacts and exposure via working groups Risk competitors finding out your ideas
Existing profiles can be quick to implement with reference code Could be major costs on changing IC – restocking fee’s to lost reels = up to 10000 dollars USD

And now the Pro’s and Con’s of proprietary

Pro Cons
Build an Ecosystem Single company implementation is same effort as multiple
Control of development of new features Slower implementation by 3rd Parties
Control Power consumption Deploying features could break others API implementation, meaning a lot of support, and risk of it being dropped
Deploy features faster Risk a 3rd Party API replacing yours causing incompatibility (See Wahoo BLE API)
  Risk of loss of market share to competitors
  Risk of loss of investors (If any) due to incompatibility (testing by investors) or failure to meet sales objectives of new products

I’ve heard that Kinetic will try and explain it’s position, and I welcome them to doing this. Maybe I have missed something in my several years working with the ANT+ and BLE protocols. I also know that working with a single company with something proprietary is harder than a standard for 10 companies. The biggest thing it comes down to is normally feeling like you’re in the Garmin sandbox. Frankly, that’s why people are doing ANT+ and BLE. For choice. Implementing ANT+ gives you access to a whole new Connect IQ platform. Companies like Stryd have used it to implement power recording in run modes – Genius!. Companies like Specialized have used the Apps mode for their MTB demo about a year ago. It could have been done on a smart phone but I don’t know many people who ride a MTB with a smart phone strapped to it. Could Stryd have “worked with Garmin” prior to Connect IQ to implement this – yes and no. Yes because they want to implement a new product. However, implementing power on a non-power watch could turn a run only watch to a tri-watch competitor, so Garmin may have said NO. By taking that risk you could say Garmin could damage their own sales, but for ever sale they damage they probably grew 2+ because of Stryd.

Unless you have a lot of developers it’s going to be harder to do anything on power consumption and getting companies to implement a new feature and recompile and re-release an app is time consuming. And if your new feature you’re pushing to market hasn’t been tested and vetted you risk breaking someone else's software. That makes people less ambitious to update API usage.

There is a smaller development cost to implement existing compared to re-inventing the wheel, a small cost on the chips if thought out from the beginning, and a lot of positive PR. However, if the choice was made and the chips aren’t ANT+ compatible then it could mean a major design change. However, if they use the nRF51xxx series that means they can drop in the ANT+ compatible chip and swap the stack. They likely haven’t purchased more than a reel of IC’s and that could have run them 10k USD. However, that is the lost sales of maybe < 50 trainers profit margins? How many sales would (or have lost) by not supporting it from the start?

I just read all the comments on Ray’s post. Joel from Kinetic is trying so hard to be diplomatic which must be so hard. They have an internal decision that see’s him being beat up on. Not only that, but personally I’m saddened. The Road Machine allowed me to train effectively with power before my powermeter journey. I made my own ANT+ transmitter for it. I tested it’s power curves. I’ve shown my girlfriend how to use her Power Meter with it, and do an FTP test, and ride with TrainerRoad. I watched a new market come to light and I would stand by my Road Machine saying it’s awesome and doesn’t need to be stupidly plugged in. That it was solid with my 100kg putting out a 1200 watt 10 second sprint when I cinched down the tire. I don’t personally stand by their decision and I’ll eventually vote with my dollar. A few months ago I thought my Road Machines bearings were going – I still haven’t confirmed it. They suggested an RMA and I felt a little bad. It’s 6 years old now. It’s seen hundreds of hours. However, I had to pack it up and figured maybe I’ll just buy something new. After today I don’t believe in the why of Kinetic any more. I’m sorry and saddened. They lost their way. They lost their why. I know what it’s like to see a company lose it’s why. It hurts so much.

I’ve seen these type of decisions made because companies want an “ecosystem” but then they don’t realize that it doesn’t matter. It’s ambitious and unless it’s your only focus then you’re developing nothing. If something is a published standard that means there is a way to test and check that it works. If you have to send an API, hold someone's hand walking through it to implement while they are also implementing a standard, then who will get integrated first? It’s cheaper emotionally and time wise to a consumer to buy a whole new trainer than to wait for someone else’s product to be compatible. You’ll never be first to be incorporated into software, you’ll always be last. You don’t get to do what everyone did last year – show off Zwift or whatever new software is being shown in every trainer booth at Eurobike, but you get to do it later after it’s no longer novel. You get to be the last guy to show up to the party, but nobody is waiting for you because they are already starting to leave.

I don’t know what the reason behind avoiding FE-C, Power, Speed, and Cadence on ANT+  or why they are using their own proprietary BLE spec. I mean the ANT+ working group got beat up a lot for “holding back FE-C” but it’s now the unifying body. The problem is that these are standards that are already fighting it out. And as much as I hate to say it, ANT+ may lose. It’s easier to implement, quicker to get right, cheaper to get certified, but BLE is in every cell phone now. However writing your own proprietary characteristics for BLE and not publishing them means you are the third guy – the guy that’s forgotten about before anything starts. The Nokia, the Polar, and the Kinetic?

If Kinetic jumped, listened to the hundreds of thousands of dollars customers are saying they won’t spend, and say “We hear you” – then I’d consider them when I buy a smart trainer in a few months. You were already late to the smart trainer party being hosted by Wahoo and attended by Elite and Tacx with special guests Zwift, TrainerRoad, Training Peaks, Strava and more. Having your own party down the road the next morning isn’t going to be as fun.

BUT

Kinetic has a great opportunity here. There is no unified FE-C equivalent for BLE. What if Kinetic steps up and says “We might only do BLE, but we are going to lead Bluetooth SIG to making a profile because the industry needs it! We are going to reach out to TACX and Wahoo and get us all on the same page”. Without ANT+ I still don’t think I’d buy, but they would have found their why again.

Sunday, March 23, 2014

ANT+ Weight Scales “Hack” (a start)

I haven’t written for the blog in a while. I still plan to continue the review process of tracking software but it’s fallen to the way side as I’ve been helping out with all sorts of projects at my new job, getting use to my new surroundings, and just generally trying to keep up with an exercise routine.

That exercise routine means that I’m getting more weight contentious. I like to refer to myself as a “tank of a person”. I’m not designed for endurance sports – my body takes more to things like weightlifting. So triathlon is fighting an uphill battle. I’m getting stringent on the diet side of things. I use to track my weight manually in an excel spreadsheet, but more and more pieces of software can track it as well along with my activities consolidating the data.

Garmin Connect is shown below. With a single data point based on this hack.

image

Essentially I wanted a Tanita BC-1000 or BC-1500 but as shown by DCrainmaker here in his comments, the ANT+ weight scale thing isn’t what he’d recommend. Sadly, I think he’s right, mainly because of the use case. It’s nice if a watch can track, but the FR910xt isn’t designed to be worn all the time. My FR60 was, but it didn’t do powermeter data.

Since I’m not in the mood to spend that much on a scale, I figured I’d toy with some things first. Mainly the goal is a cheap digital scale, connect it to the nRF51422 and voila – a basic ANT+ scale. It won’t do body fat measurements, but its a start. Eventually I may look at a Withings or Aria solution.

I’ve skimmed the data sheet from www.thisisant.com so I’ll just dive in.

image

There is suppose to be a bunch of two way communications back and forth but it’s not necessary for basic weight. Essentially the scale spews weight and the watch will get it. I throw the ANT+ sensor simulator into weight scale mode. It starts transmitting data. I can set it to computing, invalid, or a weight and set the weight in 2 decimal increments. No idea what the watches will record.

image

Page 2/3/4 contain the other information like hydration, body fat, metabolic rate, and mass of muscle and bone. I noticed when I tried this with the FR910xt that it just received the data, but the FR60 immediately sent data back to the sensor simulator for my activity profile. I think this is to try and support multiple people and the scale can use the height and age in the BIA calculation for body fat.

image

Interesting.  Some pictures showing how to turn on ANT+ scales  on on your watch. First the FR910xt:

DSC_9849

DSC_9853

DSC_9854

DSC_9855

Here is the trick. I had to actually check the manual. Press the power button and it’ll start scanning for the scales! I spent a few minutes feeling like an idiot here.

DSC_9857

DSC_9858

DSC_9860

DSC_9863

I noticed that if I changed the software up or down while in this view, so did the value on watch screen. I haven’t experimented yet with what is recorded on the watch.

Now with the FR60. The menu setup:

DSC_9867

DSC_9868

DSC_9870

DSC_9871

And here is the FR60 Trick. Hold the light button for a couple of seconds and it should show up scanning.

DSC_9872

DSC_9873

DSC_9875

DSC_9876

The next step is finding a scale to disassemble. Also I stumbled onto a great Texas Instruments part that came out recently, the AFE4300. It’s an analog front end to measure strain gages (for weight), an AC current driver to drive current from one foot to the other through the body, with a differential voltage input to determine Bioelectrical Impedance all in the same package. Dev kit is 200 dollars, so that’s probably not the right solution and the chip is a QFN I believe so I’m not keen on trying to wire it up. However, if I wanted to make a scale it would be a good starting point. so I’ll probably be doing it Nordic DK board + sniffing the data lines from a scale or interfacing to an old Accuity board that I have kicking around for basic weight.

I kind of wonder if there is a BLE profile for weight scales.

Tuesday, September 17, 2013

Enclosures and More

It’s been a few days since I’ve written anything. It’s been a very busy few weeks. Nothing overwhelming stands out but the enclosure design in progressing. I’ve also been prepping the Quarq + Accuity comparison unit.

rival-sectionb

Above is the first design attempt. A small amount of plastic wraps around the outside of the arm and protects the wires leading to the axle.

rival-sectiona

Generally it’s hollow inside and the enclosure supports an off the shelf battery holder. This contributes to the larger lower enclosure size. I’m concerned about clearances all around. I generally don’t like this design, however the board was specifically designed to go on the backside of the drive arm between the chainrings and the crank arm.

rival-section-MKII

I attempted to diverge a little from the original design and try a setup with the board and battery above the crank arm. This is not idea because all the fragile wires from the strain gauges have a greater distance to travel. This leads to all sorts of issues. The most ideal is to keep things short. This comes back to trying to place the board inside the crank arm.

rival-section-MKIII

Having given up on the second design I’m revisiting how to make the first more effective. I’m integrating the battery holder into the design to minimize size and weight. There isn’t much room around the crank arm. Lots more work ahead.

On to the Quarq + Accuity unit.

DSC_9641

First the S950 (S900 compact version) crank has it’s spider removed. Just 3 simple Torx bolts. I wish everyone would use this design. SRAM (well Quarq really) should push this as the standard for everyone who wants to make a crank with removable spider. Right now the Cannondale, FSA, and SRAM units are not interchangeable. We can use ANT+ but can’t have a physical standard?

DSC_9648

Then I removed the Quarq unit from the S975 Cinqo. The Cinqo holds much much tighter tolerances and was on a bit more snuggly. I’ll chalk this up to China / Taiwan manufacturing versus American. While swapping the chain rings requires recalibration, removal of the whole setup does not. There has been some talk about the removal of the chain rings and torqueing the bolts over at the Slowtwitch forums. I haven’t done this myself and don’t plan too. In the event I do then I’d like to check the calibration with the iPhone app – which as soon as I get a Wahoo dongle I can as I was given a “broken” iPhone 3GS. The screen is crack but still functions fine. Amazing. Maybe I’ll just send it in to Quarq with the Accuity prototype in tow and get them to calibrate it then?

DSC_9642

I prepared the crank arms carbon fibre just like Vishay’s tech notes say to and applied the strain gauges.

DSC_9646

Another picture with a better view.

DSC_9647

I also installed the inside torque sensing strain gauge. All gauges were installed very quickly but I haven’t tested them yet except for resistance. Carbon prep time is much faster as abrasives can eat into the epoxy very quickly. DO NOT USE CONDITIONER A. Conditioner A is a mild acid, and a mild acid eats the plastic. The neutralizer (base) is fine to use. When sanding using isopropyl alcohol only.

DSC_9645

Recently I’ve been testing the boards and their connection and function with the Texas Instruments ADS1248. Remember the four boards I made up and transmitted fine? I didn’t test the ADC interface. There were some bad connections on this board with the ADS1248 which meant it was acting very stupid. Finally got it working just before bed time last night.

DSC_9644

Here is a picture of testing the board with my four sensor setup Rival arm used for thermal and force sensitivity testing.

So that’s everything. I’m hoping in 1 – 2 weeks to have a Quarq to Accuity comparison but don’t hold your breath. I’ll get the bike on the trainer inside to do this and if I can find another Garmin Edge 500 or similar for a decent price I’ll setup them both up outside for a ride.

Wednesday, August 21, 2013

Accuity Powermeter Testing Video and Data File

DSC_9616

Testing Accuity V4.1 Bicycle Powermeter

I’ve also made my Garmin Connect file public (Garmin here, Fit File here) so everyone can download it. There are anomalies and this is a first test!
  • Bad battery connection means that it loses it’s zero and causes massive offset showing as huge power numbers (up to 18000 watts!)
  • A few times during the video it’s noticeable that if the crank hasn’t been rotated in a while and during the first rotation there is an abnormally high power number. There is an overflow issue or double tripping of the Magnetic reed switch causing an erroneously high power for the first 1 – 2 rotations then it stops. I didn’t see this as much in the later part of the ride. I think it’s an ultra low cadence problem.
  • The bump issue is related to the magnet position I found out later during the ride. If I hold my legs level with my right leg on the back side it can trip the reed switch multiple times in a very short period with half my weight on it. Obviously a false 200+RPM reading combined with 100NM torque will give over 1000 watt reading. This is solved on SRM and Quarq by putting the magnetic pickup not in line with either crank arm. Smart for them, I missed this in designing.
  • Reads back a random value when told to calibrate. Minor but would be useful to implement an actual value. It’s standard with Quarq and SRM.
  • Have to calibrate twice – once for each side. Not really needed but it’s left as a debug measure. It could be useful to know the offset of each side as the ANT+ protocol only supports one value.
  • Sorry it’s hard to see the actual values in the video.
Some more pictures
DSC_9612DSC_9624

Tuesday, August 13, 2013

Accuity V4.1–95% Complete!

DSC_9596

It’s coded. It’s been running for about 70+ hours of testing and programming and forgetting to disconnect it on a CR2450 and still has life. It’s been extensively calibrated on the bike (this is necessary for removing bending from the left leg sensor). All parts (crank included) is less than $200 dollars. However skilled labour required is very high in terms of both skill and time. No, I won’t be selling these for $200 – my time is very valuable – but I still think a dent can be made in the $1500 mark. Powertap is forging the way.

To do:

  1. Move the Reed Switch closer to the Quarq Magnet location
    • My Madone has a different magnet taped on. The Nice Quarq ring magnet is on the old GT GTR Series 4.
  2. Put on Chain rings
    • RIGHT! I knew I forgot something.
  3. Test on Trainer
    • But I’m so out of shape.
  4. Test on Road
    • See above…? I’m really out of shape lately.
  5. Finish Enclosure design
    • Don’t ride in the rain until then!
  6. Torque effectiveness and Pedal Smoothness
    • Easy to calculate, but need to spend more time modifying the nRF51422 ANT+ library to support it.

It’s taken a while, but it’s doing well. It has 16 – 18 bits noise free. I’m using only 16 bits of the 24 the ADC is as it’s just about 100% noise free. It’s about 15 and 24 counts per N-M. Essentially this relates to < <1% error BUT keep in mind there is some sensitivity to pedal offset. It’ll likely come in at the competitions 1.5% – 2% quoted marks.

Okay, so maybe not 95%. I am very close. I am off schedule though, but honestly not by much:

imageimage

I really didn’t include a prototype stage! Major oversight. However, if I build another 4 in a few days I’m 100% on schedule. No, I don’t expect this to happen. I need another month. So mid September for beta group I suspect.

What can it do?

It’s a powermeter so:

  • Measure Left and Right legs torque individually
  • Measure Cadence
  • Calculate Power
  • Transmit power data on the most common wireless powermeter standard - ANT+
  • Calculates L/R power balance
  • Costs a lot less than the competitors, but a lot of build time (Mixed feelings!)

Here are some pictures

Calibrating the non-drive side. The 5k on the right is to keep the rope stretched and the cranks level. 15kg “calibration weights” measured on calibrated scales at work which are good for 0.1g.

DSC_9594

Debugging: Programmer talks to Accuity. Arduino receives the serial output. The .NETMF Fez Panda talks to another ADS1248 that’s also measuring one of the sensors to ensure Accuity is reading right. The Gripper is connected to a test strain gauge beam to ensure the Fez Panda ADS1248 is working.

DSC_9595

Accuity up close. Personal. And poorly soldered!.

DSC_9599

Serial Terminal and ANT+ Display Simulator.

DSC_9600

So long for now

Sunday, July 21, 2013

Single Sided Measurement, Kickstater Coming to Canada

DSC_9429

Just a reminder, the above board made by APCircuits has worked out well. They are a 7/7 mil service however the board was designed for 6/6 mil process of OSHpark. The problem was the turn around. APCircuits had the order on a Wednesday night and it was delivered Monday afternoon. Total cost is $88 dollars shipped with Fedex Priority which was $30 for 4 boards. OSHpark is 17 shipped for 6 boards.

APCircuits are very good, they reminded me that there were “errors” in the board, but as previously mentioned I told them to go ahead. I haven’t found a single problem with the boards and I’ve tested all the small traces. I have tested the RTD sensor lines but they are larger to decrease resistance so I’m not concerned.

DSC_9434

Above is the board connected to the debugger, battery and a single full bridge setup which is connected to my 4 setup test arm used in thermal testing from here. This means it’s pretty much equivalent to the Stages One powermeter. Single sided, but that’s just for testing out, coding and debugging.

Below are a few more pictures.

DSC_9438DSC_9440

I expect that I’m going to have to re-adjust timelines. I’m away beginning of next month for a wedding and waiting until I’m back to order the strain gauges needed. I’m going to look into re-adjusting my proposed schedule and see what I can do. The “to do” list is still extensive but nothing impossible. The hardest thing really was the reflow. While still not perfect it’s fine. Again, the solution was to ditch the BGA package. That’s advice for any hobbyist with a DIY reflow oven. BGA is too much of a headache, QFN is hard but not impossible. Still haven’t received any import bill for mouser yet.

  1. Finish coding that couldn’t proceed until the boards were completed and working
    • I only coded initially for one side
    • I’m cheating and only outputting raw reads to the power, this is mainly for debugging
    • Sort out UART connection to help “debug”
    • Look at implementing TE/PS measurements – This is low priority as no head units can read it
    • I won’t code thermal until later and I get a sample RTD from omega
  2. Enclosure design – I decided to hold back a bit on this due to adjustments that might need to be made for the board design.
  3. Instrument another crank (or V3 to conserve cranks, have to rework it by removing old gauges and installing the new ones in the right locations (slight movement and different gauges)) and connect up powermeter.
  4. Mount battery, measure current consumption.

My rate of work on this has to slow down anyway from both a financial position and a time position. The board was the main hurdle at this point, right now getting it together. However I am seriously looking at Kickstarter when it comes to Canada in order to offer the Board (~$40), Dev units ($500 – 600), and final units on Hollow Forged Cranks ($700 FCC Approved). At least that’s the goal. I’ll know more when I get circuit board manufacturing quotes and find out minimum order quantities in a few weeks.