Gadgetoid

gadg-et-oid [gaj-it-oid]

-adjective

1. having the characteristics or form of a gadget;
resembling a mechanical contrivance or device.

Robosen K1 Pro Reviewed

Even if you’ve not heard of Robosen, chances are you might remember their incredible voice-controlled, transforming Optimus Prime robot.

K1 “Interstellar Scout” Pro is cut from the same cloth, but intended to be an educational, bipedal, humanoid robotics platform rather than a flashy, automated ornament.

While K1’s hardware is truly incredible, the software leaves much to be desired. Furthermore the lack of WiFi connectivity – granted sometimes that’s a feature not a bug – the finickiness of the USB and Bluetooth connectivity and the unfortunate lack of a well-documented programming SDK means that a community effort to pick up the slack hasn’t a hope of taking off.

All this means that K1 makes a very good toy and programming curiosity but limits the scope a budding programmer has to go beyond Robosen’s own apps. In fact I’ve had to dig this review out of the dark corners of the internet and force myself to publish it. I loathe spending my time telling you that I didn’t completely enjoy something, though I guess that’s the whole point of what I do.

A small, grey and black, sophisticated toy robot doing a bit of a wiggle.
The black and grey robot with its arms flinging outwards. There’s a little motion blur.
The black and grey robot mid way through standing up from a lying down position.
The black and grey robot hoisting itself off the ground to stand up. It’s … sort of doing a backwards push-up.

The Robosen K1 is a flexible lil’ blighter!

@gadgetoid/110124341585455509

Before I launch into why the app experience is rather frustrating, let’s touch upon the hardware because I think talking about its sheer excellence is important to establishing why I really do care about the software.

I should also note that K1 is the first robotics platform I’ve ever tested and things that amaze me might be utterly pedestrian to an expert. I can tell you what I think of K1, but I can’t tell you if it’s a particularly good or bad example of its ilk.

The Hardware

Right out of the box K1 is dressed to impress, enclosed within a locking, polystyrene protective case that can be re-used to store the delicate robot and its accessories safely. This is a great reuse of the shipping packaging, and also somewhat essential since K1 does not – when not powered – stand up unassisted.

Inside the box is the K1 itself, a USB cable, an AC adapter for charging and the instruction manual you’ll probably never look at.

K1 is decidedly impressive even when powered on. It’s somewhat flopped and folded awkwardly into the box, but the black and silver of the K1 Pro is nonetheless striking from the get go.

When lifted out it’s clear there’s a lot going on. K1 is hefty. Powering the robot on is done by pressing and holding a button on the back, just below its head, until it exclaims “Hello Humanity.” It took me a few goes to realise I needed to hold the button for a while- it kept getting cut off mid sentence and turning off. It’s almost as if the robot has to fully boot and latch its own power on.

Once booted K1 will lie prone on the floor periodically “breathing” (why would a robot breathe?) and befuddle you with the lack of a “Stand Up” voice command. It took me far too long to realise I could just pick the robot up, stand it in its feet and it would stand fine. The servos – while limp when unlocked or unpowered – are astonishingly sturdy when they need to be. What I was expecting- however- was that K1 would stand up either automatically or upon command. There’s a reason it doesn’t. Automatic stand up relies upon a tilt sensor indicating that the robot is lying down. It has no idea if it’s lying down because you just picked it up, or if it’s actually lying on the floor. There’s a real risk of pinching, pain and tears if you hold it wrong while it’s trying to move. In order to have K1 stand up automatically you must enable the setting in the app, acknowledging that holding it wrong while it moves and getting hurt is your own darn fault. This is fair!

Once stood up and ready to rock, K1 responds to a variety of voice commands starting with the “Hey K One” trigger word. Some of these are lost in translation such as “defend the enemies”, and plenty are outright puerile. Amidst all the silly things K1 can do for your amusement are some genuinely cool demonstrations of its abilities. These include back flips, front flips, push ups and lengthy body-pop style dance routines. Granted, for all the incredible things it can do K1 still walks like its trousers are ‘round its ankles.

