ESP32 AM radio transmitter

am-modulation

A how-to on making a simple AM radio transmitter using the ESP32 microcontroller by Bitluni:

AM Radio transmissions are based on a carrier signal which is modulated by the audio signal. It’s a very basic principle but prone to noise from the environment. Using the ESP32 it is really simple to generate an analog signal using the built-in DACs. With the provided code here just a wire as an antenna has to be connected to the pin 25 of the ESP32. The transmission will end up on the AM frequency ~835kHz.

Via Bitluni’s Lab.

Check out the video after the break.

Project PITA: Build a mini mass deauther using Bettercap and a Raspberry Pi Zero W

deauth

evilsocket shared a how-to on making a mini WiFi deauthenticator using Bettercap and a Raspberry Pi Zero W:

A few days ago I started playing with some idea I had from a few weeks already, using a Raspberry Pi Zero W to make a mini WiFi deauthenticator: something in my pocket that periodically jumps on all the channels in the WiFi spectrum, collects information about the nearby access points and their connected clients and then sends a deauthentication packet to each one of them, resulting in some sort of WiFi jammer on the 802.11 level. As an interesting “side effect” of this jammer (the initial intent was purely for the lulz) is that the more it deauths, the higher the changes to also sniff WPA2 handshakes.

See the full post on Evilsocket blog.

Inside a two-quadrant power supply – Agilent 66312A teardown and experiment

Agilent66312A

Kerry Wong did a teardown of an Agilent 66312A dynamic measurement DC source:

Typically, a lab power supply can only operate within a single quadrant. Take a positive voltage power supply for example, it can only output or source current. If any attempt is made trying to sink current into the power supply by connecting a voltage source with a higher voltage than the output voltage of the power supply, the power supply would lose regulation since it cannot sink any current and thus is unable to bring down and regulate the voltage at its output terminals.
The Agilent 66312A dynamic measurement DC source however is a two-quadrant power supply, it not only can source up to 2A of current between 0 and 20V, but also can sink up to 1.2A or 60% of its rated output current as well. Although lacking some key functionality of a source measure unit (SMU), Agilent 66312A can nevertheless be used in similar situations where both current sourcing and sinking capabilities are needed.

More details on Kerry Wong’s blog.

Check out the video after the break.

App note: Minimizing light flicker in LED lighting applications

an_richtek_an022

Another application notes from Richtek this time on LED lamps flickering. Link here

Applying LEDs in offline retrofit lamps seems straightforward, but should be done with care to achieve similar light quality as the conventional lamp that the user is trying to replace. Light flicker is one of the aspects that need to be considered carefully during LED lamp design to avoid customer complaints from the field. This application note explains the LED lamp flicker phenomena in relation to driver topology and LED characteristics, and provides solutions based on several Richtek LED drivers in combination with specific LED strings. A practical flicker measurement method is explained as well, that can be used to measure light flicker in LED lamps.

App note: Li-ion battery and gauge introduction

an_ricktek_an024

Richtek app note for Li-ion battery definitions and gauge introduction. Link here

SOC is defined as the status of available energy in the battery and usually expressed as percentages. Because the available energy change depends on different charging/discharging currents, temperatures and aging effects, the SOC could be defined more clearly as ASOC (Absolute State-Of-Charge) and RSOC (Relative State-Of-Charge). Typically, the range of RSOC is from 0% to 100%, a fully charged battery’s RSOC is always 100% and a fully discharged battery has 0% RSOC. The ASOC is a reference calculated by Design Capacity which is a fixed capacity from when the battery is manufactured. A fully charged new battery will have 100% ASOC, but a fully charged aging battery could be less than 100% because of different charge/discharge conditions.

Battery management is part of power measurement. The fuel gauge is responsible to estimate the capacity of battery in the domain of battery management. The basic function of fuel gauge is to monitor the voltage, charge/discharge current and battery temperature, and to estimate the battery’s SOC and Full Charge Capacity (FCC) of battery. There are two classic methods to do the SOC estimation which are Open Circuit Voltage (OCV) and Coulomb Counter, respectively. The other method is dynamic voltage-based algorithm designed by RICHTEK.

