Voting resources, early voting, and poll worker information - VOTE. ... Adafruit is open and shipping.

Raspberry Pi GPIO Web Control #piday #raspberrypi @Raspberry_Pi

Inspired by “Reading Analogue Sensors with One GPIO Pin“, Sebastian Bub rolled this approach into a project of his own, “Raspberry Pi GPIO Web Control,” a lightweight Java-based web application to control the GPIO ports.

From his project description:

A Java webapp to control your GPIO ports of the Raspberry Pi using http.

What is raspberry-pi-gpio-web-control?

raspberry-pi-gpio-web-control is a lightweight java based web application to control your GPIO ports of your Raspberry Pi over http. It is based on documentation at RPi Low-level peripherals
It is tested with Winstone Servlet Container, but any other servlet engine will probably do, too.


  • Every port can be set as input, output or analog input (requires a simple circuit based on Reading Analogue Sensors).
  • Output ports can be set conditionally on values of input ports (i.e. darknessSensor1in==1&lamp1out=1, see cron.conf).
  • You can give each port a custom name to make your client look better.
  • You can define a default state on output ports.
  • You can define a blocking time for an output port (so it is not switched to fast in case the user makes a request twice).
  • You can define a toggle time for an output port (i.e. if you want to turn a port on for a defined period of time, it can be done with a single request).
  • You can set a simulation mode for testing your client.
  • Setting multiple ports in one requests are set one after another, but the code is optimized and nothing unnecessary is done in between (it takes about 2-5ms on an idle Raspberry Pi to set all 17 ports, some artificial load (e.g.’find /’ in the background) will slow it down to 10-15ms).
  • Cronjobs (exact to the second) for output ports are based on Output ports can be set conditionally and you have a simple but powerful semaphore mechanism.
  • You may define your own variables with a prefix VIRTUAL which are persisted in memory (unknown virtual variables default to “0”).

Planned Features

  • If GPIO ports are used to represent binary output values, blocking single ports is dangerous: Delayed/Queue requests
  • Automated tests
  • Custom hooks (pre/post), e.g. for notifications
  • More status and configuration information requestable via json (disengageable)

Possible Unplaned Features

  • Bit sequences (especially with AUTO.TOGGLE.TIME) for serial output or to control a servo (probably an SPI interface)
  • Some kind of PLC (Programmable Logic Controller)
  • Suggestions are welcome

Project Status

The project has started and I use it by myself mainly for simple output (manually and with cronjobs). If I had to give it a release number, I would say it is a 0.85 release. Bug reports and feature requests are welcome.

Read more.

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!

Adafruit has had paid day off for voting for our team for years, if you need help getting that going for your organization, let us know – we can share how and why we did this as well as the good results. Here are some resources for voting by mail, voting in person, and some NY resources for our NY based teams as well. If there are additional resources to add, please let us know –

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 24,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 — To make it through a tough business cycle, layoffs should be a last resort

Wearables — Ornaments to the rescue

Electronics — Keep track of those rails!

Python for Microcontrollers — Python on Microcontrollers Newsletter: VSC for RasPi/Chromebook, projects and more! #Python #Adafruit #CircuitPython #ElectronicHalloween @micropython @ThePSF

Adafruit IoT Monthly — Matrix Portal, Solar Lawn Sprinkler and more!

Microsoft MakeCode — micro:bit version 2 Announced!

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 10/14/2020 featuring Adafruit Grayscale 1.5″ OLED Graphic Display – STEMMA QT/Qwiic!

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.