Charging is handled via the supplied AC adapter, which avoids any of the awkwardness you might encounter with USB Type-C. The cable supplied is for “data” and connects via a USB Type-C socket also on the back of the robot. It effectively lets you control the robot from a host PC, even giving access to the raw filesystem onboard (such that you’re warned not to move or delete anything lest you brick your robot). I wasn’t able to get the desktop software to work, though, and was somewhat disappointed by the lack of a WiFi connection or the ability to install some driver or another to make it controllable via Bluetooth from my laptop.

The Mobile App

The mobile app has the kind of user experience that demands an abundance of tenacity. Unfortunately I’ve largely supplanted mine with cynicism and impatience as I grow older and find less time to tinker.

Right from the get-go, in fact at every launch, you’re subjected to several seconds of video showing a 3D rendered K1 spinning into a pose. This video splash would have been fine *once*, but re-watching it every time the app launches gets old quickly.

Before you can do anything at all with the app you must also create an account and log in. There’s no particular reason for this requirement, other than the social sharing aspect of the K-One app. Yes, you can record videos of your robot in action and share them to other users, along with the “code” needed to recreate the action. This would be cool as an optional extra feature, but being railroaded into account creation and login just to do any programming at all is… not great.

To go from bad to worse, the login dialog does not support – at least on the iPhone – passwords in the keychain. You’ll either have to pick a weak password, remember a longer one for this one app, or write it down somewhere. The app also wont stay logged in, so you’re greeted to this login box more often than not. The sheer frustration involved in pushing your way through all this nonsense to finally program th K-One must surely end in programming nirvana, right?

Not really. There are a few different things you can do via the app, these include –
Block-style programming, creating a chain of actions by dragging and dropping blocks into a flow.

Stop-motion style programming, creating a sequence of movements by posing the K-One like a puppet and saving keyframe-like snapshots of each step.

And, finally, remote control- where you can simply stomp K-One around using your phone as a remote.

For programming, I quickly ran up against the limitations of my phone screen size, making accomplishing anything a little awkward. Couple this with the slightly finicky UX and even stop-motion style animation is extremely tedious, error prone and difficult to tweak on the fly. With some determination I was able to get the K1 climbing up and rolling off obstacles, but the limp servos make actions quite difficult to program when you’re juggling holding up the robot with operating the app.

I’d have loved to see buttons on K-One itself that let you save/delete animation steps as you puppet it into position. Sadly lost are the days when a “robot” would have a number pad and arrows on top you could use to program it with no other device, software, or awkward account creation involved.

What is it I actually wanted?

C’mon Robosen. Give me WiFi connectivity. Give me a fully documented API that lets me control each servo independently. Give me a Blender 3D skeleton I can animate offline so I don’t have to contend with gravity. Give me more sensors, and somewhere to upload programs so I can create autonomous demos. Give me something Pro!

In Conclusion

A younger me might have spent hours overcoming the software’s quirks and doing cool things with the robot, and indeed there’s definitely some fun to be had. But the K1 Pro is sorely lacking a more open way to program actions.

For something with such a grown-up look and “Pro” right there in the name, I find this particularly disappointing. I expected to delve into some autonomous programming, and maybe even some juicy inverse kinematics. What I got was effectively a basic version of Robosen’s admittedly pretty awesome Optimus Prime toy.

And that’s it- K1 Pro is an expensive but entertaining toy. It’s brilliant to whip out of its box and show family members or friends what a fully functional, ready-to-go, tiny little humanoid robot can do. If that’s what you want out of it, and you’ve got the cash- the hardware and canned demos are excellent. It’s perfect TikTok video fodder. But for fostering a wider interest in robotics? It’s a non-starter and the accompanying app is an asinine exercise in frustration.

Saturday, June 24th, 2023, Toys.