The Photodiode You Never Knew You Had

Optoelectronics hold a range of possibilities for the hardware experimenter — indeed who among us hasn’t added LEDs aplenty to our work? What many of us may be unaware of though is that an LED is also a photodiode, and can even be persuaded to generate usable quantities of power. [Voltative] takes a look at this phenomenon with a series of experiments.

Lighting up an LED from a set of other LEDs is pretty cool, as is powering a calculator, or even the calculator powering itself from its on-board LED. But what caught our eye was using two LEDs as a data link, with both of them acting as transmitter and receiver (something on searching we find we’ve seen before). The possibilities there become interesting indeed.

Given that we are now surrounded by LEDs, from OLED screens to LED lighting, we can’t help wondering what the photodiode performance of some other types of part might be. Would the large area of a lighting LED give a better result for example, or would the phosphorescent coating of a white LED make it useless. We feel there’s more scope for experimentation here.

Continue reading “The Photodiode You Never Knew You Had”

Air Canada’s Chatbot: Why RAG Is Better Than An LLM For Facts

Recently Air Canada was in the news regarding the outcome of Moffatt v. Air Canada, in which Air Canada was forced to pay restitution to Mr. Moffatt after the latter had been disadvantaged by advice given by a chatbot on the Air Canada website regarding the latter’s bereavement fare policy. When Mr. Moffatt inquired whether he could apply for the bereavement fare after returning from the flight, the chatbot said that this was the case, even though the link which it provided to the official bereavement policy page said otherwise.

This latter aspect of the case is by far the most interesting aspect of this case, as it raises many questions about the technical details of this chatbot which Air Canada had deployed on its website. Since the basic idea behind such a chatbot is that it uses a curated source of (company) documentation and policies, the assumption made by many is that this particular chatbot instead used an LLM with more generic information in it, possibly sourced from many other public-facing policy pages.

Whatever the case may be, chatbots are increasingly used by companies, but instead of pure LLMs they use what is called RAG: retrieval augmented generation. This bypasses the language model and instead fetches factual information from a vetted source of documentation.

Continue reading “Air Canada’s Chatbot: Why RAG Is Better Than An LLM For Facts”

A breadboard showing a tiny ESP32 board and two HMC5883L sensors connected to it on different pins

Avoid I2C Address Conflicts On ESP32 By Pin Muxing

Using hardware I2C on an ESP32? Do you need to connect multiple I2C devices with the same address? Normally, you wouldn’t be able to do that without extra parts, but on the ESP32, [BastelBaus] has found a nice hack — just connect your devices to different pins and slightly abuse the ESP32 GPIO muxing, no extra hardware required!

Initially, they tried separating SDA and SCL completely, and after a bit of tinkering, that’s worked out wonders! For this method, [BastelBaus] provides example Arduino code you could easily integrate into your project, and shows logic analyzer captures that demonstrate there’s barely any overhead. Later, they’ve also found out that you could multiplex only one of the pins, specifically, SDA, having the SCL line be common! As far as we see, this could also work out with split SCL, but do let us know if that doesn’t sound right.

Typically, such a problem is solved with an I2C multiplexer, and we’ve highlighted projects with them before. However, this simple method could also work on chips like the RP2040 or even the Raspberry Pi 4 — just a bit more limited, since the GPIO muxing for I2C has less available ports! Also, if you’re not using a chip with such a comfortable GPIO mux and you must use devices with overlapping addresses, check out the comment section under our I2C ecosystem article – there’s a fair few other methods you can use. And, if this method ever malfunctions for you, there’s a bunch of very straightforward ways you could debug your bus!

ESP32 Weather Station Looks Great With Color E-Paper Display

[educ8s.tv] has built weather stations before, but his latest is his best yet. It’s all thanks to its low-power design, enabled by its e-paper display.

The build is based around an ESP32 microcontroller, combined with a BMP180 sensor for measuring barometric pressure, and a DHT22 sensor for measuring temperature and humidity. By taking these values and feeding them into the Zambretti algorithm, it’s possible to generate a rudimentary weather forecast.

