Linux users are more likely than most to be familiar with Chromium, Google’s the free and open source web project that serves as the basis for their wildly popular Chrome. Since the project’s inception over a decade ago, users have been able to compile the BSD licensed code into a browser that’s almost the same as the closed-source Chrome. As such, most distributions offer their own package for the browser and some even include it in the base install. Unfortunately, that may be changing soon.
A post made earlier this month to the official Chromium Blog explained that an audit had determined “third-party Chromium based browsers” were using APIs that were intended only for Google’s internal use. In response, any browser attempting to access features such as Chrome Sync with an unofficial API key would be prevented from doing so after March 15th.
To the average Chromium user, this doesn’t sound like much of a problem. In fact, you might even assume it doesn’t apply to you. The language used in the post makes it sound like Google is referring to browsers which are spun off of the Chromium codebase, and at least in part, they are. But the search giant is also using this opportunity to codify their belief that the only official Chromium builds are the ones that they provide themselves. With that simple change, anyone using a distribution-specific build of Chromium just became persona non grata.
While most PCBs stick to tried-and-true methods of passing electrons through their layers of carefully-etched copper, modern construction methods allow for a large degree of customization of most aspects of these boards. From solder mask to number of layers, and even the shape of the board itself, everything is open for artistic license and experimentation now. [Luca] shows off some of these features with his PCB which acts as a live map of Italy.
The PCB is cut out in the shape of the famous boot, with an LED strategically placed in each of 20 regions in the country. This turns the PCB into a map with the RGB LEDs having the ability to be programmed to show any data that one might want. It’s powered by a Wemos D1 Mini (based on an ESP8266) which makes programming it straightforward. [Luca] has some sample programs which fetch live data from various sources, with it currently gathering daily COVID infection rates reported for each of the 20 regions.
The ability to turn a seemingly boring way to easily attach electronic parts together into a work of art without needing too much specialized equipment is a fantastic development in PCBs. We’ve seen them turned into full-color art installations with all the mask colors available, too, so the possibilities for interesting-looking (as well as interesting-behaving) circuits are really opening up.
As drone capability and flight time increase, the missions they will fly are getting more and more complex. [Justin] uses a service called ClimaCell which has real-time, forecast, and historical weather data available across the globe. The service isn’t totally free, but if you make fewer than 1,000 calls a day you might be able to use a developer account which doesn’t cost anything.
According to [Justin], weather data can help with pre-flight planning, in-flight operations, and post-flight analysis. The value of accurate forecasting is indisputable. However, a drone or its ground controller could certainly understand real-time weather in a variety of ways and record it for later use, so the other two use cases maybe a little less valuable.
While on the subject, it seems to us that accurate forecasting could be important for other kinds of projects. Will you have enough sun to catch a charge on your robot lawnmower tomorrow? If your beach kiosk is expecting rain, it could deploy an umbrella or close some doors and shutdown for a bit.
If you insist on using a free service, the ClimaCell blog actually lists their top 8 APIs. Naturally, their service is number one, but they do have an assessment of others that seems fair enough. Nearly all of these will have some cost if you use it enough, but many of them are pretty reasonable unless you’re making a huge number of calls.
How would you use accurate micro weather data? Let us know in the comments. Then again, sometimes you want to know the weather right from your couch. Or maybe you’d like your umbrella to tell you how long the storm is going to last.
When it comes to keeping abreast of the COVID-19 pandemic, there are basically two schools of thought. Some people would rather not hear the number of confirmed cases or deaths, and just want to focus on those who recovered. That’s fair enough. But others want to have all of the available data at their disposal so they can form their own conclusions about what’s happening with this virus on a global scale. Looking at this incredible COVID-19 status board, we’ll give you one guess which category [Reuben] falls into.
Constructed out of 2020 extrusion with both 3D printed and laser cut parts, this wall-mounted display is built to last. Clearly [Reuben] believes we’re in this one for the long haul, and taking a peek at the plethora of data points this device can show at once, it’s not hard to see why.
Stats are pulled down every hour from a JSON API by an ESP32 and stored on an SD card. A running total of confirmed cases, deaths, and recoveries are shown on several TFT displays located behind the face of the display. On the right, the relative severity of the infection in 32 different countries is visualized with LEDs of varying brightness.
Perhaps the most visually striking element of the display is the large annunciator panel on the left side, which lights up to show various conditions all over the world. We appreciate that [Reuben] has thought ahead and added a light that can be used once a vaccine is deployed for COVID-19, but the inclusion of a “MARTIAL LAW” indicator certainly doesn’t help us shake the feeling we’ve all found ourselves in a proper dystopia.
For all the technology we have, it can still be frustratingly difficult to get any concrete information from the media. Sometimes all you want to do is to cut through the noise and see some real numbers. Watching talking heads argue for a half hour probably isn’t going to tell you much about how the COVID-19 virus is spreading through your local community, but seeing real-time data pulled from multiple vetted sources might.
Having access to the raw data about COVID-19 cases, fatalities, and recoveries is, to put it mildly, eye-opening. Even if day to day life seems pretty much unchanged in your corner of the world, seeing the rate at which these numbers are climbing really puts the fight into perspective. You might be less inclined to go out for a leisurely stroll if you knew how many new cases had popped up in your neck of the woods during the last 24 hours.
But this article isn’t about telling you how to feel about the data, it’s about how you can get your hands on it. What you do with it after that is entirely up to you. Depending on where you live, the numbers you see might even make you feel a bit better. It’s information on your own terms, and in these uncertain times, that might be the best we can hope for.
One of the goals of programming languages back in the 1950s was to create a way to write assembly language concepts in an abstract, high-level manner. This would allow the same code to be used across the wildly different system architectures of that era and subsequent decades, requiring only a translator unit (compiler) that would transform the source code into the machine instructions for the target architecture.
Other languages, like BASIC, would use a runtime that provided an even more abstract view of the underlying hardware, yet at the cost of a lot of performance. Although the era of 8-bit home computers is long behind us, the topic of cross-platform development is still highly relevant today, whether one talks about desktop, embedded or server development. Or all of them at the same time.
Let’s take a look at the cross-platform landscape today, shall we?
Inspired by the over-the-top stage lighting and pyrotechnics used during e-sport events, [Hans Peter] set out to develop a scaled-down version (minus the flames) for his personal Counter-Strike: Global Offensive sessions. It might seem like pulling something like this off would involve hacking the game engine, but as it turns out, Valve was kind enough to implement a game state API that made it relatively easy.
According to the documentation, the CS:GO client can be configured to send out state information to a HTTP server at regular intervals. It even provided example code for implementing a simple state server in Node.js, which [Hans] adapted for this project by adding some conditional statements that analyze the status of the current game.
These functions fire off serial commands to the attached Arduino, which in turn controls the WS2812B LEDs. The Arduino code takes the information provided by the HTTP server and breaks that down into various lighting routines for different conditions such as wins and losses. But things really kick into gear when a bomb is active.
[Hans] wanted to synchronize the flashing LEDs with the beeping sound the bomb makes in the game, but the API doesn’t provide granular enough data. So he recorded the audio of the bomb arming sequence, used Audacity to precisely time the beeps, and implemented the sequence in his Arduino code. In the video after the break you can see that the synchronization isn’t perfect, but it’s certainly close enough to get the point across in the heat of battle.