Mark II Update - January 2021

Originally published at: https://mycroft.ai/blog/mark-ii-update-january-2021/

Please confirm your shipping address

If you selected a Dev Kit reward during the campaign you should have received an email from us last week to confirm your shipping address.

If you haven’t already – please follow the link in that email to confirm your address. If you didn’t receive an email or are unsure whether you have confirmed your address please reach out to us.

As it has been some time since the campaign finished, we want to be very confident that we are shipping your shiny new Dev Kit to the right address. So even if you recently updated your address, we ask that you confirm it one last time through the email from us. When the production Mark II’s are ready to ship, we will go through a similar process.

Assembly Instructions

Once you receive your Dev Kit, there is some assembly required – that’s part of the fun!

Mark II Dev Kit with enclosure and camera

If you want a sneak preview of what to expect, you can find those instructions here:
https://www.instructables.com/Mycroft-Mark-II-Developer-Kit-Assembly/

SJ201 Production

When doing a production run like this, it’s always a good idea to get a small number produced for testing before doing the entire batch. This month was a prime example of why that’s so important. TL;DR: We had to trash 290 bare PCBs due to using the wrong pad design for the mass production vs. hand-soldered process we had been using. The first ten worked fine with some hand-soldering rework, but that wasn’t practical for the full run. We are repeating the test process with the new PCBs and if they check out, the factory is ready to produce the remainder of the order within a few days.

If you’re not curious about the details of the mistake, you can skip this paragraph. When the first 10 PCBs were assembled it was identified that the pad lengths for the XMOS XVF3510 were too long. This is a quad-flat no-leads (QFN) integrated circuit. With shorter QFN leads, the solder balls up on the walls of the QFN better. With longer leads, the solder doesn’t climb the walls of the QFN as well. Previously these ICs were hand soldered, for which the longer leads work just fine (or better).

Software

With the Dev Kits getting ready to ship, the team has been focused on improving the Mark II specific elements of the software. This includes drivers to interface with the new hardware, a new onboarding flow when you first boot the device, optimizing the Pantacor build process, and unfortunately spending more time than we’d like on upstream bugs in the Linux audio stack.

Presently there are a few issues in PortAudio that cause buffer overrun errors in certain circumstances. These were causing the Mark II microphone stream to completely fail. Not a good thing for a voice assistant. In the short term we’ve implemented some fixes and workarounds to reduce the chance of this occurring, and handling it more gracefully when it does. Some of the fixes for this are currently being reviewed for inclusion by Debian. However it may be some time before they trickle down through official channels, so we’re likely going to be using our own custom package for the time being.

5 Likes

Whoop Whoop, well done guys !!! :+1: :muscle: :facepunch:

Interested to know more about your portaudio upstream patches. Are they available online somewhere?

1 Like

Looking forward to an opportunity to purchase the SJ board once the Dev Kits are delivered!
(jealousy, and regret for not investing in the dev kit at that time).
You should all be congratulated on your persistence!

1 Like

Hey, the first patch was this one:
https://sources.debian.org/patches/portaudio19/19.6.0-1.1/944509-crash.patch/

But as of last night we’re trying a new fix from Ken that I believe catches the error lower in the stack and can therefore restart a much smaller component more quickly, rather than re-initialising everything. This one we’ve just hand-jammed onto the device to test, but if it works we’ll post the code.

1 Like

Wow!

I see a small fan there. Is it regulated/temperature controled or does it run at full speed all the time?

Thx Gez! Looked at it, far from my comfort zone :wink:

BTW, do you guys ship with that Sandisk USB stick? That one will generate a load of bugs down the road as it a) Has very poor perfomance and b) Jumps into R/O all the time (internet is full of those reports).

Just as a heads up to prevent support tickets later on in time.

1 Like

Yeah not my cup of tea either :laughing:

We are currently using the:
Sandisk Ultra Fit USB 3.1 SDCZ430-016G-G46

I haven’t seen any negative reports, and haven’t experienced anything yet, have you got some links?

It is a speed-controlled fan, running off the SJ201 so we’re currently writing the logic for controlling it. It has a max noise level of 25 dBA.

I’m not writing that code, but I think most likely it will be based on temperature across a range of chips. Set some ranges for each chip and raise the fan speed to whichever chip has the highest range.

1 Like

Sandisk has some logic for write protection somewhere that is buggy. Most of their sticks at some point run into it at some point;
https://www.google.com/search?q=sandisk+ultra+fit+usb+3.1+read+only&rlz=1C1GCEU_nlNL936NL936&oq="Sandisk+Ultra+Fit+USB+3.1"+read&aqs=chrome.1.69i57j33i160l3.8946j0j7&sourceid=chrome&ie=UTF-8

