A Usable Arduino Debugging Tool

For as popular as the Arduino platform is, it’s not without its problems. Among those is the fact that most practical debugging is often done by placing various print statements throughout the code and watching for them in the serial monitor. There’s not really a great way of placing breakpoints or stepping through code, either. But this project, known as eye2see, hopes to change that by using the i2c bus found in most Arduinos to provide a more robust set of debugging tools.

The eye2see software is set up to run on an Arduino or other compatible microcontroller, called the “probe”, which is connected to the i2c bus on another Arduino whose code needs to be debugged. Code running on this Arduino, which is part of the eye2see library, allows it to send debugging information to the eye2see probe. With a screen, the probe can act as a much more powerful debugger than would otherwise typically be available, being able to keep track of variables in the main program, setting up breakpoints, and outputting various messages on its screen.

The tool is not without its downsides, though. The library that needs to run on the host Arduino slows down the original program significantly. But for more complex programs, the tradeoff with powerful debugging tools may be worth it until these pieces of code can be removed and the program allowed to run unencumbered. If you’d like to skip needing to use a second Arduino, we’ve seen some other tools available for debugging Arduino code that can run straight from a connected PC instead.

Timeline of the universe. A representation of the evolution of the universe over 13.77 billion years. The far left depicts the earliest moment we can now probe, when a period of "inflation" produced a burst of exponential growth in the universe. (Size is depicted by the vertical extent of the grid in this graphic.) For the next several billion years, the expansion of the universe gradually slowed down as the matter in the universe pulled on itself via gravity. More recently, the expansion has begun to speed up again as the repulsive effects of dark energy have come to dominate the expansion of the universe. The afterglow light seen by WMAP was emitted about 375,000 years after inflation and has traversed the universe largely unimpeded since then. The conditions of earlier times are imprinted on this light; it also forms a backlight for later developments of the universe. (Credit: NASA)

ESA’s Euclid Space Telescope And The Quest For Dark Energy

Most of what humankind and other mammalian species on Earth experience of the Universe is primarily restricted to the part of the electromagnetic spectrum which our optical organs can register. Despite these limitations, we have found ways over the centuries which enable us to perceive the rest of the EM spectrum, to see both what is incredibly far away, and what is incredibly small, to constantly get a little bit closer to understanding what makes the Universe into what we can observe today, and what it may look like in the future.

An essential element of this effort are space telescopes, which gaze into the depths of the Universe with no limitations imposed by the Earth’s atmosphere, or human activity. Among the many uses of space telescopes, the investigation of the expansion of the Universe is perhaps the most fascinating, as this brings us ever closer to the answers to the most fundamental questions about not only its shape, but also to its future, which may include hitherto unknown types of matter and energy.

With the recently launched Euclid space telescope, another chapter is being opened in the saga on dark energy and matter, and their nature and effects on the Universe, as well as whether they exist at all. Yet how exactly do you use a space telescope to ferret out the potential effects of dark energy?

Continue reading “ESA’s Euclid Space Telescope And The Quest For Dark Energy”

Cook Up A Yoke In Five Minutes

When it comes to flight simulators, we’ve seen people go all-out with their immersive setups, with all kinds of hyper-realistic control systems and monitors as far as the eye can see. But for those gaming on a budget this can seem a little overwhelming and daunting. We all have to start somewhere, though, so if you’re looking for your first semi-realistic flight simulator control mechanism take a look at this yoke which can be cobbled together for almost no money or time.

The yoke can be built around any optical mouse that happens to be lying around. A custom housing for it is constructed from cardboard, which lets it sit above a cardboard tube which functions as the control interface. This mechanism rests in a cardboard box it uses as a frame, with a yoke-styled control interface built out of packing foam at the front. One optional modification to the device allows it to have more realistic control throw, and another replaces the cardboard tube with a wooden dowel to give the device a little more strength.

While relatively quick and easy to build, it works as a fully-functional yoke in flight simulator programs like FlightGear almost effortlessly, mostly thanks to the fact that it is based on a nearly unmodified mouse. Assuming you have a mouse in your parts drawer and have access to some sort of cardboard, it’s estimated to take not much longer than five minutes to put together. But if you’re looking for something DIY that’s a little more substantial, it’s not too much of a step up to another DIY yoke we’ve featured before which is centered around an Arduino and a few 3D-printed parts.

