Developer Journal #2: New Alpha Release #piday #raspberrypi @Raspberry_Pi

We’ve recently released a pretty big update to the Raspberry Pi WebIDE so I figured I’d take a moment to discuss some of the decisions we’ve made, and a few of the things we’re working on.

The biggest upgrade from 0.1.9 to 0.2.0 is a new installation process.  This should fix many of the outstanding bugs that have been reported, and the installation should take significantly less time than the previous version to complete.

  • The first thing is that the new installer is using a new user, so that it isn’t tied to your existing user.  One of the features we had to have working is access to GPIO and I2C.  As I previously wrote about, we currently need root access to easily access the GPIO pins.  For the time being, we’ve given the ‘webide’ user access to sudo, and the same permissions as the default ‘pi’ user.  We’d like to slowly remove the requirement for root access, but that will take some time.  You can manually disable these features, if you don’t need access to the GPIO pins.
  • The next feature is that the editor uses about 10-20mb less memory.  We switched from having a node process monitoring the server (in the case of crashes, or updates), to a lighter weight process monitor, restartd.  It’s not as feature-packed as some of the other process monitors (monit, supervisors, etc), but it’s pretty simple to get working, and seems stable enough.
  • Also, you can drop off the port :3000 on your URL’s when accessing the editor.  We’ve used ‘setcap’ to give access to the node process to port 80 without running the node process as root.
  • Those are mostly behind the scenes features, but one that we’ve added in for users with multiple Pi’s is being able to change the hostname of the pi from within the editor.  It’s an early test of the feature, and can be accessed at /config.  This would be useful in a classroom situation, making it easy for teachers to name their pi’s differently so there aren’t any conflicts.  It’s also useful for that situation when you have multiple Pi’s autonomously monitoring your surroundings, slowly taking control of your house until you come home one day and you’ve been locked out for good. 😉

Some of the features I’d like to work on in the future:

  • Make the editor updating features more fault tolerant.  Right now it’s fairly simple, and you’re not easily able to back out to a previous version.  I don’t think we’ll ever need to push out a lot of updates, but if an update failed, it would be nice not to have to uninstall and re-install the editor.
  • A job queue of sorts would be an interesting idea to implement that I’m sure folks would find useful.  The goal would be to basically abstract cron so that you can easily manage scheduled jobs.  For example, let’s say you’d like to check the temperature every 10 minutes, and update a google spreadsheet with that data.  You could navigate to your script in the editor, click “Create Job”, choose your parameters, and save.  At that point, your script would run until you tell it to stop, even when you’re not using the editor.  The key to this feature is keeping it simple enough for everyone to use.
  • Making the editing itself even better.  There are a lot of things we can do here, from adding key bindings for power users, to tabbed editing, and just quickly fixing the issues folks are submitting in github.

Learn how to install the WebIDE on your Raspberry Pi here.

The Adafruit Learning Technologies team develops tools and resources to help people learn.  In an effort to be as open as possible and to keep our awesome community involved, we decided to do a periodical Developer Journal.  In our Developer Journal posts, we will share with you the current Adafruit Learning Technologies projects in development, upcoming new features, and the status of existing projects.  Check out our current projects, the Adafruit Learning System, and the WebIDE.

998Each Friday is PiDay here at Adafruit, be sure to check out our posts, tutorials and new Raspberry Pi related products. Have you tried the new “Adafruit Raspberry Pi Educational Linux Distro” ? It’s our tweaked distribution for teaching electronics using the Raspberry Pi. But wait, there’s more! Try our new Raspberry Pi WebIDE! The easiest way to learn programming on a Raspberry Pi.

Want a FREE RASPBERRY PI? All orders over $350 get a FREE Raspberry Pi Model B with 512MB RAM!

As 2022 starts, let’s take some time to share our goals for CircuitPython in 2022. Just like past years (full summary 2019, 2020, and 2021), we’d like everyone in the CircuitPython community to contribute by posting their thoughts to some public place on the Internet. Here are a few ways to post: a video on YouTub, a post on the CircuitPython forum, a blog post on your site, a series of Tweets, a Gist on GitHub. We want to hear from you. When you post, please add #CircuitPython2022 and email to let us know about your post so we can blog it up here.

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Join 32,000+ makers on Adafruit’s Discord channels and be part of the community!

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more

CircuitPython – The easiest way to program microcontrollers –

Maker Business — Pololu’s account of the chip shortage

Wearables — Stay frosty

Electronics — High voltage logic

Python for Microcontrollers — Python on Microcontrollers Newsletter: CircuitPython 2022 Survey, Python #1 in 2021 and more! #Python #CircuitPython @micropython @ThePSF

Adafruit IoT Monthly — 2021 in Recap!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — New Products 1/12/22 Feat. Adafruit QT Py ESP32-S2 WiFi Dev Board with uFL Antenna Port – STEMMA QT!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.