# May '23 product roundup

_Fahmina Ahmed_

_Product Manager_

We wrapped up May with a fantastic time at [ICRA](https://www.instagram.com/p/Cs_0hfMoBRd/)! If you were there, we hope you got to test your skill and have fun playing our claw machine arcade game.

_More on that to come soon—for now, you can check out our tutorial to build your own fun_ [_robotic claw game_](https://docs.viam.com/tutorials/projects/claw-game/) 🤖

In May, we also released an exciting **new** [**machine learning**](https://docs.viam.com/manage/ml/) **feature**: now you can **train object detection models on your image data** right within the Viam platform.

Learn more below about this and other Viam updates we recently made to help you explore robotics ideas with confidence and ease.

## New features

### **1\. Machine learning: Label bounding boxes and train object detection models**

We’ve taken Viam’s built-in [machine learning capabilities](https://docs.viam.com/manage/ml/) to the next level!

If you’ve used Viam’s [image classification model training](https://docs.viam.com/manage/ml/train-model/) before (like in our tutorial for a [Smart Pet Treat Dispenser](https://docs.viam.com/tutorials/projects/pet-treat-dispenser/) robot), we’ve got good news: now you can also **train object detection models right within Viam**.

Training an object detection model in Viam - YouTube

[Training an object detection model in Viam](https://www.youtube.com/watch?v=CP14LR0Pq64)

Here’s how it works (see the video above for a quick walkthrough):

- On the Data tab in the Viam app, **draw bounding boxes around specific objects** in your images to create labels. You can even label multiple objects within a single image!
- You can **filter images by labels or tags** to create a subset of your data with which to train.
- **Click Train Model** to select the Object Detection model type and labels to train on, and then begin training.
- After training is complete, **configure your new model and the camera transform** on the Config tab for your robot.
- See the **object detection in action** in the camera view on the Control tab!

Our team had some fun doing this live while at ICRA this year. We drove a rover around to take photos of the conference floor, then trained an object detection model in Viam to spot white sneakers on the go. Pretty neat!

.png)

_Labeling bounding boxes for images containing white sneakers_

_Spotting white sneakers in the frame!_

### **2\. Permissions for organizations in Viam**

Viam makes it easy to collaborate with others in building robots, no matter where they or you are.

Now when you invite collaborators to join your organization, you can **assign permissions to members** by setting one of these roles:

- **Owner:** These members can see and edit [every tab on the robot page](https://docs.viam.com/fleet/), as well as manage users in the app. As this includes seeing robots’ addresses and location secrets, this role is best for folks in your group who are actively engineering and building robots.
- **Operator:** These members can only see and use the [remote control tab](https://docs.viam.com/manage/fleet/robots/#control) (all other tabs on the robot page are hidden). This role is best for members of your team who are teleoperating or remotely controlling robots.

Ensuring the security of your robots is of the upmost importance to us. With Role Based Access Control enabled through permissions, we’re continuing to enforce security in the platform and make it easier for you to manage access.

[Learn more here](https://docs.viam.com/manage/fleet/) about assigning permissions and collaborating with others in Viam.

### **3\. Our TypeScript SDK is now in beta**

The ability to **control robots with the programming language of your choice** is a powerful advantage of using Viam. To make building robots more approachable and flexible, we provide [SDKs](https://docs.viam.com/program/sdks/) for some common languages (Go, C++, Python, and TypeScript), plus the ability to create [custom components and services](https://docs.viam.com/program/extend/) with some of the SDKs.

If you’ve been keen to create a web interface to work with your robot, we invite you to **give our** [**TypeScript SDK**](https://ts.viam.dev/) **a try**—it’s now in beta!

We’d love your feedback as we’re always looking to improve the experience of using the Viam SDKs. Share with us on [Discord](https://discord.gg/viam).

_Check out our TypeScript SDK—now in beta_

## Improvements

### **1\. Control RoboClaw motor controllers with the driver**

If you’re using a RoboClaw motor controller without encoders connected to your motors, now you can **more directly control the RoboClaw’s functionality in Viam** or with our [motor API](https://docs.viam.com/components/motor/#api).

For example, now you can set “Go For” values for such motors in the Viam app (we use a nifty time-based estimation for the number of revolutions to make).

### **2\. Camera updates: Webcam names & setting framerates**

These [camera component](https://docs.viam.com/components/camera/) improvements might seem small, but in any process of building something, it’s often the small things that can make a difference.

**Readable webcam names:** The video path for camera components in Viam now displays more readable names for webcam models you’ve connected.

**Set framerates on the Config tab:** We’ve also added a new framerate field for camera components, so you can select your desired framerate while taking videos.

If low bandwidth or internet connection is ever a constraint to consider for your robot, this will make it easier to control the speed at which you capture videos.

### **3\. Additions to code samples in the Viam app**

To help you get started with programming your robot, we provide [code samples](https://docs.viam.com/manage/fleet/robots/#code-sample) for connecting to your robot in different languages that you can copy and paste into your code.

Now that include **code samples for C++ and TypeScript**! Check them out in the Code Sample tab on the robot page.

In the screenshot above, you’ll notice that we’ve also added the ability to **hide or display your robots’** [**secrets**](https://docs.viam.com/program/sdks/#connect-to-your-robot) in the code samples.

This is handy in cases like when you’re sharing your screen and want to protect access to your robots. Secrets are hidden by default, so you never have to worry about them being seen by accident (that’s a relief!).

### **4\. Delete data in bulk in the Viam app**

[Data management](https://docs.viam.com/manage/data/) in Viam is a convenient way to capture, access, and work with your robots’ data.

We’ve made it easier to manage the data synced to Viam’s cloud by enabling **bulk data deletion on the Data tab** in the app.

## Bug fixes

May was full of exciting new Viam features, but we also made sure to tidy up. Here are some bug fixes we recently made:

- Configuring a Raspberry Pi will be an even smoother experience, as digital interrupts now work better when the Pi is reconfigured.
- We made some improvements to stepper motors for better control of timing and speed.

Check out last month's product roundup [here](/content/post/april-23-product-roundup/index.html).

## Upcoming events for our community

As June begins, we’ve got some exciting events coming up to share with you! Join us to learn more about robotics, ask questions about the platform, and build with Viam.

### **Reddit Robotics Keynote**

Eliot Horowitz, CEO of Viam, is a keynote speaker for this year’s **r/Robotics Showcase**. Tune in at **June 10 at 2 PM ET** to hear from Eliot about the Era of Robotics Unicorns. [_Learn more →_](https://redditroboticsshowcase.wordpress.com/)

### **Simone Giertz: Ask Me Anything**

We’ll be welcoming superstar inventor [**Simone Giertz**](/content/post/may-23-product-roundup#/index.html) to our Discord community for an **exclusive Ask Me Anything**. Tune in live on **June 14 at at 5 PM ET**. [_Save the date on the Viam Discord →_](http://discord.gg/viam)

### **Viam Open Lab: Flutter**

We open up our NYC robotics lab monthly to anyone who wants to build a robot with Viam. On **June 15**, we'll be hosting an **interactive session on Flutter**. If you're interested in mobile app development and robots, then this session is for you!  
[_Join us & bring friends →_](/content/open-lab/index.html)

Have questions for our team about recent Viam updates or ideas you’d like to discuss with other robotics enthusiasts? We’d love to hear from you in our [Discord community](https://discord.gg/viam).

We hope to connect with you at some of our upcoming events in June!
