Call for interest: RobotWebTools working group?

I will close the Doodle at 2021-05-26T22:00:00Z - then use the results to schedule the first meeting within 2 weeks after that - please put your vote in!

If we don’t get the meeting time perfect, that’s OK, we can iterate from there - maybe we will need to alternate times since I think we have interest in US, Europe, and Asia - which is difficult to mutually schedule :dizzy_face:

The meeting will be recorded and posted to YouTube, and the notes will be publicly available.

1 Like

I’m convinced that there is a place for these web tools and definitely need some of them.
I won’t join the working group but I can help with testing and do occasional PRs (I’m not a web developer but it’s a good opportunity to learn).

I’m particularly interested in the ROS2 side.

It’s good initiative :slight_smile:

I am robotic student and I finish to study this year.
On side project, I am a team leader of a Robocup SSL team.

I work since few years on web, so I have a decent experience in web development.
I am interesting to join the working group and participate in the community !

Hi, I am recent undergraduate of cse. I have experience of web development at class project level. I really intend to contribute to ROS and it’s awesome opportunity. I am have been learning ROS from last Eight months. Can I will become part of RobotWeb Tools working group?

Hi, I’d be keen to join the working group too. I made a related post back in February Current state of web and mobile monitoring and teleoperation

Since then, I have used my very minimal web development experience, to create a (not yet published) node package with a set of React components for working with ROS. The repo for this is here.

My plan was to improve it a little bit, publish it to NPM, then make a post here, hoping that others would be able to add improvements. It suits my current needs (video feed, gamepad support, touchscreen gamepad) but is pretty clunky.

I haven’t got loads of time to work on it, but if I can use this to contribute somehow I would be keen!

2 Likes

Hi all,

Thanks so much for all the responses and interest! Based on the Doodle I have scheduled the first meeting for 2021-06-11T14:00:00Z

You will be able to see the meeting on the ROS Events Calendar and the invite has been sent to the Google Group - there is Google Meets joining info in the calendar item. The meeting will be recorded and uploaded to YouTube for anybody who cannot make it - link to be posted after the meeting.

I will make sure to have a proposal for the charter ready for us to review, and we can move forward from there.

Cheers, and see you there.

3 Likes

Wow, what a great first meeting! I was very happy to meet everyone, and gather all that interest into one (virtual) room.

For anyone who missed it:

We’ve decided to have a meeting cadence of 2 weeks (so, next one around June 25), but would like another opportunity to tweak the time - so here’s the new Doodle:

5 Likes

The first options of the Doodle have already passed. When do you plan to set a date for the second meeting?

2 Likes

I’m sorry about that - I will use the Doodle responses as a “general preference for any given week”, hopefully this is a relatively accurate assumption.

Based on the survey response, I’ve chosen 2021-07-01T16:00:00Z - the meeting with the Meets joining info is now available on the ROS Events Calendar.

Please feel free to yell if that Doodle result was not a “general weekly preference” :slight_smile: we can try again the following time, we’re still feeling this out.

You may want to add the meeting time to the event on the ROS Events Calendar, it doesn’t seem to currently have a time (unless I’m missing it)

1 Like

Thanks for catching that - I accidentally made it “All Day” :dizzy_face: It’s updated now

Hi folks, Adrian from Foxglove here.

We just came across this post and video (thanks for recording the first meeting!). This is a great initiative and we would love to be part of it!

A little bit of history of Foxglove and responding to questions that came up during the meeting:

Foxglove Studio began as a fork of Webviz. Most of our team came from Cruise, and our mission at Foxglove is to advance the state of robotics tooling based on what worked well at Cruise and other companies. At Cruise, we invested in web-based tooling early on (starting back around 2016). Webviz came out of that work, and it is an excellent tool, however webviz is built specifically for Cruise’s needs and much of the webviz code is still closed source, making it hard for the community to contribute.

Our goal with Foxglove Studio is to build a true community project, and focus on features that help all robotics developers (not just autonomous vehicles). We have diverged a lot from webviz over the past several months, and will continue to do so. For example, we converted from Flow to TypeScript, added many new panels (Map panel, URDF Viewer, Topic Graph panel, ROS Parameters panel, etc), fixed many bugs & performance improvements, added support for multiple layouts, added support for many new messages (e.g. velodyne_msgs/VelodyneScan, nav_msgs/Path, sensor_msgs/NavSatFix), added native ROS 1 connections, and we’re currently working on ROS 2 support (see our release notes for a full list of changes).

Most importantly, we believe in extensibility, and recently launched our extension API, making it easy for anyone to create and publish new panels for Foxglove Studio without needing to fork the codebase.

Foxglove Studio is designed for both live ROS connections and bag playback. For live connections we support both rosbridge and native (TCP). For example, you can display our equivalent of rqt_graph (the Topic Graph panel) while connected to a live ROS robot (ROS 1 for now, ROS 2 support is work in progress).

On a technical note, Foxglove is deployed as an Electron application. Electron is nice because we get to use the web stack, but can control the browser version, and still have access to native APIs (such as TCP connections, and better file system access). However, we do also support a browser build (Chrome only for now due to some features we rely on).

Foxglove Studio is open source and we welcome contributions. We would also love to collaborate on shared ROS web libraries (we found several overlapping libraries in some cases so it would be nice to combine efforts). We have created a few libraries of our own too (some are published on NPM already, others will be soon). All are written in TypeScript:

Let me know how we can help! We will join the next working group meeting on 7/1 and happy to give a demo if anyone is interested.

3 Likes

Hello Adrian,
I downloaded Foxglove Studio to give it a try … Not sure if I need to install additional ROS items. Is there a beginner video you could direct me to that would help me kick start my programing?
Thanks
Doug

Hey Doug - You can check out our docs for installation instructions. We also have a demo video here that covers the basics of getting up and running with Studio. Let us know if you have any other questions!

1 Like

Thanks! … I will look into the info you provided …

We had a successful second meeting - and decided to make the meeting recurring at the same day/time every 2 weeks

Next meeting: 2021-07-15T16:00:00Z
Notes: ROS WebTools Working Group Meeting Notes - Google Docs
Recording: ROS WebTools Working Group (2021-07-02) - YouTube

With a recurring meeting established, I think that’s a reasonable conclusion of this particular thread :slight_smile:

I would be very interested in a robot web tools working group!

After I built ROSShow (GitHub - dheera/rosshow: Visualize ROS topics inside a terminal with Unicode/ASCII art), I started building ROSBoard (GitHub - dheera/rosboard: ROS node that turns your robot into a web server to visualize ROS topics). The idea is the robot just runs a web server and you can visit it on a computer/phone/whatever and view all ros topics in a web browser. I wanted it to be mobile-friendly, versatile for people to add their own custom types to, and modern-looking.

I paused development as I got busy with my work and saw that ROS2 was well underway, and very much want to continue development of this in ROS2. I saw the “ros2-web-bridge” package and it however seemed to need multiple install steps (I much prefer one-liner “apt-get-friendly” packages like apt-get install ros-melodic-rosbridge-suite), and want to try to build it as light-weight as possible, and also with some level of security e.g. only allowing reading ROS topics if the user so desires.

Here’s an example of it in action. This is a car driving on I-280 with a box of sensors on it and running a neural network, you can see the front camera image, semantic output, steering wheel angle, vehicle speed, magnetometer, etc.

A passenger on this car can connect to the car’s Wi-Fi and view all of this live, it’s pretty cool. I’d love to translate this, polish this, add some basic security e.g. at least a username/password or read-only access to ROS topics, and make it a part of the ROS2 community.

6 Likes