Thanks to [Stephen] for the tip!

Ask Hackaday: What’s The Deal With Humanoid Robots?

When the term ‘robot’ gets tossed around, our minds usually race to the image of a humanoid machine. These robots are a fixture in pop culture, and often held up as some sort of ideal form.

Yet, one might ask, why the fixation? While we are naturally obsessed with recreating robots in our own image, are these bipedal machines the perfect solution we imagine them to be?

Continue reading “Ask Hackaday: What’s The Deal With Humanoid Robots?”

Automatic Transfer Switch Keeps Internet Online

Living in a place where the electric service isn’t particularly reliable can be frustrating, whether that’s because of a lack of infrastructure, frequent storms, or rolling blackouts. An option for those living in these situations is a backup generator, often turned on and connected by an automatic transfer switch. These are necessary safety devices too; they keep power lines from being back-fed by the generators. But there are other reasons to use transfer switches as well as [Maarten] shows us with this automatic transfer switch meant to keep his computers and Internet powered up.

The device is fairly straightforward. A dual-pole, dual-throw relay is housed inside of an electrical junction box with two electrical plugs, each of which can be connected to a different circuit or power source in [Maarten]’s house. The relay coil is energized by the primary power supply, and when that power is lost the relay automatically changes over to the other power supply, which might be something like a battery backup system. [Maarten] was able to get a higher quality product by building it himself rather than spending a comparable amount of money on a cheap off-the-shelf product as well. Continue reading “Automatic Transfer Switch Keeps Internet Online”

TinyBasicLike: A Target-Independent BASIC Interpreter

In the long and winding history of BASIC, it’s sometimes hard to keep track of all the different variants and dialects. Some may still remember TinyBASIC, which was published in 1976 as Palo Alto Tiny BASIC by [Gordon Brandly]. Later, TinyBASIC was modified by a number of people including [Scott Lawrence] who created TinyBASIC Plus (TBP). Inspired by this, [Karl] figured he could improve on TBP by making the original C-based project even easier to port by removing whatever platform dependencies he could find, creating what he calls TinyBasicLike.

The main change is that TinyBasicLike consists out of two C files, with one containing the core code, and the second the platform-specific details that can be used by the core. Although [Karl] started off with the Palo Alto Tiny BASIC-like code by [Scott Lawrence], he decided to make it into his own by making a few alterations, such as adding left and right shift operators, adding an ADDR() function, expanding the features of INPUT and adding multiple logical operators.

In the example STM32F4 project linked on the project page it is demonstrated how to target a new platform with TinyBasicLike. Performance on the STM32F4 Discovery board with a simple counting loop yielded about 6 lines of TBL program code per millisecond. For a 168 MHz STM32 MCU that’s definitely not astounding, but considering how straightforward Tiny BASIC (and TBL as a consequence) is, it’s definitely no slouch.

This is probably a good time to remind that BASIC was the original champion of cross-platform programming and the source of countless fond (and frustrating) memories.

A New Educational Robotics Platform

When looking for electronics projects to use in educational settings, there is no shortage of simple, lightweight, and easily-accessible systems to choose from. From robotic arms, drones, walking robots, and wheeled robots, there is a vast array of options. But as technology marches on, the robotics platforms need to keep up as well. This turtle-style wheeled robot called the Trundlebot uses the latest in affordable microcontrollers on a relatively simple, expandable platform for the most up-to-date educational experience.

The robot is built around a Raspberry Pi Pico, with two low-cost stepper motors to drive the wheeled platform. The chassis can be built out of any material that can be cut in a laser cutter, but for anyone without this sort of tool it is also fairly easy to cut the shapes out by hand. The robot’s functionality can be controlled through Python code, and it is compatible with the WizFi360-EVB-Pico which allows it to be remote controlled through a web application. The web interface allows easy programming of commands for the Trundlebot, including a drag-and-drop feature for controlling the robot.

With all of these features, wireless connectivity, and a modern microcontroller at the core, it is an excellent platform for educational robotics. From here it wouldn’t be too hard to develop line-follower robots, obstacle-avoiding robots, or maze-solving robots. Other components can easily be installed to facilitate these designs as well. If you’re looking for a different style robot, although not expressly for educational purposes this robotic arm can be produced for under $60.