A Dutch Tech/Nerd size which is very good for user reviews also says it is slooooowwwww;
https://tweakers.net/pricewatch/1155869/sandisk-ultra-fit-usb-31-32gb-zwart/reviews/

There are also some big test bemchmark reviews about USB stick in general at that page.

But to be honest, better to just test it yourself and see how it behaves on the RPI4 and OS you are using. USB stick is always a trade of in speed/size/storage/price.

Perhaps the Samsung FIT Plus might be a better choice for speed for the next batch, but pricing go up fast as you guys probably know already;
https://tweakers.net/pricewatch/1230799/samsung-fit-plus-32gb-zwart/reviews/

Anyhow, just tech/nerdy feedback, not a complain :wink:

1 Like

Yeah thanks!

We already have lots of these so the Dev Kits at least will ship with them but it’s still worth us keeping an eye out for this stuff.

One of my personal favourite aspects of the Mark II is how easy it is to access the IO ports so if anything does go wrong, or people just want to flash their own OS on it, you can just pull out the usb.

Couldn’t resist, so ran out and bought that Samsung USB3 stick and ran some quick write/read performance test using dd linux command.

Transcend Ultimate 600x HCI 16GB (SDcard)

mycroft@OpenVoiceOS-7aadc9:~ $ sync; dd if=/dev/zero of=tempfile bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.0GB) copied, 44.292660 seconds, 23.1MB/s

mycroft@OpenVoiceOS-7aadc9:~ $ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"

mycroft@OpenVoiceOS-7aadc9:~ $ dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.0GB) copied, 25.768446 seconds, 39.7MB/s

Samsung FIT Plus USB Stick AB MUF-32AB/APC

mycroft@OpenVoiceOS-7aadc9:~ $ sync; dd if=/dev/zero of=tempfile bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.0GB) copied, 45.249753 seconds, 22.6MB/s

mycroft@OpenVoiceOS-7aadc9:~ $ dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.0GB) copied, 5.233115 seconds, 195.7MB/s

As you can see, if it comes to read speed those SDcards are hard to beat. Writing speed however could/should be a lot faster, but for the Samsung it is about the same as the SDcard. Slightly lower actually.

As you can see, not much speed increase in writing, however a good incrrease in reading.

Now on to getting myself some of those nice SATA III M.2 SSD drives :crazy_face:

EDIT: Hang on, I might have forgotten to empty the cache before reading back the file in the SDcard test. Will redo the test
EDIT2: Updated above test results and verdict, after emptying the cache. I know I did for the USB stick, just realised to late I might have forgotten to do it in the SD card test.

2 Likes

Follow the link in WHAT email? I stopped getting updates on the status of the Mark II from you guys 13 months ago.

Hey there, I’ve DM’d you.

I wish I hadn’t missed out on this. Also, is the Mark I no longer in production?

Hey there, the Mark 1 is no longer being produced as the mic in it is severely limiting.

Once the Mark II’s are out, we may try retrofitting the Mark 1 with the new SJ201 audio board we made. The Mark 1 still gets so much love, we’d love to keep it alive and chatting away.

Newbe here…Just getting started was going to install the software on a PI but this Dev kit looks interesting. Is it still available and where can it be purchased? Thanks…

Hey there, we’ve had quite a few requests for this.

We do have a limited number to purchase. However preference will go to those who’ve already put down a reservation for a Mark II. We’re emailing those people this week, then we’ll open it up publicly if there are any left…

I’ll be posting here and in Chat before it goes out to any mailing list or social media channels, because we get the most back when people are actively providing feedback. So maybe subscribe to this thread if you are keen to grab one.

2 Likes

:chipmunk: Get a Dev Kit while you can

Hi all, you have no doubt seen that backers of the Mark II campaign have started receiving their Dev Kits.

Since we were making a few hundred for backers, we decided to produce a few more while we were at it. Unfortunately this first batch of 300 quickly disappeared before we could make them available to the community. So we’ve decided to do a second run.

There will be a total of 470 Dev Kits in the 2nd batch shipping in May. Over the weekend we sent a private link to people who had put down a $1 reservation on a Mark II and it’s safe to say they are disappearing quickly already… Before we post about it to the broader public, we wanted to give anyone here in the community the chance to grab one.

The Dev Kit comes with a laser cut acrylic case, and there are STL files on Github to print an enclosure closer to what the final design will look like. However it is important to note that these are DIY kits intended for our more technologically inclined Community members. They provide the same technical stack as the production Mark II however enable you to get early access to the platform. The Mark II Dev Kit is perfect for prototyping your own integrations, writing Skills, and helping to inform the direction of our software development priorities.

So if you’re keen to get a Mark II Dev Kit, grab one now at:

1 Like