The project presented here is made for applications such as Animatronics, Puppeteer, sound-responsive toys, and robotics. The board is Arduino compatible and consists of LM358 OPAMP, ATMEGA328 microcontroller, microphone, and a few other components. The project moves the RC servo once receives any kind of sound. The rotation angle depends on the sound level, the higher the sound level the biggest the movement, in other words, the movement of the servo is proportional to the sound level. The microphone picks up the soundwave and converts it to an electrical signal, this signal is amplified by LM358 op-amp-based dual-stage amplifier, D1 helps to rectify the sinewave into DC, and C8 works as a filter capacitor that smooths the DC voltage. ATmega328 microcontroller converts this DC voltage into a suitable RC PWM signal.
The project is Arduino compatible and an onboard connector is provided for the boot-loader and Arduino IDE programming. Arduino code is available as a download, and Atmega328 chips need to be programmed with a bootloader before uploading the code. Users may modify the code as per requirement. More information on burning the bootloader is here: https://www.arduino.cc/en/Tutorial/BuiltInExamples/ArduinoToBreadboard
Direct Audio Input: The audio input signal should not exceed 5V, It is important to maintain the input audio signal at this maximum level, otherwise it can damage the ADC of ATMEGA328.
Features
Supply 5V to 6V DC (Battery Power Advisable)
RC Servo Movement 180 Degrees with Loud sound
Direct Sound Input Facility Using 3.5MM RC Jack
On Board Jumper Selection for Micro-Phone Audio or External Audio Signal
On Board Trimmer Potentiometer to Adjust the Signal Sensitivity
Flexible Operation, Parameters Can be Changed using Arduino Code
/*
Controlling a servo position using a potentiometer (variable resistor)
by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>
modified on 8 Nov 2013
by Scott Fitzgerald
http://www.arduino.cc/en/Tutorial/Knob
*/
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int potpin = A2; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
void setup() {
myservo.attach(6); // attaches the servo on pin 6 to the servo object
}
void loop() {
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 60)
val = map(val, 0, 60, 0, 180); // scale it for use with the servo (value between 0 and 180)
myservo.write(val); // sets the servo position according to the scaled value
delay(15); // waits for the servo to get there
}
The LILYGO T5 4.7 inchE-Paper ESP32 Development Board is an exciting 4.7″ e-paper display integrated with an ESP32 WiFi/Bluetooth module. The board’s processor is ESP32-WROVER-E with 16MB of FLASH memory and 8MB of PSRAM. The ESP32 module supports Wi-Fi 802.11 b/g/n and Bluetooth V4.2+BLE and can easily be programmed with Arduino IDE, VS Code, or ESP-IDF. The board can be purchased on Alliexpress for 38.33 EUR + shipping or Tindie for 28.13 + shipping. This display is ideal for building a weather station that will fetch weather data from OpenWeatherMap via simple API usage. So in this tutorial, we will follow the steps to make a weather station like the photo above. We will work on a Windows PC to program the display, but the same can be done in Linux or Mac OS.
Specifications
MCU: ESP32-WROVER-E (ESP32-D0WDQ6 V3)
FLASH: 16MB
PRAM: 8MB
USB to TTL: CP2104
Connectivity: Wi-Fi 802.11 b/g/n & Bluetooth V4.2+BLE
Onboard functions: Buttons: IO39+IO34+IO35+IO0, Battery Power Detection
Power Supply: 18650 Battery or 3.7V lithium Battery (PH 2.0 pitch)
First of all, we will need to install the USB to Serial (CH343) Drivers if we don’t have this done previously. Depending on your Windows version you will need:
Next click Tools, and select Boards: -> Boards Manager . It will open the left pane with a list of boards. Type ESP32 into the search field. Find ESP32 by Espressif Systems, and click Install.
Preparing the Code
Download LilyGo-EPD47 library to the C:\Users\YOUR_USERNAME\Documents\Arduino\libraries folder on your system:
Download and extract LilyGo-EPD-4-7-OWM-Weather-Display to your directory with Arduino projects. This directory is normally located in C:\Users\YOUR_USERNAME\Documents\Arduino.
The project folder name should match the name of the source code file (OWM_EPD47_epaper_v2.5). This is done to avoid the unnecessary step of moving the files later.
Open Arduino IDE 2.0, click File, -> Sketchbook, -> OWM_EPD47_epaper_v2.5.
The sketch requires ArduinoJson Library to successfully build.
Click Tools, ->Manage libraries. The pane with Library Manager will open, then type ArduinoJson into the search field. Find ArduinoJson by Benoit Blanchon, click Install.
Then click the tick button on the top menu to compile the code. If everything is successful it should show:
Once you verify that the code is compiled you can move on to the next step.
Configuring Parameters
Open the file owm_credentials.h and configure ssid, password, apikey, City, and Country.
The project is fetching data from openweathermap.org so you will need to create a new free account in order to get API key.
Power Saving
The project code supports power saving, so if you’re flashing in the early before 08.00 or after 23.00, you might notice that nothing appears on the display.
To change the power-saving options open file OWM_EPD47_epaper_v2.5.ino and change WakeupHour and SleepHour to a value that suits your schedule.
Uploading the Code
Connect the LilyGO T5 4.7-inch e-paper display to your PC-> Select the board from the dropdown in the toolbar. Search for the ESP32 Wrover module and click Ok.
Click the Upload button.
If the flashing is successful, your weather will be displayed on the e-paper like the photos below.
This is an original design of a GPS tracker designed on Elab and it is intended to be used as a security device for beehives, but it is not limited to this. It can be used everywhere a motion-activated GPS tracker is needed, like your car, bike, or even your boat. It is a GPS tracker controlled by simple SMS commands and designed for reliability,low power consumption, and easeof use. It features a MEMS accelerometer that is used to intelligently detect movement and once triggered it will power on the GPS module and will try to acquire the current coordinates. The location details will be transmitted to the owner’s smartphone via a simple SMS and then follow update the coordinates at predefined intervals.
Key Features:
Remote management via simple SMS commands
High reliability – no need to babysit the tracker due to crashes and resets
Long battery life – over 1 year standby on a single charge (2500mAh battery)
3-axis high-sensitivity MEMS Accelerometer
Intelligent Triggering – it will not be triggered by accidental movement
Selectable Trigger Sensitivity Level
Description of Operation
The tracker has 3 main modes of operation, detailed below:
Standby
Ready
Tracking
Standby mode
In standby mode, the GSM and GPS modules are powered down and the microcontroller is in sleep mode, resulting in a current draw of approximately 70uA, mainly by the accelerometer (MMA7660). The accelerometer is used to detect movement caused by a possible thief. If the accelerometer is triggered 1 or 2 or 3 times (depending on the sensitivity level) inside of a 60-second window then the device will enter tracking mode. While in standby mode the tracker will also enter ready mode approximately every 12 hours, triggered by the microcontroller’s internal RTC. This is to check for incoming commands and battery status etc.
Ready mode
The ready mode is entered by the microcontroller’s internal RTC and when the tracker is first powered on. In this mode, the tracker will power up the GSM module and wait for any SMSs to come in and process them. The tracker will stay in ready mode for 5 minutes before returning to standby mode unless an SMS command has instructed the device to enter tracking mode (BEE+TRIGGER).
Tracking mode
Tracking mode is entered when manually instructed to by the BEE+TRIGGER command or after the accelerometer triggers (1 or 2 or 3 movements detect depending on sensitivity level) within a 60-second window, from either standby or ready modes. In tracking mode, the tracker will power up both the GSM and GPS modules and begin to send tracking alert SMSs to the number configured by the BEE+NUMBER command. The device will continue to stay in tracking mode until the BEE+CLEAR command is received or while the accelerometer is detecting movement and/or the GPS module has a lock and the speed is greater than 10KPH. If neither of these conditions is met for 6 minutes then the tracker will send a tracking stopped SMS and return to standby mode, or ready mode if the RTC was triggered within the last 5 minutes.
Power up and Battery Status
In ready and tracking modes if the battery voltage falls below the threshold voltage (3650mV default) then a low battery alert SMS will be sent to the number configured by BEE+NUMBER. Approximately every 30 days (60 RTC triggers) an automated status SMS is also sent to the number configured by BEE+NUMBER.
When power is first applied to the device the tracker will be in ready mode and it will check for incoming SMS and then go to sleep. This is the ideal time to configure the tracker with the BEE+NUMBER number. This is the number that tracking messages, monthly status reports, and low battery alerts will be sent. The phone number is stored in the microcontroller’s FLASH memory and it will be permanently saved, even if battery power is removed. At power-up, the tracker will send a status SMS and also ignore any movement detected by the accelerometer for the first 60 seconds.
The Hardware
Hover images for details
Block Diagram
MCU
The tracker uses an ST STM32F030K6 microcontroller (ARM Cortex-M0, 32-bit RISC core), with 32KB of flash, and 4KB of RAM, and operates at up to 48MHz. The STM32F030K6 microcontroller operates in the -40 to +85 °C temperature range from a 2.4 to 3.6V power supply. A comprehensive set of power-saving modes allows the design of low-power applications. Currently, the firmware is taking roughly 24KB of flash (with debugging output enabled) and 1.7KB of RAM. The microcontroller is running at 8MHz and is supplied with 3V.
GSM module
The GSM module is a SIMCom SIM800C and uses the UART bus to communicate with the MCU. The GSM module is power-gated with a P-MOSFET, controlled by the MCU, as its own low-power modes are not sufficient for this project. SIM800C supports Quad-band 850/900/1800/1900MHz, it can transmit Voice, SMS and data information with low power consumption. With a tiny size of 17.6*15.7*2.3mm, it can smoothly fit into our small board. The module is controlled via AT commands and has a supply voltage range 3.4 ~ 4.4V.
GPS module
The GPS module is a u-blox NEO-6M and uses the I2C bus to communicate with the MCU. There is also a UART connection to the microcontroller as a fallback if the I2C interface does not work (usually the case with Chinese fakes). So, the tracker will work with the original NEO-6M as well as Chinese fake modules. The microcontroller implements the UART interface in software (via timer interrupts), operating at 9600 baud. The GPS module is power-gated with a P-MOSFET, controlled by the MCU, as its own low-power modes are not sufficient. The NEO-6M is powered in the range of 2.7 – 3.6V and has a size of 12.2 x 16 x 2.4mm. More details and design considerations can be found in the Hardware Integration Manual of NEO-6 GPS Modules Series and u-blox 6Receiver Description.
Supported GPS modules:
U-blox NEO-5M
U-blox NEO-6M
U-blox NEO-7M
U-blox NEO-M8N
Various Chinese fakes using AT6558 and similar (if the PCB footprint is the same then it will probably work)
Accelerometer
The accelerometer IC is the MMA7660FC and uses the I2C bus to communicate with the MCU. The MMA7660FC is a ±1.5g 3-Axis Accelerometer with Digital Output (I2C). It is a very low power, low profile capacitive MEMS sensor featuring a low pass filter, compensation for 0g offset and gain errors, and conversion to 6-bit digital values at a user-configurable sample per second. In OFF Mode it consumes 0.4 μA, in Standby Mode: 2 μA, in Active mode 47 μA and is powered in the range 2.4 V – 3.6 V. The accelerometer is always active, set up to create an interrupt whenever a shake or orientation change is detected, and is configured with a sampling rate of 8Hz (higher sampling rates improve detection, but also increase power consumption). The interrupt will wake up the microcontroller, where it will run through the main loop. In this loop it checks the interrupt status, and if set it will clear the interrupt and increment a counter at a maximum of once per second. The counter is reset every minute. If the counter reaches 3 the tracker is activated.
Battery Charger
The Li-Ion battery charging IC is MCP73832, which has a user-programmable charge current and the battery charge rate is set to 450mA. It includes an integrated pass transistor, integrated current sensing, and reverse discharge protection. It is usually recommended to charge Lithium batteries at no more than 0.5C, so the recommended minimum battery capacity to use with the tracker is 900mAh.
With a 2500mAh battery, standby current of 70uA, and waking up every 12 hours for 5 minutes with an estimated average current of 15mA the battery life should be approximately 1.5 years. A poor GSM signal can reduce battery life.
Status LEDs
LED
Description
States
LED1
Battery charging state
OFF: Battery not charging (no USB power or battery fully charged) ON: Charging
LED2
GSM state
OFF: GSM is powered off FAST BLINK: GSM is not connected to a network (usually no signal or no SIM) SLOW BLINK: GSM is connected to the network
LED3
MCU Operating mode
OFF: Standby mode ON: Ready or tracking mode
LED4
GPS state
OFF: GPS is powered off FAST BLINK: GPS is acquiring a lock SLOW BLINK: GPS has a lock
SMS Commands
Command
Description
BEE+STATUS
Returns battery voltage - temperature - GSM signal strength - tracking enabled - is tracking - last GPS coordinates -sensitivity level.
BEE+CLEAR
If the tracker has been triggered this will clear it and stop tracking until the next trigger.
BEE+TRIGGER
Manually trigger tracking (will trigger even if disabled with BEE+DISABLE). Tracking will stay enabled until BEE+CLEAR is received.
BEE+ENABLE
Enable tracking triggers
BEE+DISABLE
Disable tracking triggers.
BEE+NUMBER=0123499988
This sets the mobile number to send tracking - low battery warning and monthly status SMSs to. Other command replies are sent to the number that the command was sent from.
BEE+NUMBER=+441234999888
International numbers must start with + then the country code.
BEE+SENSE=1/2/3
This is the sensitivity level - 1 high sensitivity - 2 medium sensitivity - 3 low sensitivity.
LOW BATTERY: (battery voltage)mV (threshold voltage mV)
LOW BATTERY: 3400mV (3650mV)
Programming
The device firmware can be programmed via the SWD interface, which is the 4-pin programming header on the PCB marked RST (reset), SWD (SWDIO), SWC (SWCLK) and GND (ground). An ST-LINK/V2 USB adapter is needed to program the device, which is available from ebay, aliexpress, and other places for less than £3.
3D Render
Debugging
Debugging data is sent out of the UART interface through the TX pin of the debugging header on the PCB, at 115200 baud. This pin is also shared with the SWD interface (SWC). The RX pin is unused but made available for possible use in the future.
Format
(<time>)(<module>)<message>
“time” is in milliseconds and only increments while the microcontroller is not in standby mode. “module” is either “DBG” (general messages), “TRK” (tracker), “GSM”, “GPS”, “SMS”, “MGR” (MGR is the SMS manager which controls when queued SMSs are sent, retried etc.)
A 3D model of the enclosure is designed using Solidworks with overall dimensions of 60 x 20 x 112 mm. The enclosure has two holes, one for the charging micro USB connector and one to fit a mini rocker power switch. The provided design files (download .STEP and .STL files below) can be used to print your own enclosure in your desired color and material. The screws used to secure the enclosure are M3 x 10mm countersunk screws. Design is made by professional engineer janangachandima and you can find his services on the Fiverr page.
This is a DC-DC step-up converter based on LM2585-ADJ regulator manufactured by Texas Instruments. This IC was chosen for its simplicity of use, requiring minimal external components and for its ability to control the output voltage by defining the feedback resistors (R1,R2). NPN switching/power transistor is integrated inside the regulator and is able to withstand 3A maximum current and 65V maximum voltage. Switching frequency is defined by internal oscillator and it’s fixed at 100KHz.
The power switch is a 3-A NPN device that can standoff 65 V. Protecting the power switch are current and thermal limiting circuits and an under-voltage lockout circuit. This IC contains a 100-kHz fixed-frequency internal oscillator that permits the use of small magnetics. Other features include soft start mode to reduce in-rush current during start-up, current mode control for improved rejection of input voltage, and output load transients and cycle-by-cycle current limiting. An output voltage tolerance of ±4%, within specified input voltages and output load conditions, is specified for the power supply system.
Specifications
Vin: 10-15V DC
Vout: 24V DC
Iout: 1A (can go up to 1.5A with forced cooling)
Switching Frequency: 100KHz
Schematic is a simple boost topology arrangement based on datasheet. Input capacitors and diode should be placed close enough to the regulator to minimize the inductance effects of PCB traces. IC1, L1, D1, C1,C2 and C5,C6 are the main parts used in voltage conversion. Capacitor C3 is a high-frequency bypass capacitor and should be placed as close to IC1 as possible.
All components are selected for their low loss characteristics. So capacitors selected have low ESR and inductor selected has low DC resistance.
At maximum output power, there is significant heat produced by IC1 and for that reason, we mounted it directly on the ground plane to achieve maximum heat dissipation.
Block Diagram
Measurements
Thermal Performance
Photos
If you would like to receive a PCB, we can ship you one for 6$ (worldwide shipping) click here to contact us
Parts List
Part
Value
Package
MPN
Mouser No
C1 C2
33uF 25V 1Ω
6.3 x 5.4mm
UWX1E330MCL1GB
647-UWX1E330MCL1
C3
0.1uF 50V 0Ω
1206
C1206C104J5RACTU
80-C1206C104J5R
C4
1uF 25V
1206
C1206C105K3RACTU
80-C1206C105K3R
C5 C6
220uF 35V 0.15Ω
10 x 10.2mm
EEE-FC1V221P
667-EEE-FC1V221P
D1
0.45 V 3A 40V Schottky
SMB
B340LB-13-F
621-B340LB-F
IC1
LM2585S-ADJ
TO-263
LM2585S-ADJ/NOPB
926-LM2585S-ADJ/NOPB
L1
120 uH 0.04Ω
30.5 x 25.4 x 22.1 mm
PM2120-121K-RC
542-PM2120-121K-RC
R1
28 KΩ
1206
ERJ-8ENF2802V
667-ERJ-8ENF2802V
R2 R3
1.5 KΩ
1206
ERJ-8ENF1501V
667-ERJ-8ENF1501V
R4
1 KΩ
1206
RT1206FRE07931KL
603-RT1206FRE07931KL
LED1
RED LED 20mA 2.1V
0805
599-0120-007F
645-599-0120-007F
Connections
Gerber View
Simulation
We’ve done a simulation of the LM2585 step-up DC-DC converter using the TI’s WEBENCH online software tools and some of the results are presented here.
The first graph is the open-loop BODE graph. In this graph, we see a plot of GAIN vs FREQUENCY in the range 1Hz – 1M and PHASE vs FREQUENCY in the same range. This plot is useful as it gives us a detailed view of the stability of the loop and thus the stability and performance of our DC-DC converter.
Bode plot of open control loop
What’s interesting on this plot is the “phase margin” and “gain margin“. The gain margin is the gain for -180deg phase shift and phase margin is the phase difference from 180deg for 0db gain as shown in the plot above. For the system to be considered stable there should be enough phase margin (>30deg) for 0db gain or when phase is -180deg the gain should be less than 0db.
On the plot above we see that the phase margin is ~90deg and that ensures that the DC-DC converter will be stable over the measured range.
The next simulation graph is the Input Transient plot over time.
Input Transient simulation
In this plot, we see how the output voltage is recovering when the input voltage is stepped from 10V to 15V. We see that 4ms after the input voltage is stepped the output has recovered to the normal output voltage of 24V.
The next graph is the Load Transient.
Load Transient simulation
Load transient is the response of output voltage to sudden changes of load or Iout. We see that the output current suddenly changes from 0,1A to 1A and that the output voltage drops down to 23,2V until it recovers in about 3ms. We also see that when the load is reduced from 1A to 0,1A, output voltage spikes up to ~25,5V, then rings until it recovers to 24V in about 4ms.
The last graph shows the Steady State operation of DC-DC converter @ 1A output.
This graph shows the simulated output voltage ripple and inductor current. We see that output voltage ripple is ~0,6Vpp and the inductor current has a peak current of 2,4A. The inductor we used is rated at max 5,6A DC so it can easily withstand such operating current and without much heating of the coil.
Operating point data (Vin=13V, Iout=1A)
Operating Values
Pulse Width Modulation (PWM) frequency
Frequency
100 kHz
Continuous or Discontinuous Conduction mode
Mode
Cont
Total Output Power
Pout
24.0 W
Vin operating point
Vin Op
13.00 V
Iout operating point
Iout Op
1.00 A
Operating Point at Vin= 13.00 V,1.00 A
Bode Plot Crossover Frequency, indication of bandwidth of supply
Cross Freq
819 Hz
Steady State PWM Duty Cycle, range limits from 0 to 100
Duty Cycle
48.3 %
Steady State Efficiency
Efficiency
93.2 %
IC Junction Temperature
IC Tj
65.2 °C
IC Junction to Ambient Thermal Resistance
IC ThetaJA
34.9 °C/W
Current Analysis
Input Capacitor RMS ripple current
Cin IRMS
0.14 A
Output Capacitor RMS ripple current
Cout IRMS
0.48 A
Peak Current in IC for Steady State Operating Point
IC Ipk
2.2 A
ICs Maximum rated peak current
IC Ipk Max
3.0 A
Average input current
Iin Avg
2.0 A
Inductor ripple current, peak-to-peak value
L Ipp
0.50 A
Power Dissipation Analysis
Input Capacitor Power Dissipation
Cin Pd
0.01 W
Output Capacitor Power Dissipation
Cout Pd
0.035 W
Diode Power Dissipation
Diode Pd
0.45 W
IC Power Dissipation
IC Pd
1.0 W
Inductor Power Dissipation
L Pd
0.16 W
Configuring Output Voltage
The output voltage is configured by R1, R2 according to the following expression (Vref=1,23V)
VOUT = VREF (1 + R1/R2)
If R2 has a value between 1k and 5k we can use this expression to calculate R1:
R1 = R2 (VOUT/VREF − 1)
For better thermal response and stability it is suggested to use 1% metal film resistors.
Nixie tubes need about ~180Vdc to light up and thus on most devices, a DC-DC converter is needed. Here we designed a simple DC-DC switching regulator capable of powering most of Nixie tubes. The board accepts 12Vdc input and gives an output of 150-250Vdc. The board is heavily inspired by Nick de Smith’s design.
Description
The module is based on the MAX1771 Step-Up DC-DC Controller. The controller works up to 300kHz switching frequency and that allows the usage of miniature surface mount components. In the default configuration, it accepts an input voltage from 2V to Vout and outputs 12V, but in this module, the output voltage is selected using the onboard potentiometer and it’s in the range 150-250Vdc. The maximum output current is 50mA @ 180Vdc.
The MAX1771 is driving an external N-channel MOSFET (IRF740) and with the help of the inductor and a fast diode, high voltage is produced.
MOSFET has to be low RDSon, the diode has to be fast Mttr, typically < 50nS, and capacitors have to be low ESR type to have good efficiency.
Precautions must be taken as this power supply uses high voltages. Build it only if you know what you are dealing with. Don’t touch any of the parts while in use.
Pay attention on the placement of C1 tantalum capacitor, as the bar indicates the anode (positive lead)
Schematic
Parts List
Part
Value
LCSC.com
R1
1.5M - 0805 SMD
C118025
R3
10k 0805
C269724
R4
5k trimmer SMD
C128557
Rs
0.05 Ohm - 0805 SMD
C149662
C1
100uF Tantalium SMD
C122302
C2, C3
100nF - 0805 SMD
C396718
C4
4.7uF / 250V SMD
C88702
C5
100nF / 250V SMD 1210
C52020
IC
MAX1771 SO-8
C407903
L1
100uH / 2.5 A
C2962892
Q1
IRF740 D2PAK (TO-263-2)
C39238
D2
ES2F-E3, ES2GB
C145321, C2844160
X1, X2
Screw Terminal - P=3.5mm
C474892
Oscilloscope Measurements
Efficiency
The module’s efficiency is calculated for two output currents (50mA and 25mA) at 180Vdc voltage output and 12V input. In the first case, the Pout = 8.1W while the Pin=10.96W, so efficiency is calculated at 73.9%. In the second case, the Pout = 4.1W while the Pin=5.52W, so efficiency is calculated at 74.2%. We see that for lower currents efficiency is a little greater than for the maximum current of 50mA.
This is a minimal and small clock based on PIC16F628A microcontroller and DS1307 RTC IC. It is able to only show the time on a small 7-segment display with a total of 4 segments. The display we used is a 0.28″ SR440281N RED common cathode display bought from LCSC.com, but you can use other displays as well such as the 0.56″ Kingbright CC56-21SRWA. This project is heavily inspired by the “Simple Digital Clock with PIC16F628A and DS1307” in the case of schematic and we also used the same .hex as”Christo”.
Schematic
The schematic is straight forward. The heart is the PIC16F628A microcontroller running on the internal 4MHz oscillator, so no external crystal is needed. This saves us 2 additional IOs. The RESET Pin (MCLR) is also used as input for one of the buttons. All display segments are connected to PORTB and COMs are connected to PORTA. The RTC chip is also connected to PORTA using the I2C bus.
The refresh rate of the digits is about 53Hz and there is no visible flickering. The display segments are time-multiplexed and this makes them appear dimmer than the specifications. To compensate we are going to use some low resistors on the anodes. “Christo” tested it with different values for current limiting resistors R1-R7 and below 220Ω the microcontroller starts to misbehave (some of the digits start to flicker) above 220 Ohm everything seems OK. On the display we used the two middle dots are not connected to any pin on the package, so for the seconds’ indicators, we used the “comma” dots. These pins are connected to the SQW pin of the DS1307, which provides a square wave output with 1 sec period. The SQW pin is open drain, so we need to add a pull-up resistor. Τhe value of this resistor is chosen at 470Ω, after some trial and error testing. On the input side of the MCU, there are two buttons for adjusting the MINUTES and HOURS of the clock as indicated on the schematic. Onboard there is also an ICSP Programming connector, to help with the firmware upload. Finally, there is one unused pin left (RB7), which can be used for additional functionality, like adding a buzzer or an additional LED.
The DS1307 RTC needs an external crystal to keep the internal clock running and a backup battery to keep it running while the main power is OFF. So, the next time you power ON the clock the time would be current. To keep the overall board dimensions small we used a CR1220 battery holder with the appropriate 3V battery. Power consumption is about 35-40mA @ 5V input.
Code
According to the author, the code is written and compiled with MikroC Pro and uses the build-in software I2C library for communicating with RTC chip. If you want to use MPLAB IDE for compiling the code you should write your own I2C library from scratch. For programming the board we used PICkit 3 programmer and software. In this case, in the “Tools” menu check the option “Use VPP First Program Entry“.
The code for this project is listed below. Additionally, you will need the “Digital Clock (PIC16F628A, DS1307, v2).h” file which can be found on the .zip in downloads below. Compiled .hex file is also provided on the same .zip file.
#include "Digital Clock (PIC16F628A, DS1307, v2).h"
#define b1 RA6_bit
#define b2 RA5_bit
// b1_old, b2_old - old state of button pins
// hour10, hour1 - tens and ones of the hour
// min10, min1 = tens and ones of the minutes
byte b1_old, b2_old, hour1, hour10, min1, min10;
// definitions for Software_I2C library
sbit Soft_I2C_Scl at RA0_bit;
sbit Soft_I2C_Sda at RA7_bit;
sbit Soft_I2C_Scl_Direction at TRISA0_bit;
sbit Soft_I2C_Sda_Direction at TRISA7_bit;
// correct bits for each digit
// RB6 RB5 RB4 RB3 RB2 RB1 RB0
// g f e d c b a
// 0: 0 1 1 1 1 1 1 0x3F
// 1: 0 0 0 0 1 1 0 0x06
// 2: 1 0 1 1 0 1 1 0x5B
// 3: 1 0 0 1 1 1 1 0x4F
// 4: 1 1 0 0 1 1 0 0x66
// 5: 1 1 0 1 1 0 1 0x6D
// 6: 1 1 1 1 1 0 1 0x7D
// 7: 0 0 0 0 1 1 1 0x07
// 8: 1 1 1 1 1 1 1 0x7F
// 9: 1 1 0 1 1 1 1 0x6F
// BL: 0 0 0 0 0 0 0 0x00
const byte segments[11] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x00};
//***********************************************//
// Sets read or write mode at select address //
//***********************************************//
void DS1307_Select(byte Read, byte address) {
Soft_I2C_Start();
Soft_I2C_Write(0xD0); // start write mode
Soft_I2C_Write(address); // write the initial address
if (Read) {
Soft_I2C_Stop();
Soft_I2C_Start();
Soft_I2C_Write(0xD1); // start read mode
}
}
//********************************//
// Initialize the DS1307 chip //
//********************************//
void DS1307_Init() {
byte sec, m, h;
DS1307_Select(1, 0); // start reading at address 0
sec = Soft_I2C_Read(1); // read seconds byte
m = Soft_I2C_Read(1); // read minute byte
h = Soft_I2C_Read(0); // read hour byte
Soft_I2C_Stop();
if (sec > 127) { // if the clock is not running (bit 7 == 1)
DS1307_Select(0, 0); // start writing at address 0
Soft_I2C_Write(0); // start the clock (bit 7 = 0)
Soft_I2C_Stop();
DS1307_Select(0, 7); // start writing at address 7
Soft_I2C_Write(0b00010000); // enable square wave output 1 Hz
Soft_I2C_Stop();
}
m = (m >> 4)*10 + (m & 0b00001111); // converting from BCD format to decimal
if (m > 59) {
DS1307_Select(0, 1); // start writing at address 1
Soft_I2C_Write(0); // reset the minutes to 0
Soft_I2C_Stop();
}
if (h & 0b01000000) { // if 12h mode (bit 6 == 1)
if (h & 0b00100000) // if PM (bit 5 == 1)
h = 12 + ((h >> 4) & 1)*10 + (h & 0b00001111);
else
h = ((h >> 4) & 1)*10 + (h & 0b00001111);
}
else
h = ((h >> 4) & 3)*10 + (h & 0b00001111);
if (h > 23) {
DS1307_Select(0, 2); // start writing at address 2
Soft_I2C_Write(0); // reset the hours to 0 in 24h mode
Soft_I2C_Stop();
}
}
void incrementH() { // increments hours and write it to DS1307
hour1++;
if ((hour10 < 2 && hour1 > 9) || (hour10 == 2 && hour1 > 3)) {
hour1 = 0;
hour10++;
if (hour10 > 2)
hour10 = 0;
}
DS1307_Select(0, 2);
Soft_I2C_Write((hour10 << 4) + hour1);
Soft_I2C_Stop();
}
void incrementM() { // increments minutes and write it to DS1307
min1++;
if (min1 > 9) {
min1 = 0;
min10++;
if (min10 > 5)
min10 = 0;
}
DS1307_Select(0, 0);
Soft_I2C_Write(0); // reset seconds to 0
Soft_I2C_Write((min10 << 4) + min1); // write minutes
Soft_I2C_Stop();
}
void main(){
// pos: current digit position;
// counter1, counter2: used as flag and for repeat functionality for the buttons
// COM[]: drive the common pins for the LED display
byte pos, counter1, counter2, COM[4] = {0b11101111, 0b11110111, 0b11111011, 0b11111101};
CMCON = 0b00000111; // comparator off
TRISA = 0b01100000;
TRISB = 0b00000000;
b1_old = 1;
b2_old = 1;
counter1 = 0;
counter2 = 0;
pos = 0;
Soft_I2C_Init();
DS1307_Init();
while (1) {
DS1307_Select(1, 1); // select reading at address 1
min1 = Soft_I2C_Read(1); // read minutes byte
hour1 = Soft_I2C_Read(0); // read houts byte
Soft_I2C_Stop();
min10 = min1 >> 4;
min1 = min1 & 0b00001111;
hour10 = hour1 >> 4;
hour1 = hour1 & 0b00001111;
if (b1 != b1_old) { // if the button1 is pressed or released
b1_old = b1;
counter1 = 0;
}
if (!b1_old) { // if the button1 is pressed
if (counter1 == 0)
incrementH(); // increment hour
counter1++;
if (counter1 > 50) // this is repeat functionality for the button1
counter1 = 0;
}
if (b2 != b2_old) { // if the button2 is pressed or released
b2_old = b2;
counter2 = 0;
}
if (!b2_old) { // if the button2 is pressed
if (counter2 == 0)
incrementM(); // increment minutes and reset the seconds to 0
counter2++;
if (counter2 > 50) // this is repeat functionality for the button2
counter2 = 0;
}
TRISA = TRISA | 0b00011110; // set all 4 pins as inputs
switch (pos) { // set proper segments high
case 0: PORTB = segments[hour10]; break;
case 1: PORTB = segments[hour1]; break;
case 2: PORTB = segments[min10]; break;
case 3: PORTB = segments[min1]; break;
}
TRISA = TRISA & COM[pos]; // set pin at current position as output
PORTA = PORTA & COM[pos]; // set pin at current position low
pos++; // move to next position
if (pos > 3) pos = 0;
}
}
PCB
PCB is designed with Autodesk EAGLE and design files are available in downloads below. The overall dimensions of the board are 35.56 x 36.61 mm and we used almost SMD components.
Spare PCBs are available for shipment around the world. If you would like to get some drop us a line.
This is a 60V to 5V – 3.5A step down DC-DC converter based on TPS54360B from Texas Instruments. Sample applications are: 12 V, 24 V and 48 V industrial, Automotive and Communications Power Systems. The TPS54360 is a 60V, 3.5A, step down regulator with an integrated high side MOSFET. The device survives load dump pulses up to 65V per ISO 7637. Current mode control provides simple external compensation and flexible component selection. A low ripple pulse skip mode reduces the no load supply current to 146 μA. Shutdown supply current is reduced to 2 μA when the enable pin is pulled low.
Under-voltage lockout is internally set at 4.3 V but can be increased using the enable pin. The output voltage start up ramp is internally controlled to provide a controlled start up and eliminate overshoot. A wide switching frequency range allows either efficiency or external component size to be optimized. Frequency fold back and thermal shutdown protects internal and external components during an overload condition.
Note: The output voltage is set by a resistor divider from the output node to the FB terminal. It is recommended to use 1% tolerance or better divider resistors, choose R5, R6 for other output voltages.
It is strongly recommended to use adequate air flow over the board to ensure it doesn’t go at thermal shutdown. See thermal profile below.
Setting Output Voltage
The following table lists the R5 values for some common output voltages assuming R6= 10.0kΩ
Features
Supply Input 8.5V-60V
Output 5V (Output Voltage adjustable with R5, R6)
Output Current 3.5A
100 kHz to 2.5 MHz Switching Frequency
Optional JST connector for 5V Fan
Current Mode Control DC-DC Converter
Integrated 90-mΩ High Side N-Channel MOSFET
High Efficiency at Light Loads with Pulse Skipping Eco-mode™
Low Dropout at Light Loads with Integrated BOOT Recharge FET
146 μA Operating Quiescent Current
1 µA Shutdown Current
Internal Soft-Start
Accurate Cycle-by-Cycle Current Limit
Thermal, Overvoltage, and Frequency Fold back Protection
PCB Dimensions 55.50mm x 24.64mm
Schematic
Parts List
PCB
Thermal Image
You can see on the thermal images below that at 60V input – 5V @2A output the IC gets too hot (>105ºC) and if we go for higher outputs (2.5-3A) the IC gets in thermal cut-off. To avoid this situation you can use a small 5V FAN to blow air on the board or probably use a heatsink attached to the board.
Measurements
The efficiency is calculated based on the (Pout/Pin)*100%. For 60V input and 5V @3A output the input current is 0.32A, so Pin=19.38W. Pout=5V*3A=15W, so e=77.39% with Pdis = 4.58W
This tiny board is designed to drive a bidirectional DC brushed motor of large current. DC supply is up to 50V DC. A3941 gate driver IC and 4X N Channel Mosfet IRLR024 used as H-Bridge. The project can handle a load of up to 10A. Screw terminals are provided to connect the load and load supply, and 9 Pin header connector is provided for easy interface with the microcontroller. An on board, shunt resistor provides current feedback.
The A3941 is a full-bridge controller for use with external N-channel power MOSFETs and is specifically designed for automotive applications with high-power inductive loads, such as brush DC motors. A unique charge pump regulator provides full (>10 V) gate drive for battery voltages down to 7 V and allows the A3941 to operate with a reduced gate drive, down to 5.5 V. A bootstrap capacitor is used to provide the above-battery supply voltage required for N-channel MOSFETs. An internal charge pump for the high-side drive allows DC (100% duty cycle) operation.
The full bridge can be driven in fast or slow decay modes using diode or synchronous rectification. In the slow decay mode, current recirculation can be through the high-side or the low side FETs. The power FETs are protected from shoot-through by resistor R7 adjustable dead time. Integrated diagnostics provide an indication of under voltage, over temperature, and power bridge faults, and can be configured to protect the power MOSFETs under most short circuit conditions.
The A3941 is a full-bridge MOSFET driver (pre-driver) requiring a single unregulated supply of 7 to 50 V. It includes an integrated 5 V logic supply regulator. The four high current gate drives are capable of driving a wide range of N-channel power MOSFETs, and are configured as two high-side drives and two low-side drives. The A3941 provides all the necessary circuits to ensure that the gate-source voltage of both high-side and low-side external FETs are above 10 V, at supply voltages down to 7 V. For extreme battery voltage drop conditions, correct functional operation is guaranteed at supply voltages down to 5.5 V, but with a reduced gate drive voltage. The A3941 can be driven with a single PWM input from a Microcontroller and can be configured for fast or slow decay. Fast decay can provide four-quadrant motor control, while slow decay is suitable for two-quadrant motor control or simple inductive loads. In slow decay, current recirculation can be through the high-side or the low-side MOSFETs. In either case, bridge efficiency can be enhanced by synchronous rectification. Cross conduction (shoot through) in the external bridge is avoided by an adjustable dead time. A low-power sleep mode allows the A3941, the power bridge, and the load to remain connected to a vehicle battery supply without the need for an additional supply switch. The A3941 includes a number of protection features against under voltage, over temperature, and Power Bridge faults. Fault states enable responses by the device or by the external controller, depending on the fault condition and logic settings. Two fault flag outputs, FF1 and FF2, are provided to signal detected faults to an external controller.
Features
High current gate drive for N-channel MOSFET full bridge
High-side or low-side PWM switching
Charge pump for low supply voltage operation
Top-off charge pump for 100% PWM
Cross-conduction protection with adjustable dead time
6V Lead acid (SLA) battery charger project is based on BQ24450 IC from Texas instruments. This charger takes all the guesswork out of charging and maintaining your battery, no matter what season it is. Whether you have a Bike, Robot, RC Car, Truck, Boat, RV, Emergency Light, or any other vehicle with a 6v battery, simply hook this charger maintainer up to the battery. The BQ24450 contains all the necessary circuitry to optimally control the charging of lead-acid batteries. The IC controls the charging current as well as the charging voltage to safely and efficiently charge the battery, maximizing battery capacity and life. The IC is configured as a simple constant-voltage float charge controller. The built-in precision voltage reference is especially temperature-compensated to track the characteristics of lead-acid cells, and maintains optimum charging voltage over an extended temperature range without using any external components. The low current consumption of the IC allows for accurate temperature monitoring by minimizing self-heating effects. In addition to the voltage- and current-regulating amplifiers, the IC features comparators that monitor the charging voltage and current. These comparators feed into an internal state machine that sequences the charge cycle.
For low charging current, you can use SMD Q1 transistor on the bottom of PCB, for higher charging currents you should use a through-hole (TO247) transistor, like TIP147 on the top of PCB.
The circuit has been designed for PNP transistor (Q1) that’s why the PCB jumper is shorted to R8 by default. You can also use an NPN transistor, in this case, Omit R6, Use R2, Jumper has to be shorted the other way.
The DRV101 is a low-side power switch employing a pulse-width modulated (PWM) output. Its rugged design is optimized for driving electromechanical devices such as valves, solenoids, relays, actuators, and positioners. The DRV101 module is also ideal for driving thermal devices such as heaters and lamps. PWM operation conserves power and reduces heat rise, resulting in higher reliability. In addition, an adjustable PWM potentiometer allows fine control of the power delivered to the load. Time from dc output to PWM output is externally adjustable. The DRV101 can be set to provide a strong initial closure, automatically switching to a soft hold mode for power savings. The duty cycle can be controlled by a potentiometer, analog voltage, or digital-to-analog converter for versatility. A flag output LED D2 indicates thermal shutdown and over/under current limit. A wide supply range allows use with a variety of actuators.
Heat activated cooling fan controller is a simple project which operates a brushless fan when the temperature in a particular area goes above a set point, when temperature return normal, fan automatically turns off. The project is built using LM358 Op-amp and LM35 temperature Sensor. Project requires 12V DC supply and can drive 12V Fan. This project is useful in application like Heat sink temperature controller, PC, heat sensitive equipment, Power supply, Audio Amplifiers, Battery chargers, Oven etc
The SMD SO8 LM35 used as temperature sensor, LM358 act as comparator and provides high output when temperature rise above set point, high output drive the Fan through driver transistor. The LM35 series are precision integrated-circuit temperature devices with an output voltage linearly-proportional to the Centigrade temperature. The LM35 device has an advantage over linear temperature sensors calibrated in Kelvin, as the user is not required to subtract a large constant voltage from the output to obtain convenient Centigrade scaling. The LM35 device does not require any external calibration or trimming to provide typical accuracy of ±¼°C at room temperature. Temperature sensing range 2 to 150 centigrade. LM35 provides output of 10mV/Centigrade.
Axiomtek – a world-renowned leader relentlessly devoted to the research, development, and manufacture of a series of innovative and reliable industrial computer products of high efficiency – is pleased to introduce the CEM320, a new addition to its lineup of COM Express Type 10 modules. This pocket-sized embedded module features an onboard Intel Atom® x6000E/RE series or Intel® Celeron® N/J processor (codenamed Elkhart Lake) with integrated Intel® UHD graphics and high-speed interfaces. It comes equipped with integrated onboard 16GB LPDDR4 memory, along with onboard eMMC 5.1 storage. The CEM320, with its power-efficient design, feature richness, and excellent graphics performance, is well-suited for a diverse range of applications, including medical imaging, industrial control, transportation surveillance systems, portable equipment, and automation.
“Axiomtek’s CEM320 is customizable to meet the unique needs of any market, making it ideal for system integrators seeking a robust, flexible, and budget-friendly embedded computing solution. Equipped with Intel® integrated UHD graphics, this COM Express Type 10 Mini module supports dual simultaneous displays via DDI port supporting HDMI/DVI/DisplayPort and single-channel 18/24-bit LVDS. Additionally, the CEM320 features a 2.5G LAN port with Wake-on-LAN and PXE Boot ROM enabled, as well as eMMC storage with up to 64GB memory, ensuring faster data transmission with low latency in automation applications or handheld devices in specific fields,” said Chris Chiang, the product manager of the IDS Division at Axiomtek.
The Intel Atom®-based CEM320 offers a variety of I/O options, including four PCIe x1 Gen3 lances, two USB 3.2 Gen2 ports, eight USB 2.0 ports, one 2.5G LAN port with Intel® Ethernet Controller I226-LM, two SATA 3.0 ports, HD Codec audio, one DDI, one LVDS (eDP optional), one LPC, one SPI, two serial TX/RX, one I2C, and 4-channel GPIO. These features provide customers with various options to address diverse digital connectivity challenges.
Advanced Features of CEM320
Intel Atom® x6000E/RE series or Intel® Celeron® N/J processor (Elkhart Lake)
8GB/16GB LPDDR4 onboard memory, up to 3200MT/s
Up to 4 lanes of PCI Express Gen3
2 SATA 3.0
2 USB 3.2 Gen2 and 8 USB 2.0
eMMC 5.1 and TPM 2.0 onboard
In addition to its flexible I/O expansion, the CEM320 supports a wide voltage input range of +4.75V to +20V, catering to the varying voltage input requirements of automotive or portable applications. It also offers extended operating temperature ranges of -20ºC to +70ºC or -40ºC to +85ºC with a system thermal solution to ensure stable and reliable operation in harsh environments. The CEM320 supports a watchdog timer and TPM 2.0 for enhanced system security.
The COM Express Type 10 Mini module CEM320 is available now. For more product information or pricing, please visit our global website at www.axiomtek.com or contact one of our sales representatives at info@axiomtek.com.tw
The Raspberry Pi Foundation has rolled out an updated version of its Debian-based operating system, Raspberry Pi OS, tailored for Raspberry Pi single-board computers (SBCs). This new release introduces significant enhancements, including a transition to the Linux 6.6 LTS kernel series, various improvements, and updated components aimed at improving overall functionality and user experience. One of the notable improvements in this release is the refinement of the dark theme and the addition of new settings for headless resolution in the Screen Configuration. Additionally, users can now perform EEPROM updates directly from the raspi-config utility, streamlining the process of managing firmware updates.
While still based on the latest Debian GNU/Linux 12 “Bookworm” series, Raspberry Pi OS now benefits from the enhanced capabilities of the Linux 6.6 LTS kernel, a substantial upgrade from the previous Linux kernel 6.1 LTS version. Furthermore, this update includes the latest versions of Chromium 122 and Mozilla Firefox 123 web browsers, ensuring users have access to the latest browsing features and security enhancements.
Specifically catering to the Raspberry Pi 5 SBC, this release focuses on improving power button handling and introduces new settings for headless resolution within the Screen Configuration tool. Notably, the Wayland headless resolution setting has been removed from the Raspberry Pi Configuration.
Other notable enhancements include improved compatibility with alternative window managers, optimizations to the dark theme for better widget display, and faster access to the Bluetooth and Network menus. Additionally, changes such as replacing popover windows with conventional windows and refining the shutdown assistant contribute to a more streamlined user experience.
Furthermore, the update introduces an alternative mouse cursor for drag-and-drop operations, updates to the WayVNC VNC server for improved compatibility, and enhancements to the raspi-config utility allowing for EEPROM updates.
Despite these advancements, some known issues persist, such as the wireless networks not displaying correctly during the first-run setup wizard on Raspberry Pi 5.
For users eager to experience these improvements, the updated Raspberry Pi OS 2024-03-12 is available for download from the official website, catering to all supported Raspberry Pi models. Existing users can effortlessly update their installations using the graphical updating utility or by executing the sudo apt update && sudo apt full-upgrade commands in a terminal window. A couple of other issues were also fixed, and you can study the full changelog here.
DietPi, known for its lightweight and adaptable nature, has just rolled out DietPi 9.1, the latest version built on Debian 12.5. One of the key highlights of this update is the addition of new images tailored specifically for Raspberry Pi 5, complemented by updates for other Raspberry Pi models. These fresh images leverage the robust Bookworm’s Linux kernel 6.1 LTS and firmware package from Raspberry Pi Ltd., offering enthusiasts an opportunity to explore enhanced performance and compatibility.
The introduction of the Radxa Rock 4 SE image was a necessary step due to the subtle differences in memory support between the Rock 4’s RK3399 SoC and the RK3399-T’s SoC, making it impossible for a Rock 4 image to boot on the Rock 4 SE. Similarly, the new Raspberry Pi 5 image is still in its early stages and may have rough edges, with features like resolution changes and camera module support not yet functioning. However, these new images are now available for testing purposes.
While DietPi 9.1 brings exciting advancements, some features like screen resolution adjustments and camera module support are still in the works. Despite these ongoing developments, the release signifies DietPi’s commitment to delivering optimized experiences for single-board computer enthusiasts, promising further enhancements and refinements.
In addition to the major updates mentioned, DietPi 9.1 includes numerous smaller improvements focused on code performance, stability enhancements, visual refinements, and spelling fixes. While it’s challenging to detail every change here, you can explore the comprehensive list of code modifications for this release on GitHub by visiting MichaIng/DietPi!6921. These continuous refinements reflect DietPi’s dedication to delivering a polished and reliable Linux operating system experience for single-board computer users.
The release also brings a series of bug fixes for general OS-level tasks, such as partition resizing. At an app level, we see bug fixes for Mosquitto (MQTTservice),Amiberry (Amiga emulation), Samba (SMBFS) servers, OctoPrint 3D printer web interface, and RealVNC server.
DietPi v9.1 can be downloaded directly from the DietPi website.
With Tiny Tapeout 6, you can design your custom ICs, get them fabricated, and then receive them on a development board, all for only $300.
Matthew Venn has announced the launch of Tiny Tapeout 6, an educational program designed to assist beginners with their chip design. Participants will have the opportunity to see their designs manufactured into physical chips in partnership with Skywater Technology Foundry.
The new version maintains the same design capacity as the previous one but introduces additional features such as power gating, mixed-signal support, and analog pins.
For those interested in including analog functions in their designs, there’s now the option to add analog I/O pins, with each starting at $40, requiring a minimum use of two tiles. The cost for participating has changed due to updates in chip packaging, with the first 100 individual submissions costing $150 for one tile, the ASIC, and the demo board. After the first 100, or for entries from businesses and universities, the price goes up to $300. Additional tiles can be added for $50 each.
Participants advancing to the design phase of the initiative can use Wokwi, a tool for digital design and simulation, or they can create their chip designs using a programming language designed for hardware, like Verilog or Amaranth.
All the chip designs from Tiny Tapeout 6 will be combined into one IC and placed on a development board. Users can control specific projects on this board using Python scripts, enabling or disabling them. This feature simplifies the process of testing and utilizing their designs in real scenarios.
The current project run began on Jan 30, 2024, and will close on April 19, 2024, which means there are only 25 days left for submissions at the time of this note. For additional information and updates, it’s advised to visit the Tiny Tapeout website.
The Atreyo AG-702 is an industrial OpenWrt gateway powered by the MediaTek MT7628 processor, featuring dual Ethernet and WiFi connectivity alongside an integrated LTE and GNSS modem capable of accommodating two SIM cards.
This gateway boasts isolated RS485 and RS232 interfaces for reliable communication, two digital isolated inputs, one relay output, and a USB host port that facilitates connections to peripherals like flash drives or USB converters, enhancing its versatility across different interfaces. Encased in an anodized aluminum enclosure, it offers robust durability suitable for industrial environments.
Furthermore, the Atreyo AG-702 supports a wide input voltage range of 14-60V DC, ensuring compatibility with various industrial power systems and enhancing its adaptability to diverse settings.
Atreyo AG-702 specifications:
SoC: MediaTek MT7628 MIPS processor at 580MHz
System Memory: 256MB
Storage:
32MB eMMC flash
512MB NAND flash with ExtRoot support (overlay)
Networking:
100Mbps Ethernet WAN port
100Mbps Ethernet LAN port
LTE/GPRS with dual SIM and 1x external antenna
2.4 GHz WiFi with 1x external antenna
GNSS with active antenna support
USB: 1x USB 2.0 Type-A port
Serial Interfaces:
Isolated RS485
Isolated RS232
Expansion:
2x isolated digital input
1x relay output
Miscellaneous:
LED indicators for system, I/Os, WiFi, SIM card, LTE, and signal strength
Power Supply:
14 to 60V DC via terminal block
Passive PoE support
Dimensions: 88 x 87 x 35mm (Aluminium housing with DIN rail mounting option)
Weight: 240 grams
The AG-702 is said to run OpenWrt 23.05 with the Atreyo Environment V1.01b and Linux kernel 5.15.71.
The default firmware installed on the Atreyo AG-702 industrial OpenWrt gateway offers a wide array of advanced features designed to enhance functionality and flexibility. Among these features is robust VPN support, including protocols such as OpenVPN and WireGuard, ensuring secure and encrypted communication over public networks. Additionally, the gateway supports the ModBus protocol, serving various roles like TCP slave, TCP master, RTU master, and RTU gateway, enabling seamless integration with ModBus-enabled devices in industrial environments.
For remote management, the gateway provides multiple avenues such as a user-friendly Web UI for configuration and monitoring, SSH access for secure command-line interface management, SNMP for network device monitoring, and MQTT(s) for efficient communication in IoT applications. These capabilities empower administrators to efficiently manage and monitor the gateway and connected devices, making it well-suited for industrial deployments requiring secure, reliable, and scalable communication solutions. Atreyo also provides an SDK allowing users to develop their application(s) for the gateway. Additional information about the hardware and software can be found on the documentation website.
Atreyo told CNX Software the AG-702 industrial OpenWrt gateway is available now with pricing starting at $125 without cellular and GNSS connectivity. I can also see they have offices in India and Poland, so European companies should also be able to easily source the gateway. More details may be found on the product page.
The Compex WLE7002E25 is a WiFi 7 module designed in a standard mini PCIe form factor, ensuring compatibility with existing systems using WiFi 4 or WiFi 5 modules. This compatibility simplifies integration for device manufacturers, as they do not need to modify their hardware to accommodate the new generation WiFi 7 module. As a result, development costs are reduced, and time-to-market is accelerated.
One of the key achievements of the WLE7002E25 is its lower power consumption while maintaining impressive transmit power levels. Compared to the high-performance Qualcomm reference design, the WLE7002E25 module offers a 50% reduction in size and significantly lower power consumption with a minor loss in performance. The module boasts a maximum transmit power of 22dBm in the 2.4GHz band and 21dBm in the 5GHz band, with a maximum power consumption of 8.0W.
An important feature of WiFi 7 is Multi-Link Operation (MLO), allowing clients to connect to an Access Point (AP) through multiple bands simultaneously, reducing latency. The WLE7002E25 supports MLO between its 2.4GHz and 5GHz bands and implements MLO signals between adapters, enabling MLO with other WiFi 7 modules such as the Compex WLE7000E6. This MLO capability is crucial for applications requiring low latency, such as games, robotics, real-time translation, and teleconferencing.
The WLE7002E25 also offers open-source Ath12k driver support, ensuring seamless integration with non-Qualcomm platforms like x86 embedded boards. Despite its advanced features, the WLE7002E25 is competitively priced, making it an attractive option for migrating from WiFi 4 and WiFi 5 to WiFi 7 directly, bypassing WiFi 6 development costs. The Compex WLE7002E25 is not just a WiFi 7 mini PCIe module but an investment in the future of wireless connectivity, offering cutting-edge technology, comprehensive features, and diverse application potential.
The Compex WLE7002E25 represents more than just a WiFi 7 mini PCIe module; it’s an investment in the future. With its cutting-edge technology, comprehensive features, and diverse application potential, the Compex WLE7002E25 stands poised to rewrite the rules of wireless connectivity.
The newly developed System-in-Package (SIP) is a significant advancement for power-efficient cellular projects. It features a 64MHz Arm Cortex-M33 processor, LTE-M/NB-IoT cellular connectivity, and DECT NR+ connectivity, all integrated into a single chip. What sets this SIP apart is its remarkable one-fifth footprint reduction compared to previous solutions. This reduction in size makes it ideal for applications where space is limited but advanced cellular capabilities are required, offering a compact yet powerful solution for a range of IoT and mobile communication projects.
Nordic Semiconductor has announced a new addition to its nRF91 family, introducing the nRF9151 system-in-package (SiP). This innovative SiP integrates a system-on-chip (SoC), power management features, and a radio frequency front end (RFE) tailored for cellular connectivity. Notably, Nordic Semiconductor claims a substantial 20 percent reduction in footprint with the nRF9151, making it well-suited for wearables, sensors, and other compact projects.
Kjetil Holstad from Nordic Semiconductor highlights that a deep understanding of market demands and customer challenges drove the development of the nRF9151. The goal of the nRF9151 is to streamline the development process, reduce power consumption, and minimize footprint. This strategic addition to Nordic’s cellular IoT portfolio emphasizes its commitment to providing advanced solutions and staying at the forefront of the industry.
The nRF9151 from Nordic Semiconductor is fully compatible with its existing nRF9161 and nRF9131 parts, including the same modem firmware. Compared to the nRF9161, it introduces Power Class 5 20dBm operation alongside Power Class 3 23dBM support, along with a 20 percent reduction in footprint. This makes it ideal for power- and space-constrained designs like wearables. Additionally, it supports 3GPP Release 14 LTE-M and NB-IoT connectivity, as well as DECT NR+, a new technology for non-cellular local wireless connections in the 1.9GHz spectrum, offering low-latency high-reliability connections and support for large mesh networks.
The nRF9151 includes a single 64MHz Arm Cortex-M33 microcontroller core, 256kB of static RAM (SRAM), and 1MB of onboard flash memory outside the radio hardware. This setup provides the necessary computational power and storage capacity for various applications.
In terms of security, the chip supports Arm’s TrustZone security technology which provides a hardware-based security foundation for system software, enabling secure execution environments and protecting sensitive data. Additionally, it features CryptoCell, an embedded security system that targets power-and-area-constrained designs. CryptoCell offers cryptographic acceleration to enhance the performance of encryption and decryption tasks and includes a true random number generator (TRNG) for generating cryptographic keys and ensuring secure communication channels.
The nRF9151 is sampling now, Nordic has confirmed, with no word yet on pricing or general availability. More information is available on the Nordic website.
The WeAct STM32G4 is a compact development board that utilizes the STMicro STM32G4 Arm Cortex-M4F mixed-signal microcontroller. This microcontroller operates at a clock speed of 170 MHz and comes equipped with DSP (Digital Signal Processing) instructions, making it suitable for a wide range of applications.
Key features of the WeAct STM32G4 board include:
Microcontroller: It is based on the STM32G4 microcontroller, which is known for its mixed-signal capabilities, making it ideal for applications such as motor control, building automation, lighting control, digital power meters, and more.
Compact Size: The board is designed to be tiny, making it convenient for prototyping and integration into space-constrained projects.
High Performance: With a clock speed of 170 MHz, the STM32G4 microcontroller delivers high processing power and efficiency for real-time applications.
Mixed-Signal Capabilities: The microcontroller’s mixed-signal architecture enables it to handle analog and digital signals simultaneously, making it versatile for a wide range of tasks.
The WeAct STM32G4 development board is available in two versions, each powered by a different STM32 microcontroller. The first version features an STM32G474CEU6 “Hi-resolution line” microcontroller with 128KB RAM and 512KB flash memory, making it suitable for applications requiring higher processing power and memory capacity. On the other hand, the second version is equipped with an STM32G431CBU6 “Access Line” MCU, offering 32KB RAM and 128KB flash memory, which is more suitable for basic applications with lower memory and processing requirements. Both versions of the board come with a USB-C port for power supply and programming, three buttons for user interaction or control, and two 24-pin headers for connecting peripherals and expansion modules. These features make the WeAct STM32G4 board versatile and adaptable to a wide range of projects, from simple applications to those demanding higher performance and memory capabilities.
The WeAct STM32G4 development board is available with two microcontroller options:
STMicro STM32G431CBU6: Arm Cortex-M4F MCU @ 170 MHz with DSP instructions, 32KB RAM, and 128KB flash.
STMicro STM32G474CEU6: Arm Cortex-M4F MCU @ 170 MHz with DSP instructions, 128KB RAM, and 512KB flash; includes a high-resolution timer and complex waveform builder plus event handler (HRTIM) for digital power conversion applications.
Additional features include:
1x USB Type-C port for power and programming.
2x 24-pin headers with GPIOs, ADC, DAC, I2C, USART, LPUART, OAmp, CAN Bus, timer outputs, etc.
4-pin SWD header for debugging.
Compact size: 36.28 x 28.14 mm.
Power supply support from 3.3V to 20V DC via USB-C port.
MicrOne ME6216A33XG voltage regulator providing 3.3V output.
WeAct Studio does provide the PDF schematics, the STM32G4 datasheet, and TRM, some code samples (Blink, ADC, RTC, MSC, SPI flash), and the WeAct Studio Download Tool (Windows only) to flash the firmware via USB or UART. You’ll find those resources on GitHub for both the value line board and the hi-resolution line board, but most people will need to check the tools and documentation on the STMicro website as well.
Los Gatos-based Questwise Ventures has launched a new gadget that aims to deliver Internet of Things (IoT) connectivity without the need to power the transmitting side — by using an energy-harvesting push-button capable of driving its radio.
Questwise Ventures, based in Los Gatos, has introduced a groundbreaking gadget called the Energy-Harvesting Wireless Transmitter & Receiver. This device is designed to provide Internet of Things (IoT) connectivity without requiring a power source on the transmitting end. It achieves this by utilizing an energy-harvesting push-button that can power its radio transmission.
The key innovation lies in the specially designed button, which features an inventive spring mechanism. When the button is pressed, it efficiently captures and releases energy generated during the press. This energy is then directed to a coil, which in turn powers the transmitter, enabling seamless transmission of a single signal.
The Energy-Harvesting Wireless Transmitter & Receiver represents a revolutionary solution for IoT connectivity, allowing for energy-efficient and self-powered wireless communication.
Questwise Ventures‘ Energy-Harvesting Wireless Transmitter & Receiver builds upon a technology that has already seen use in self-powered door chimes. In this familiar scenario, the button outside the door draws the energy needed for transmission from the physical act of pressing the button, eliminating the need for a power source.
Similarly, Questwise’s device includes a transmitter that harnesses energy from the push-button mechanism. This transmitter is paired with a receiver designed for connection to a microcontroller or another powered device. When the transmitter sends a signal — which can be received from up to a couple of meters away — the receiver can then generate a momentary pulse or a latching toggle signal. This signal can be interpreted and acted upon according to the user’s needs or preferences.
“Using a self-powered transmitter in situations where the receiver needs to be powered can offer distinct advantages, particularly in scenarios where you want to minimize maintenance, increase reliability, or enhance convenience,” the company says, suggesting it could find a use for everything from doorbells to emergency signaling.
Cellular network giant Vodafone and software-defined radio specialist Lime Microsystems have announced they will be showing off a revamped version of their 5G network-in-a-box device, built around a Raspberry Pi 5 single-board computer.
Vodafone and Lime Microsystems have collaborated to develop an advanced 5G network-in-a-box solution, which is based on a Raspberry Pi 5 single-board computer. This innovative device represents a significant upgrade over previous designs, offering higher bandwidth, a smaller physical size, and reduced power consumption.
The network-in-a-box device is designed to provide a complete 5G network solution in a compact and efficient package. It leverages software-defined radio (SDR) technology, allowing for flexible and customizable network configurations. This enables faster deployment of 5G networks in various environments, including remote areas, temporary setups, and specialized applications.
By utilizing the Raspberry Pi 5 as the core computing platform, the new network-in-a-box solution benefits from its powerful processing capabilities, versatile connectivity options, and widespread developer support. This makes it easier for developers and network operators to integrate and customize the device according to their specific needs and requirements. The collaboration between Vodafone and Lime Microsystems showcases the ongoing innovation and evolution in the field of 5G networks, providing a glimpse into the future of flexible, scalable, and efficient network solutions.
“Following on from the success of last year’s unveiling of the Raspberry Pi 5G network-in-a-box at Mobile World Congress, Vodafone is introducing a new improved version at MWC24 with numerous use cases, ranging from network coverage extension to 5G network delivery via drone,” says Lime Micro’s Andrew Back.
According to Lime Micro’s Andrew Back, the new system will be fully compatible with Raspberry Pi 5, providing improved compute performance for addressing various use cases, including network coverage extension and 5G network delivery via drones. The project is a continuation of the success seen with last year’s Raspberry Pi 5G network-in-a-box unveiled at Mobile World Congress.
The new system is based on LimeNET CrowdCell, an open radio access network (open RAN) solution that utilizes Lime Micro’s LimeSDR software-defined radio technology. It serves as a small cell network base station for rapid deployment and remote reconfiguration. The latest revision integrates the Raspberry Pi 5, offering enhanced computing capabilities over previous models.
Back mentions that the Lime radio module has undergone further improvements for lower power consumption and a smaller form factor. Optimized drivers for the efficient Amarisoft 5G software stack enable the deployment of a self-contained, plug-and-play network solution for various use cases.
The new model is set to launch in the first half of the year and will be demonstrated during Mobile World Congress (MWC)2024 at Vodafone’s booth in Hall 3, Stand 3E11.