The weather station looks particularly impressive thanks to its six-color e-paper display. It’s brightly colored and easy to read, and displays graphs of temperature, pressure, and humidity over time. Plus, by virtue of the fact that it only draws power when updating, it allows the project to last a long time running solely on battery power.

As far as DIY weather stations go, this is an attractive and clean design that offers plenty of useful data to the user. We’ve seen some other neat builds in this vein before, too.

Continue reading “ESP32 Weather Station Looks Great With Color E-Paper Display”

Wire Wrap Odyssey: A 7400-series Homebrew 8-bit Computer

The Wire Wrap Odyssey's first Hello World from the CPU module, here hooked up to a logic analyzer in July of 2020. (Credit: Paul Krizak)
The Wire Wrap Odyssey’s first Hello World from the CPU module, here hooked up to a logic analyzer in July of 2020. (Credit: Paul Krizak)

As part of his computer science curriculum at Texas A&M University in the early 2000s, [Paul Krizak] took a computer architecture course on the basics of their functioning. This and being exposed to dozens of homebuilt computer projects inspired him to begin building his own 8-bit computer in 2010, which eventually grew into the Wire Wrap Odyssey. This name covers both the primary construction method chosen around 2019 in the form of wire-wrapped connections, as well the harrowing journey to reach this point with a functioning computer system despite many choices and setbacks.

The Odyssey CPU is an 8-bit microcoded design with 16-bit address bus, using mostly 74HC-series logic. A VGA graphics card is also part of the design, which can output a 640×480 text display, with character glyphs read from the system ROM (32 kB AT28C256). As for the RAM, this is an extravagant 32 kB dual-port SRAM (Renesas 7007), which also allows both the CPU and video card to use the same SRAM. Currently the system has four peripherals: a PS/2 keyboard controller, an RTC and timer (DS1511Y+), 82C52 UART and 1 MB of extended RAM, but an ATA port and parallel port are in development.

Perhaps the most impressive part about this product is the level of documentation, from the early stages including paper doodles to the current state of the system, including the GitHub repository for the software. [Paul] was also an exhibitor at the Vintage Computing Festival (VCF) SoCal recently with his Wire Wrap Odyssey, where he was able to show off the progress so far. Next year he hopes to visit VCF SoCal again, with the remaining planned peripherals implemented.

Blast From The Past: Schematic Templates

If you want to draw schematics today, you probably sit down at your computer. Why not? There are a ton of programs made to do the work easily, and the results look great. Back in the day, you might sit at a drafting table with a full set of T-squares, triangles, and maybe a Leroy. But what about when inspiration struck at the coffee shop (no, not a Starbucks in those days)? Well, you probably had a schematic drawing template. We were surprised you can still buy these at high prices. Or you can 3D print your own, thanks to [Jan Stech].

Templates of all kinds used to be very common. There were several for schematics, logic symbols, furniture, and even geometric shapes and curves. They were almost always green and transparent. A quick search on Amazon for “drafting template” shows you can still get the generic templates, but schematic ones are still expensive.

Continue reading “Blast From The Past: Schematic Templates”

Wireless Telescope Guidance You Can Build On The Cheap

Telescopes are fun to point around the sky, but they’re even better when you have some idea of what you’re actually looking at. Experienced sky-gazers love nothing more than whipping out some quality glassware and pointing it to the heavens to try and view some photons from some fancy celestial point of interest. To aid your own endeavors in this realm, you might consider following [aeropic’s] example in building a capable wireless telescope DSC.

Yes, [aeropic] built a capable digital setting circle (DSC) which can be used to quickly point a telescope at objects in the sky, with the aid of the right astronomical software. An ESP32 board runs the show, using AS5600 positional encoders on each axis of the telescope to understand the device’s orientation. The encoders are attached via 3D-printed components to track the motion of the telescope accurately. It can then be paired over Bluetooth with a smartphone running an app like Skysafari. Once calibrated on some known stars, the app can then read the encoder outputs from the telescope, and help guide the user to point the device at other stars in the night sky.

The rig won’t actually move the telescope for you, it just guides you towards what you want to look at. Even still, it makes finding points of interest much faster and could help you get a lot more out of your next sky viewing party. Have fun out there! Video after the break.

Continue reading “Wireless Telescope Guidance You Can Build On The Cheap”