Pocket high voltage generator quick build

IMG_20181003_164820

Aki made this DIY pocket HV generator:

There are times you find yourself looking for a relatively high voltage (100V to 200V often in my case) but low current DC power supply. I have zener diodes that are higher than 30V, which makes the lab supply useless, and filament LEDs with forward voltage over 60V. When I need to test them quickly, I used to hook up a simple rectifier circuit to a variable AC power supply (nothing more than a slidac with isolation transformer). While this gets job done, the setup is capable of supplying much too high current (1A or more), so I was always very nervous and extra careful in handling the circuit. All I need is a little HV generator that gives me around 200V DC and only capable of supplying a milliamp or less. Realizing that I do have such design available – one of the Nixie supply circuit – I just decided to put one together to use.

Project info on The LED Artist blog.

Two bits per transistor: high-density ROM in Intel’s 8087 floating point chip

1die-labeled

Ken Shirriff has a great write-up about the multi-level ROM in Intel’s 8087 floating point chip:

The 8087 chip provided fast floating point arithmetic for the original IBM PC and became part of the x86 architecture used today. One unusual feature of the 8087 is it contained a multi-level ROM (Read-Only Memory) that stored two bits per transistor, twice as dense as a normal ROM. Instead of storing binary data, each cell in the 8087’s ROM stored one of four different values, which were then decoded into two bits. Because the 8087 required a large ROM for microcode1 and the chip was pushing the limits of how many transistors could fit on a chip, Intel used this special technique to make the ROM fit. In this article, I explain how Intel implemented this multi-level ROM.

More details on Ken Shirriff’s blog.

DIRTY CABLES: a new cable editor

cover-image

DirtyCables.com has a live preview of a new custom cable builder. This is a from-scratch rewrite of the editor at DirtyPCBs with new features based on your requests:

  • Isometric connector drawings with pin numbers save a trip to the datasheet
  • Improved connector selector with room for additional info
  • One to many “Y” connections. Same connector “U” connections
  • Bigger, cleaner interface

Check out the live demo, and read about the updates below. The new editor is in preview mode, saving and buying cables is disabled.

add-hover

The editor is full screen and adjusts somewhat to different device sizes. Click “Add Connector” or “Add Wire” to insert a new part.

cables-add-CH

The add part dialog has been completely reworked. Choose the connector family to see a photo and isometric drawings with pin numbers. There’s room to add more information about the part in the future.

cables-complex

Click and drag to connect a wire and a connector. This is different than the click-to-select interface in the previous editor, and lacks the UI bugs. Pins, labels, and connections are handled by an open source library called jsPlumb.

Y-type one-to-many connections can be made for some parts. It’s also possible to do U-type connections that connect two pins of the same connector to the opposite ends of a single wire.

flip

Click to flip the connector and pin order. The reverse view shows the bottom side isometric drawing.

length

Click the wire to edit the length. Click “X” to remove the wire and its connections. This is much more compact than the old editor and makes complicated cables look a lot cleaner.

cables-docs

DirtyCables.com will be the new dedicated  site for the Dirty Cables service. The new site has simple and clear navigation, and it gives us room to grow the cable documentation and resources. In the next year we hope to double the connector and wire options, and add 100 common pre-made cables to the store. Of course it would also be nice to have mating sockets for all the connectors.

It’s a big decision to move this service outside DirtyPCBs, but we’ve made a lot of progress in the last year. We have a solid supply chain, we can accurately estimate prices, and we have a procedure to evaluate cable samples before they ship. DirtyCables is currently in preview mode, but it should be open for orders early next week.

Try out the new cable editor preview here. Can’t wait to buy custom cables? DirtyPCBs’ cable creator is ready to take your order. Need to see the connectors? Try our cheap Dirty Connector Sample Kits.