Need some help about getting 10V for my CNC spindle control

I need some help on the electrical side.
This is my CNC breakout board:
Purelogic PLCM-B1 english manual

Page 10
Connector XP79 (upper right) needs 10V and GND and outputs an opto-isolated 0-10V PWM signal to control the spindle RPM with.

From my USOVO STG104 spindle controller I only get 24V supply voltage and GND.
And it needs that 0-10V signal.

So I do a voltage-divider of 12Kohm and 16.8KOhm to get 10V.
As soon as I connect that to the PLCM-B1 breakout board my 10V drops down to 2.4V from the load.

What should I have done instead?


Bonaverde - The Facebook Coffee Machine


  1. old posting on this topic: none
  2. current posting
  3. next posting: First Bonaverde coffee delivered

Back in 2014 I ordered a Kickstarter Bonaverde roast-grind-brew coffee machine for 299eur.
Now it has arrived.

What I wanted it for

I wanted to be able to roast coffee without requiring a lot of space in the kitchen.

To make (filter) coffee from it with little effort when I want to just have my coffe.

But also to custom roast coffee for manual grinding, spicing and brewing my favorite arabian mocca when I want to put effort into it.
Or do the same to feed my grind-brew Espresso machine with fresh milk for Cappucino.

Roasting on Sunday to brew the next weekend
or roast on Friday night to brew on Sunday morning
would be perfectly acceptable for me.


 It came well packaged and even included a velvet liner for the entire machine. (Looks nice but I'm not sure it is ment to carry that kind of weight.)

What was strange was that on the top and the sides they used easy-to-recycle cardboard. Yet at the bottom the packaging was custom shaped plastic-foam.


I noticed a few usability fails:
  • Power socket is on the underside of the machine. Yet neither quick-start nor manual tells you to look in this unusual place.
  • The water-tank is very narrow. Only slightly wider then a small water-fouced. You have to be careful with the water-pressure when filling it up. 
  • It shuts itself down automatically. It doesn't keep the coffee pot warm. At least there is no obvious way to do that.
  • The IMEI for the Facebook Messenger bot is also on the underside. You have to remove all water, coffee can, ... from the machine and topple this heavy thing over to read it. Tilting it is not enough to read the sticker because it's placed in the center.
  • The water tank leaks heavily when you try to carefully carry the machine to a different place with water alreay in there.
  • The instructions for the air filters are missing the first step "scan the RFID tag of the air filter".
  • There is no indication about what flavor to expect from the different beans (more about this below) or what type of beans they are. Also not always obvious what country they are from.


Obviously every good coffee starts with good water.
I was very surprised that the water-tank of this expensive machine did not contain any water filter to remove chalk.
I had thought about this as a standard-feature even for much cheaper machines nowadays.

The Facebook Coffee Machine

Before delivery
In the weeks before delivery, it became more and more clear that all user interaction including even the shop for buying new beans was implemented as a Facebook Messenger chatbot.
This came as quite a surprise.

Here are the Android permissions required by Facebook messenger:

Before you receive your machine, the first interaction with it looks like this:
I desperately hope this is going to change....soon.
If I have to interact with my coffee machine via a command line, it better be an SSH terminal.
I can't imagine comparing and buying beans and comparing the details of roasting profiles this way. Let alone making any kind of (PCI DSS compliant) monetary transactions.

During delivery
Shortly after the machine arrived, I cat a personal call. However I was busy and the second time they called I was buying coffee-filters and didn't have my phone with me.

I also got am email "Bonaverde - Dene Maschine ist da!" (Yes, a German company with wrong spelling in their automatic customer emails)
However, despite only containing text, the email contained no text/plaintext and only a very cryptic
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
", with Microsoft-specific XML namespaces.
Therefore my cellphone would only display it as a blankscreen for security reasons.
Also.... not UTF8 and not the newer ISO-8859-15 that was introduced in 1999 as a replacement.
Aparently it was witten in Microsoft Office365 Word and sent using Microsoft Exchange (because a ton of internal X-Microsoft-Exchange-Diagnostics and X-Exchange-Antispam* have not been removed uppon sending).

Using the "Coffee Concierge"

Note that this is still in alpha stage.

What I did find at first glance was:
  • It does offer to "roast only" and "brew only"
  • After starting anything the user it not instructed how to abort. Typing "stop" seems to work.
  • It does not check of the machine is connected or powered. It just tells you "Pouch not ready" for "grind only" when the machine is unplugged and has never connected to GSM at all yet.
  • If idle, it does seem to spam you with trivia about coffe and FAQ entries. There is no obvious way to stop this. So make sure to disable audio notifications!
  • The store to buy beans does not yet exist.
  • After "make coffee" is finally gives you some information about what flavor to expect...however for one, randomly selected bean only. Yet no infocmation how to abort, get info about other beans or actually have it make coffee.
  • The answer to "what is blueberry" (one of the 3 bean package types) is "Sure. Let's get the roasting going."  ????  
    • Update (2017-11-14): I got an email from support "Within the bot, you can now choose the roast profile for the new beans as well as find out more about the flavours." Uppon clicking through the menu of the Chat Bot I can not find any hint as to how to do the second. I'll certainly try the first next weekend.
Some days later:

"Buy coffee beans"
  •  "opens a web browser with the Bonaverde homepage" - does not work yet

"Schedule coffee"
  • "in development" - does not work yet
"Make Coffee"
  • offers only a single type of coffee
  • does not have "scan coffee pouch" in it's instructions
  • Always aborts with "the roaster door is open, please close it" even though it is it 
  • => does not work yet
"Coffee School" 
  • Seems to be a question and answer game of coffee trivia
  • No obvious way to abort.
  • Asks "wich composer wrote an OPERA about coffee" and answers with the "Cofffee Cantata". Obviously a Cantata is a very much smaller piece of musical work then an entire opera. (At most equivalent to a single opera scene.)
  • The question "Did you known that at one point in history coffee was 'illegal'?" Only allows for a single answer.
  • At one point it goes from small-bandwidth text to a video but luckily doesn't start to play without user consent. However there is no obvious full screen mode. So it's a tiny video on an already tiny screen.
  • It seems  you can't have all lessons the same day.

Offline use?

 The FAQ contains two staements:

And it doesn't contain...

So, if the RFID chips only contains the serial number and the roasing profiles are "in the cloud" = on someone else's computer, how can it be used offline with the RFID tag?

Naturally the first test I did was to unpack it in a location without any cellular network reception and try to make coffee.

YES, IT WORKS OFFLINE. ...and I have the 4K video to proof it.

 Only full cans of coffee (being worked on)

In the Kickstarter Campaign, the machine was advertised with "capacity: 2-12 cups".
Naturally I though that ment you could brew as little as 2 cups of coffee.

No, it can only make full cans. According to the FAQ, Bonaverse is working on supporting half cans but not less. 

Roast only/venting (being worked on)

Without Facebook, you can only roast, grind and brew without interruption.
There are no special RFID tags to allow roasting or grinding or to make "regular" coffee from beans or ground beans.
So the only choice without Facebook for now is to pull the power plug.

Only after I connected to the "coffee concierge" and it did offer me to "grind only", "roast only" and "brew only".
Luckily this is being worked on because for filter-coffee the beans should stay 1-2 days to release stored CO2. For espresso about a week (or so the Internet tells me).

It can not make hot water for tea as an alternativ.

Testing it...
For "roast only" it would tell me to insert coffee. I did.
Then it tells me that is will start soon...... even after a long time it doesn't to anything.
Then I switched the machine on and tried again......still nothing.
Then I scanned the coffee pack and tried again.....it would tell me "coffee pouch not ready". No idea what that could mean.
So... "roast only" doesn't seem to work yet.

Quality of the grinding?

First of all: I like mocca. If I can't get mocca, I settle for an espresso. Filter coffee is only a last resort to stay caffeinated.
That means I like my coffee ground to a dust. Mocca needs it much finer then even an espresso. So I rely on my Hario Skerton. I usually operate it by hand, so the dust doesn't get hot during grinding.
On my first test I didn't manage to get a look at the ground beans before the coffee is made.
This is what the filter looked like afterwards: (Overexposed, so the coffee is clearly visible)
The coarseness-lever was at factory-default = centered.

Check out this test of a Beta machine (in German) to see a photo of what a BETA-machine made.

To be tested later... (This blog posting will be updated.)

Packaging and choice of beans?


After seeing the packages given to beta testers here here, I was suspicious.
If the packaging is the coffee filter, how to keep it clean and food-safe during storage and when transporting it?
The photos show packaging with lots of text about the farmer.... yet there is not a single word about the flavor to expect with the associated default roasting-profile not about the choice of beans contained within. (I do prefer chocolate flavours and when looking for them with roasters, I usually found them created with Coffea canephora / Coffea robusta beans.)
I desperately hoped that either this would have changed or the backside of the labels would contain such information.

My machine came with 3 types of beans. Named
"fresh nuts", "almond" and "blueberry".
There is no other indication about what flavor to expect from them when using the roasting profile these bean-packages include.
They do have some information about the farmers but only 2 of the 3 even state what country these farms are in.
They have no indication about what types of beans they are, However I suspect all 3 to be Coffea arabica, not Coffea canephora


My first test was "blueberry".
While I know that there are some roasts described of tasting "nutty" or "like almond", I have yet to hear of a "blueberry" taste. My preference would have been a "chocolate like" taste but that was not included.
I am no expert. I only happen to drink and make coffee often.
As stated, I made the first can offline. It worked. I can't make out any kind of specific taste in the coffee. Only that it is definately slightly sour. After a while this turned to only being ever-so-slightly sour. There is no bitterness to speak of. No taste that stands out at all. This can be interpreted as a bad or a good thing.

After slowly drinking half a can of coffee to make up my mind about the taste and leaving the other half at 40°C hot air in my microwave - to keep it warm - , I am too pumped to do a second and third test.

A new day, a new test. Same "blueberry". This time with the grind-settings as fine as it will go. The machine was allowed to have access to GSM cellular services. Identical taste.
I should do a third test with these beans doing "roast only" and allow them to release CO2 for 2 days.

I will have to try "roast only" and have it releae CO2 for 1-2 days to hopefully get rid of the sour taste.

Second bean-type "almond".
The first taste was definately sour. More so then "blueberry". When it has cooled down a little it leaves a bit of bitterness afterwards.

As with "blueberry", I definately have to try it as "roast only" instead.

Third bean-type "fresh hazelnut".
To be tested later...

Burbon Rojo by Rodofo Ruffatti from El Salvador.
Freshly roasted, the same result as the others.
I did not even intend to try this freshly roasted but the "roast only" option was currently not functioning.

"roast only" and then brew after 2-14 days.
Freshly roasted coffee seem to generaly not be to my liking.
I'll try to find coffee-pouches with a pressure-seal (to release CO2) and try to fill them with pure CO2 from a can before I put the beans in. This way they should not contain any Oxygen until I open them for grinding.
See here for the result of this test.

Since I travel a lot. I guess a profile where I can pre-program the machine to roast 1-2 days before I arrive and then start grinding and brewing, when I get home would be great. After all, it is cool and dark in there (no light or non-essential heating while nobody is home) and without the ventilation there should be minimal air circulation.


You need to steam your milk separately. For cappuchino, the espresso machine that takes your roasted beans can do that anyway.
Of cause to do that, you would have to pull the power plug at the right time to get to the roasted beans. 
Since it is ment to make filter-coffee, not being able to steam milk is acceptable.

Custom roasting, custom beans, venting?

To be tested later... (This blog posting will be updated.)


Since the rinse RFID-tag was removed, there doesn't seem to be any way to clean this machine offline.
Even with Facebook and Facebook Messenger, the only option seems to be to "brew only".
There is no indication in the manual or FAQ of using vinegar to remove chalk is recommed.




Custom Deskproto strategy

Project history

  1. current posting
  2. next step: add command line arguments and extensively test the strategy
  3. Next project: subdivide rotary axis operations to keep toolpath-distance constant while getting near the center of rotation


I have two problems with CNC machining either wax, plastic or soft wood:
  1. I lack experience with how much surface finishing detail I need. So I want a finishing strategy that graducally gets finer (distance of parallel toolpathes) until I stop. Without however milling the same path serveral times (like every second path when I do a tpd=tool-diameter/4 and then a tpd=tool-diameter/8 parallel strategy or every 15th path if I do a tpd=tool-diameter/3 and then a tpd=tool-diameter/5 operation.)
  2. I cannot machine the same part of the surface for too long a time. It will eithrer melt (wax and plastic) or catch fire (wood). It needs time to cool down. Duering that time however, I can maching other parts of the geometry that are far away.


Since the existing toolpathes did not offer such a strategy, I came up with a small Java program.
You would start with a Deskptoro CAM project containing one (e.g. "parallel along X") or two (e.g. "parallel along X", then "parallel along Y" or "along A")  FINISHING passes.
These would be marked by adding "REPLICATE" to their names.

The program will then make copies of these operations with the starting point offset by toolpath-distance / 2.
After these it will add copied operations with the starting point offset by toolpath-distance / 4 of the original and the copied operations.
Then it will do the same with toolpath-distance / 8.

The result is a finishing strategy that gradually increases surface quality and can be paused and aborted at any time.
At the same time it does not operate on the same part of the geometry until it has worked on all other parts.
Thus giving the part time to cool down where a simple parallel-strategy with a smaller toolpath-distance would mill over the same place dozens of times, thus heating up the surface and either melting plastic or wax or setting soft wood on fire.


Updated mounts for CNC homing switches

Project history

  1. Previous project: 4th axis homing sensor
  2. ATC upgrade
  3. current posting
  4. next step
  5. Next project: designing a chain link tool library

A while ago I posted some simple, 3D printable mounts for homing switches on my Chinese CNC6040.
After upgrading to a smaller USOVO ATC (automatic tool changer) spindle, the Z-Endstop no longer fit.
Formerly it would push against the upper spindle mount but this spindle only needs a lower mount.
So I added a 3D printed helper part to my design.

 As you can see, it is still 7mm too long and I will change that next week.

Update: currently printing the fixed version....

Update 2: Improved part is done and will be mounted next weekend.

Here are the other homing switches.

 The inducting homing switch for the A axis still needs to be mounted again.



Returning to my CNC

I haven't worked on my CNC mill for a while.
This weekend I'm planning to:

  • Attach cables to the (already mounted) X+Y+Z+A homing switches (Update: DONE)
  • Test homing (Update: small issue to fix with Z first)
  • Test my experimented M6 tool change macro for my Usovo ATC spindle. (manual tests worked out) (Depends on homing)

Later I need to:
  • Add an M6 exception for the 3d touch probe to be stored in a different location (because it's too large for the pneumatic tool-magazine)
  • Find a way to get 10V, so the PWM-output of my PLCM B1 breakout board can control the Usovo spindle via 0-10V PWM because it doesn't have RS485 like my old China-spindle+VFD.

Raspberry Pi stage intercom system

Project history

  1. No Previous project
  2. No old posting on project
  3. current posting
  4. next step
  5. Next project: add LTC time code output using the unused RasPi on-board soundcard

Because analog stage intercom systems are way too expensive for what they do,
I started building a Raspberry Pi + Mumble based digital intercom that can work with existing Network infrastructure.
The software is based on the TalkiePi Walkie Talkie project.