En202003 PDF
En202003 PDF
En202003 PDF
com
lektor
8-Page S
uppleme
Start-up nt:
s at
productr
o
Fast Forw nica
ard 2019
magazine
DESIGN SHARE SELL ELECTRONICS
The Elektor
Edition 2/2020 – March & April 2020
LoRa Node
Andonstar AD407 Analogue Electronics Design BASIC for the ESP32 and ESP8266 Developer’s Zone The Elektor ‘Intelekt’
Chess Computer (1981) The Elektor LoRa Node The Enviro+ RPi-HAT ESP32 Doorbell via Telegram Europe’s Most Successful
Start-up Accelerator? Hexadoku Homebrew PC for the Electronics Lab How-To: Calculate the PSCC Joy-IT DMSO2D72 Portable
3-in-1 Oscilloscope Lab, Sweet Lab Locating Wayward Wires The Meadow F7 Board My First LoRaWAN … and more
CM
MY
CY
CMY
Data Transmission
with Ease
ISSN 1757-0875 (UK / US / ROW distribution)
In last November’s issue I hinted at our laboratory working on projects using
the LoRa radio protocol. This protocol allows data to be transmitted over
www.elektor.com
wide distances in a highly energy-efficient way. In the present issue you will
www.elektormagazine.com
find two introductions to this exciting technology. The Elektor LoRa Node is a
Elektor Magazine, English edition flexible and configurable module that enables you to render your own projects
is published 6 times a year by “LoRa compatible“. As an example application - also suitable of course for full
Elektor International Media replication - we developed a remote control capable of switching an electric
78 York Street appliance over distances of several hundred meters, with feedback on the
London W1H 1DP
United Kingdom
sender. As befits LoRa, such a node can be operated autonomously in the field
Phone: (+44) (0)20 7692 8344 (using Li-Ion cells).
If you are keen to send sensor data to the Internet for access and use any-
Head Office:
Elektor International Media b.v. where in the world you should take a look at the article My First LoRaWAN.
PO Box 11 Here we describe how to connect a board to the open “The Things Network“
NL-6114-ZG Susteren
The Netherlands with minimal effort. You can either use an existing gateway in your area, or
Phone: (+31) 46 4389444 install your own inexpensive gateway which receives the sensor data over
LoRa.
Of course there are many more intriguing developments in the world of
Memberships:
Please use London address microcontrollers. One of them is Artificial Intelligence, and you can count on
E-mail: [email protected] my colleagues and me to discover some innovations at the Embedded World
www.elektor.com/memberships
exhibition, which we will report on later this year. Already available in our
Regulars
16 Interactive
Corrections & Updates || Questions & ESP32 Doorbell
Answers
29
74 Steeped in Electronics
Ordering components from Ukraine and
Russia
Features
TMS1000 Series Microcontrollers
104 Retronics: The Elektor ‘Intelekt’ Chess 46 “A Strong Supporter of Open Internet”
Computer (1981) Interview with Wienke Giezeman,
Tiny Chess 86 ported to the Intel 8088 initiator of The Things Network
36 My First LoRaWAN
With Blue Pill, LoRa Breakout Board and
The Things Network
The
Tangibles with user feedback
Projects
Bargraph Thermometer 2.0 • Visualizing Sigfox Data •
E-Scooter Dismantled • Balancing Robot with Arduino
• Basic for ESP32: Applications • Triac Meets ATmega •
FreeRTOS and ESP32: Timers • Single-Chip ARM A7 and
46
6 The Elektor LoRa Node M4 • Retronics • Small Circuits Revival • and more.
n, Versatile, long-range, 868-MHz remote
control with state feedback and STM32 Inside
Elektor Magazine edition 3/2020 covering May & June 2020 is published
21 My IoT Button: A Button for the Web around 7 May 2020. Delivery of printed copies to Elektor Gold Members is
Part 1: IoT architecture subject to transport. Contents and articles subject to change.
entry level
Convinced of the combined power of open-source hardware and Æ intermediate level
expert level
software, Elektor smashes the myth that LoRa is for pros only. This
article not only tells the story of persistence in electronics design in
the face of real challenges, but also of a 3-element LoRa Node you 4 hours approx.
can easily replicate for reliable on/off control with status feedback and
covering distances 10 to 20 times those of consumer-level WiFi and USB UART,
433-MHz ISM LPR. Arduino IDE,
lab tool set
The Elektor LoRa Node was born from the consumption, and size. the LoRaWAN Node Experimental
idea to have a compact PCB with support Read here how we did it. The story that Platform, stuffed for ‘local’ LoRa
for rechargeable as well as non-recharge- follows is kind of chronological, since with only.
able batteries, a common microcontroller this project we like to share not just the • LoRa Button. Board no. 180666-2.
like the LQFP48-cased STM32, and a type final product and a quality write-up, but Two required for this project.
RFM95 LoRa module, also, the PCB was also the real-life problems we ran into, • LoRa AC Power Switch. Board no.
to fit in an enclosure that’s easily sourced and the tools used to develop the project. 180666-1.
from one of the bigger distributors, also, We do so at the request of many readers. Together the three elements form not
for the STM32 compiler, we… STOP! only a remote control with a range of
As the enclosure will co-determine the What’s being described 10 to 20 times that of a consumer-level
space available or the energy source, we In this article we cover the three WiFi link on 2.4 GHz, but also a LoRa
need to discuss this first. The initial idea elements mentioned above: development platform with potential
was to power the device from non-re- • LoRa Node. Board no. 180516-1, for LoRaWAN. We kick off with the main
chargeable batteries. This was rejected
since Elektor wants its contribution to
battery waste to be as small as possible.
So, a rechargeable battery solution was Quick Features
sought, as well as ease of replacement Lora Node
by the user. This would result in a small, • LoRaWAN Experimental Platform board with minimum parts stuffed
serviceable, water-resistant node capable • Li-Ion battery powered
of operating not only in Elektor Labs’ • User changeable cells
comfy conditions, but also “out there in • STM32F072C8T6TR ARM Cortex-M0 MCU
the wild” and conveying real-life environ- • SPI F-RAM or Flash (optional)
mental data. Further design aspects • Crypto co-processor (optional)
heavily debated during the project devel- • GPS module (optional)
opment period were the battery lifetime • USB interface (optional)
and the sensors to accommodate on
or off the board. Clearly, we aimed to LoRa AC Switch (slave device)
have a flexible and useful platform to • Relay state feedback to Node central
explore LoRa and potentially LoRaWAN, • Switch contacts rated 5 A (1000 W at 230 VAC; (500 W at 115 VAC)
not for ‘academic’ use in the airco’d and LoRa Button (master device)
carpeted lab but ready to use in any • Low-energy design
(rough) place out there for the purpose • Optional OLED display
of remote device on/off switching. From • Integral helical coil antenna
here, the challenge is the ‘squaring of • 100–500 m range to LoRA slave
the circle’ in terms of flexibility, power
100k
3V3 R7 R6
3V3
150k 150k
3V3 C8 C9 C10 C11 C17 VSupply
3V3
4µ7 100n 100n 100n 100n
or disable other external circuitry.
1 5
R8 R9 R5 VIN OUT
C14 IC6
K5 4µ7 MAX40200
4k7
4k7
10k
24 36 48 1 9 11 EN NC K4
17 ____ GND C13
Powering the device from NiMH cells
you forfeit the GPS module you can have
the MCU control that 3.3-V rail to power
V BAT 7 2 GPS_ACTIVE_IN 3 4 1
16 RST PA1 PC13 100n VCC
NRST
VDD
VDD
GND 2
VBAT
VDDA
15 2 GND
VDDIO2
3V3 12 GPS RXD 3
14 25 PA2 GPS RX
PB12 PB12 13 GPS TXD 4
13 26 PA3 GPS TX
PB13 PB13 5
12 27 R11
PB14 PB14
10k
11 28
PB15 PB15 3V3
10 30
PA9 PA9
9 31 IC4
PA10 PA10
8 I2C_SCL STM32F072C8Tx
SCL/PB6 5
7 I2C_SDA PF0
SDA/PB7 6 3 7 8 C7
6 CAN_RX PF1 ___ _____
PB8 WP/IO2 HOLD/IO3 VCC 100n
5 CAN_TX
PB9 3V3
SPI_NOR_NCS
4 22 1 __
GND PB11 CS
3 IC3
3V3
2 SWDIO 34 AT255F081-SSHD-X
SWDIO PA13
1 SWCLK 37
SWCLK PA14 C1 C2 ANT1
Reset 4µ7 100n 868 MHz
GND
3V3 3V3
SCK
SO/IO1
SI/IO0
S1
6 2 5 4
S2 PB0 18
C12 44 19
PB1
100n BOOT0
Boot PB10 21
13
R4
10k
8 6
10 16
circuitry, in this case a DC/DC boost
stage. As the boost stage will consume
PA0
would be feasible but needs additional
RESET DIO2
VCC
15
DIO1
IC5 20 MOD1 14
PB2
DIO0
ATECC608A RFM95W 7
40 14 CS 5 DIO5
1 NC
R3 PB4 PA4 NSS 12
4k7
2 41 15 4 DIO4 ANT1
NC PB5 PA5 SCK
6 I2C_SCL 11
42 PA6 16 2 DIO3
3 SCL PB6 MISO K3
NC 5 I2C_SDA 43 PA7 17 3 9
SDA PB7 MOSI ANT 1
VUSB
7 NC 45 29 2
GND
GND
1
GND
www.elektormagazine.com
X1
3
ASH7KW RST
PB3 39 2
2 1 3 PC14 JTDO
GND OUTPUT 38 1
4 PA15 JTDI
PC15 R2 R10
VSS VSS VSS VSSA
the under-voltage lockout.
23 35 47 8
680
680
LED1 LED2
9
With our home-made antenna transmit-
runtime, and we also need to reconsider
06/02/2020 08:38
the input is below 2.97 V, it disables the
HS switch IC7 and the supply voltage is
cut as well for a period of 20 ms.
Without a large buffer capacitor, high
currents at start-up upset the UVLO and its
input voltage will drop below 2.97 V, result-
ing in a permanent loop of enabling and
disabling the LDO. Adding a ‘big’ electro-
lytic like C4 (Figure 3) made the power
path work as expected. Fit it only if you
find the two 100-µF MLCC solid caps too
expensive. Also according to the datasheet,
we don’t have a FET or diode protecting the
batteries from being charged from the VUSB
side. This job is done within the MAX40200
— if a reverse current flows the chip will
Figure 3. Board space reserved for electrolytic cut power. This is also true if the voltage
Figure 5. A special method for mounting the
capacitor C4, one of the largest parts on the LEDs is applied on the LoRa Button board. coming from VUSB exceeds that provided
board. by the system batteries.
The two LEDs on the board flag the board
status reported by the MCU on port lines
PB3 and PA15 a.k.a. ‘JTDO’ and ‘JTDI’
point appeared to be within the project Down at the component level a few on pinheader K6.
software. Undeterred though we ran problems arose, including one with a
point-to-point communication in the RAW 470-µF capacitor previously ahead of Software: the groundwork
mode offered by the LMIC library. the undervoltage lockout device, IC1. If Although system software increasingly
defines hardware functionality, to some
it’s just black magic that needs to be
‘flashed’ into a chip. A comparison of lab
time spent on software versus hardware
3V3
shows many more hours dedicated to the
K5
K4
1 17
former. How come?
VBAT
GND
2 16 As already mentioned, you can program
15
14 the board with your favourite Arduino
13
12 IDE. For this the stm32duino project [3]
11
10
did especially well in supporting a wide
R3 R4 range of STM32 MCUs and STM32 boards.
680
680
9
8
7 Formally adding the Elektor LoRa Node
6
5 Experimental Platform was the first ‘cleri-
LED1 LED2 4
3
cal’ task that needed to be done. In the
K8 R1 2 Arduino core for the STM32 we had to
1 1
LED BLUE 270
GND
2
R2
edit a few files and add the board defini-
3
SW 10k
K6 tion. After some errors and unexpected
K2 1
GND
2 2 software behaviour we got the template
1
SW 3
running and were able to start coding the
first few lines.
One thing you normally don’t care much
K7
GND
1 about is the way the MCU generates the
2
VBAT
3 clock. On the older AVR chips you had
4
FTDI_TXD
5 a crystal and that was it. On the more
FTDI_RXD
6
LCD1 recent MCUs though you have more
0.96 ’’
options to generate the MCU main clock,
K3
3V3 OLED 1 often from internal PLL / FLL sources or
GND 2
SCL 3 high-speed internal RC oscillators. We
SDA 4
5 decided to use the internal clock sources.
They’re not great for frequency stabil-
180666-022-94 KD ity, but good enough to get us going. By
allowing us to change the clock speed
during runtime, going ‘slow’ saves power
Figure 4. LoRa Button schematic. This is the ‘sending’ or ‘master’ part of the Elektor LoRa Node. The and going ‘fast’ yields higher throughput.
OLED display is optional and its use requires deep thought about energy use! The default value of 8 MHz for the core
Figure 8. You now have a ‘naked’ pin row. Figure 9. The almost completed LoRa Button board.
and peripherals keeps power consump- nal blocks, pinsockets, and pinheaders. (Figure 6), then slowly lever the plastic
tion modest yet is fast enough to process These parts are essential for the basic upward over the pins using a screw-
the LoRa stack. version of the Elektor LoRa Node. The driver blade (Figure 7). If everything
For accuracy in the RTC domain a 32.768- OLED display from the Elektor Store [3] goes well, the metal pins will be exposed
kHz oscillator was added (X1). It is (component: LCD1) is optional. (Figure 8).
optional. At the cost of a µA of current we When assembling the board, there are a The OLED display can then be inserted
gain UARTs that can be clocked from the few things that need to be considered. flat into the intended position, followed
crystal as well as an RTC that can wake The LEDs, for example, have their bodies by the pinheader sockets, the angled
up the MCU after a given timeframe. bent over and inserted in PCB holes so pinheaders, and the PCB screw termi-
their faces are at the board underside, nal blocks. This almost completes the
The LoRa Button see Figure 5. construction, less the real button of
For a simple input device to convey its For the OLED display more delicacy is in course (Figure 9).
state over radio and learn about things order because you either have to unsol-
we propose the second component in the der the entire pinheader block or bodge Interlude:
project, the ‘LoRa Button’. a bit by removing the plastic shroud- a DIY 868-MHz antenna
The schematic in Figure 4 shows that ing around the pins in the pinheader. The LoRa Button now needs an antenna
the LoRa Button has just a few resis- To remove the excess plastic, first bite for transmitting and receiving at
tors, a pair of LEDs, PCB screw termi- into the plastic part between the pins 868 MHz. A quarter-wave ‘Marconi’
R5 R4 R3
47k
reset 9 10
10
set 7 8
on
R2 R7 5 6
R8 +3V3
R6 C4 3 4 Mounting and installation. The solder-
47k
10µ 1 2
10
1k
1k
D3
16V +5V
ing of the board has few challenges.
1N4007 IC1
CNY65 Apart from the common-mode filter
and (possibly) connector K3, it’s all
180666-1 KD
plain sailing with through-hole compo-
nents only. K3’s connector pads are quite
Figure 11. Schematic of the LoRa AC Switch. This is not a ‘dumb’ device but it feeds the actual relay large and even L1 is unlikely to throw a
on/off state back to the LoRa Node. spanner in the solder works.
COMPONENT LIST
K3 employs only seven of the sixteen housing. We had to take the second row Software installation
pins on this PCB. It has two options of contacts for granted — we simply The complete software package for the
as discussed below but both assume couldn’t find a single-row socket strip Elektor LoRa Node is available at the
the LoRa Node board has a standard with a suitable height. expected place [6]. The archive file also
0.1-inch pitched, angled connector in includes a detailed installation proce-
position K5. The seven pins in positions However, the footprint on the PCB for dure which cannot be printed here due
11 through 17 (see board 180516-1) connector K3 was adjusted in such a to lack of space.
are enough, but K3 can also be a 17-pin way that normal 0.1-inch through-hole
pinheader (cut to length) over the full socket strips can also be used. They are When it comes to firmware development
length of K5. useful if you choose a different, taller for the LoRa Node board you can choose
The Würth Elektronik connector identi- housing. You can also omit K3 altogether the hard-core “C” way using either the
fied as K3 in the parts list may be and solder the LoRa Node’s right-an- STMCubeIDE, or the easy-peasy way
more difficult to obtain compared to a gled connector the to both PCBs, but with the Arduino IDE. For the latter, you
custom cut pinheader. Still, we went then you can’t easily separate the PCB need to download the Arduino IDE and
for it because of its low height allow- anymore. the STM32 Arduino Core. In the Arduino
ing the two boards, mounted at right Pushbutton S1 is mounted on the housing IDE, add this url to the Additional Boards
angles, to be fitted in the recommended and connected to the PCB with two wires. Manager:
Web Links
[1] KiCAD Like a Pro book: www.elektor.com/kicad-like-a-pro
[2] GPS module from Elektor Store: www.elektor.com/open-smart-gps-serial-gps-module-for-arduino-apm2-5-flight-control
[3] STM32duino project: https://github.com/stm32duino/Arduino_Core_STM32
[4] Velocity factor: https://en.wikipedia.org/wiki/Velocity_factor
[5] STM32CubeProgrammer: www.st.com/en/development-tools/stm32cubeprog.html
[6] Project software: www.elektormagazine.com/180666-01
[7] STM32 boards adding: https://github.com/stm32duino/wiki/wiki/Getting-Started
https://github.com/stm32duino/ toggling the Reset button. Now you can STM32duino ‘gremium’ (Figure 13 —
BoardManagerFiles/raw/master/ upload new firmware to the board. thanks guys). As a happy consequence,
STM32/package_stm_index.json you no longer need to patch anything
For your benefit as described above, and you can simply
and install the STM32 Boards following At the start of the article we said that select the Elektor LoRa Node board from
the instructions posted at [7]. the story was going to be partly chrono- the list of approved items.
Now you have the STM32 core but for logical. Since mid-December 2019, the (180666-01)
the Elektor LoRa Node you need to add Elektor LoRaWAN Node Experimental
a few things to your local filesystem. For Platform board definitions have been
Windows go to: merged into the official STM32Arduino
Git repository, after complying with
%localappdata%\Arduino15\packages\ the rather strict conditions set by the
STM32\hardware\stm32\1.7.0
Updates of and additions to projects published in ElektorLabs Magazine spiced up with tips & tricks, tech
advice, and answers to reader's questions.
Q: I recently bought the Elektor book C Programming with Arduino and started
working with it enthusiastically. For this I also bought an Atmel ICE programmer
from Microchip which works very well with Atmel Studio 7.0 (AS7), the IDE
used in the book. Now I have noticed that the Arduino Uno can no longer be
programmed by the Arduino IDE. Another Uno that I have still works well with
the Arduino IDE software. Reconnecting the board, restarting the computer
or the software and similar manipulations, doesn’t make any difference. I’ve
searched several forums on the Internet, but I can’t find a solution to this
problem. Do you have a suggestion or, even better, a solution?
A: The thing that turns a microcontroller into an Arduino-compatible micro-
controller is the Arduino bootloader. This is a small piece of software inside
the MCU’s memory capable of writing a program it received somehow (mostly
across a serial connection), to the MCU’s memory without overwriting itself.
The Arduino IDE knows about the bootloader and employs the serial port
(across USB) to program the Arduino board.
Atmel Studio is totally unaware of Arduino or the Arduino bootloader, hence
a special programming adapter is required to burn a program into the MCU’s
memory. The programming adapter, like the Atmel ICE, connects to the
MCU’s in-system programming (ISP) interface to gain direct access to the
MCU’s memory. Without special measures
it will overwrite all the memory contents
including the bootloader. This explains why
the Arduino Uno stopped working with the
Arduino IDE: the bootloader is gone!
AS7 with Atmel ICE can be used to repro-
gram the Arduino bootloader. The file
needed is [Arduino]\hardware\arduino\
avr\bootloaders\optiboot\optiboot_
atmega328.hex where [Arduino] is the
folder containing the file arduino.exe.
Once in AS7, open ‘Device Programming’
(Shift-Ctrl-P). Then, on the ‘Memories’
tab in the ‘Flash’ section, click the
‘Browse for file’ button and navigate to
the bootloader’s HEX file. Click ‘Program’
to flash the bootloader into the MCU.
There are many ways of configuring
AS7 to make it work with Arduino
without deleting the bootloader every
time you hit ‘Program’. Methods range
from installing AS7 extensions to
adapting linker settings. Search the
Internet to find the method that suits
you best.
Q: Is it possible to use the ATmega328 of an Arduino Uno board changes, the serial port speed changes too. Unfortunately, the
on the AVR Playground and vice versa? Arduino IDE does not allow the user to specify the speed of the
A: Even though the Arduino Uno and the AVR Playground are serial port for uploading sketches. When you select an Arduino
based on the same ATmega328 microcontroller, you cannot Uno board in the Arduino IDE, the IDE supposes that it runs at
simply swap them. That’s due to the way the clock oscillator is 16 MHz and requires an upload speed of 115,200 baud. If an
used on the boards. The Arduino Uno runs off a 16-MHz clock Uno doesn’t run at 16 MHz, uploading a sketch will therefore
driven by its 16-MHz crystal. By contrast, the AVR Playground fail. Similarly, an AVR Playground is expected by the IDE to
defaults to using the MCU’s internal 8-MHz RC-oscillator. run at 8 MHz with an upload speed of 57,600 baud.
You can replace the MCU on an Arduino Uno by one used on The simplicity of the Arduino IDE is appreciated by most of its
an AVR Playground. The Uno will then work exactly as an AVR users, but sometimes it can get in the way. The adventurous
Playground running at 8 MHz. However, the other way around, IDE user can try to modify the file boards.txt which contains
i.e. replacing the MCU on an AVR Playground by one taken from all the information about the boards. However, there may be
an Arduino Uno, is only possible when the AVR Playground is more than one of these files in your Arduino IDE installation.
equipped with a 16-MHz crystal (X1) and when its jumpers on The keys to change are [Board].upload.speed and [Board].
K5 are on pins 1-3 and 2-4. With these conditions satisfied, build.f_cpu (where [Board] is the name of the board). The IDE
the AVR Playground will function exactly as an Arduino Uno. has to be restarted to take any changes to this file into account.
But there is more to the story. The bootloader programmed
in the MCU of an Arduino-compatible board is tuned to the www.elektormagazine.com/labs/avr-playground-129009-2
MCU’s clock speed in order to configure the speed of the serial
port used for uploading sketches. When the clock frequency
It appears that the Maestro type A2035-H GPS module used in avoid a short circuit between the shielding of the module and
this project is no longer in production. However, Lantronix, who a via underneath it.
acquired Maestro in the summer of 2019, offers the A2235-H,
a newer albeit smaller GPS module that does fit on our PCB. www.elektormagazine.com/labs/150189-6-digit-nixie-clock
It needs two additional 2.2-kΩ pull-up resistors from the I2C 190379-B-01
pins to the 1.8-V output of the module. You may also need
some (Kapton) isolation between the PCB and the module to
In this article series, experts in the field explore aspects of analogue electronics design that should benefit
an increasingly ‘digital-only’ audience, and underpin that analogue is not black magic. In Case Study
#1, Section 1 we discussed the MEMS microphone used for the first time in an Elektor project called
Bat Detector-PLUS. In this installment we continue with design aspects of the sophisticated microphone
amplifier in the project.
This sub-installment in the Analogue Electronics Design article But back to the number of opamps needed. That’s difficult to
series provides a documented and commented evaluation of calculate because you should assume that the bandwidth per
the original microphone preamplifier used in the Bat Detec- amplifier may not track that of a first-order low-pass filter. In
torPLUS project [1], and discusses solutions to optimizing it for addition, with more amplifiers in series, the bandwidth is also
use with the MEMS microphone examined in Section 1 of this smaller than is the case with one amplifier. But for the sake of
Case Study [2]. convenience, let’s consider this response to be like a first-order
For a full appreciation of the electronics design task done it’s RC network. This certainly applies to equal sections used to
useful if not mandatory to refer to the circuit diagram of the dimension the lower limit; more sections then means a higher
microphone preamplifier mentioned a number of times, so for roll-off point for the lower limit.
convenience it is shown as the highlighted section in Figure 1. For a first-order high-pass RC filter, the transfer function is
We purposely reprint the entire schematic of the Bat Detector- expressed as:
PLUS
to explicitly show the way the preamplifier is:
jωRC / (1 + jωRC) (eq. 1)
• driven (from the microphone connected on K1);
• loaded (by IC4A); Due to the phase rotation, the actual voltage distribution is
• powered (symmetrically at ±4.5 V by IC1). then:
So you have ’the full picture’. But first, an evaluation of the ωRC / √(1 + (ωRC)2) (eq. 2)
original circuit. After all these years, the low-power opamp type
TL062 with its 200 µA of quiescent supply current per amplifier For the roll-off point this equals ½√2. That’s the well-known
is not so bad compared to many current low-power versions ‘–3 dB point’ but for sticklers we note:
almost exclusively to be found in ever smaller SMD versions.
Evidently there are now (much) better ones. The gain-band- 20log ½√2 = –3.0103
width product (GBW) is 1 MHz and that is a stumbling block
in the design, especially because substantial amplification is However, we want to know what the actual bandwidth will be
needed: here a whopping 1845 times. If we include the 400 Ω when more sections are connected in series. Instead of ½√2
of the MEMS microphone in the total gain, then using only one we take the factor x. Rearranging, we get:
opamp would yield a measly 540-Hz bandwidth. To increase the
bandwidth, more successive amplifiers, each with less amplifi- ωRC = x / √(1 – x2) (eq. 3)
cation and therefore more bandwidth are needed, here, three
pieces. But how many should there be in practice, and does For example, for a –3 dB point, enter the value ½√2 for x
this outweigh the proportionally higher power consumption and it turns out that this results in 1 exactly and with it the
than a much faster opamp with higher power consumption? well-known standard formula that applies to the frequency of
Nowadays there are “wicked-fast“ fast opamps like the OPA2889 the –3 dB roll-off point:
dual opamp with its 75-MHz GBW at 20 times amplification and
a current consumption of 0.92 mA for both amplifiers. f = 1 / (2πRC) (eq. 4)
IC5
+4V5 LP2950ACZ-5.0 +5V_PIC
IC1 C7 C9
BT1 R1 1 3
2
100n 10µ 8 8 8
47k
7 R35 TP1
6
C1 C2 C3 C4 100R IC2 IC3 IC4 0V 2
9V 3 5 C22 C23 C24
4 4 4 4
R2
220µ 100n 100n 100µ C5 C6 1 C8 C10 100n 100n 10µ
47k TL061CP
10µ 100n 100n 10µ TP2
-4V5 -4V5
-4V5
10k
3V 0W5
10n
30k
IC2, IC3, IC4 = TL062CP
+5V_PIC
-4V5
T1
P1 R20
50k
10k
C21
+5V_PIC +5V_PIC Mod. BC C20
TP3 548B
R26 -4V5
1n 10n
R21
10k
14 R32 -4V5
10k
VDD +4V5
4k7
S1 6 17
RB0 IC6 RA0 T5
6 T2 1 16 7 18 R29
R24 RB1 RA1 R34
7 2 15 8 PIC 1 +4V5
IC3B 47k RB2 RA2 BC
47k
16F1827 RA3 T4
47k
5 3 14 9 2
RB3 548B
R22 BC 4 13 10 -I/P 3 1 6
548B
RB4 RA4 BC
R23 5 12 11
RB5 RA5/MCLR/Vpp
4
548B -4V5 C26 R33
4
MODE VCC
5 LS1
100k
4k7
39k
8 9 /N1
VSS 3 8
P2 C28 K2 IN+ OUT+
5 T3
10k
10k
-4V5
Figure 1: Full circuit of the Bat DetectorPLUS with the 3-stage microphone preamplifier highlighted.
However, we want to learn the new roll-off if it’s known from First simulate...
one section. For example, if we take three sections as in the and only then design a PCB, or build a prototype on bread-
circuit, we should find the frequency where the attenuation is board or on a piece of veroboard. If only to find out if more
1 dB. For convenience, we don’t take –3.0103/3 but just –1. sections are needed or if something else needs to be adjusted.
From 20log x = –1 it follows that: Often, simulating a circuit is faster than doing the maths on it.
Simulation on the preamp showed that the final frequency range
x = 10(-1/20) (eq. 5) was 23 kHz to 58 kHz — too low! In our prototype, the upper
frequency limit was even slightly lower at about 44 kHz. This is
The attenuation to be found for the –1 dB point then works probably due to tolerance on the opamps as well as the lower
out at 0.891251. supply voltage than stated in the datasheet for the GBW. The
Entering it into equation 3, ωRC equals 1.96523. Consequently, 1-MHz GBW rating for a TL062 is a typical value; maximum
for three equal sections, the new low roll-off will be almost twice and minimum are not specified. And as already mentioned,
as high. In the case of a low-pass filter, the roll-off is then almost the response of each section is probably not purely first-order.
a factor of two lower. For n sections, the following applies:
How many sections then...
x = 10((-3/n)/20) (eq. 6) ... in case we want to use that good old TL062? It is recom-
mended not to have the desired bandwidth determined by the
In the case of the TL062, a gain of 13.3 times (i.e. 100 / 7.5) limit of the opamp, its GBW rating being subject to consid-
for the middle section, means a roll-off at 75 kHz. The additional erable spread. The equally negative effects on distortion and
4.7-pF capacitor in the feedback path further lowers the intermodulation are not much of a problem here. It is better
roll-off frequency to about 60 kHz per section and changes that this limit be substantially higher than necessary before
the frequency response to a higher order. the filtering, say a factor of 2, preferably 3, and let a capac-
Web Links
[1] Bat Dectector-PLUS article: www.elektormagazine.com/magazine/elektor-201607/29128
[2] Analogue Electronics Design (1): www.elektormagazine.com/191143-01
Ideas for new applications in the inter- The potential ment, and the same is true for using
net of things (IoT) are arising all the applications are manifold and could be cloud services. In the second article of
time. Many ideas are experimental or in the personal realm as well as the this series, we will use a bit of hardware,
are unlikely to quickly find a home in business realm. The basic idea is to use a some software and several configurations
the actual IoT. The vision of a self-re- hardware module in the form of a button to perform our first experiments, which
plenishing refrigerator will probably fail to send a signal. Where the signal is sent, will enable us to try out our own ideas
to materialise because most of us prefer what actions are associated with it and with this sort of IoT.
to do our food shopping according to which systems are involved, as well as
our current taste and in a trusted shop. whether it actually consists of a single IoT architecture
The IoT button is an interesting idea button, are initially undefined. The architecture of a modern IoT appli-
somewhere between a serious applica- First we should take this idea as an cation, regardless of its specific purpose
tion and a playful pastime. An IoT button opportunity to describe and under- or the ultimately chosen service, can be
could be used, for example, to: stand modern IoT architecture. In the represented as shown in Figure 1. The
first article of this series, we focus on individual devices on the left side of the
• start or stop something; the interactions of the components and figure can be sensors, actuators, or a
• order something; explore the functions and possibilities of combination of the two. Sensors measure
• call someone; cloud services. Very simple experiments parameters – for example, environmental
• count something. can be performed in the IoT environ- conditions such as temperature, monitor
Device
190303-005 EB
the status of systems – or send a signal • Device-based authentication: It and MQTT, for communication with the
when the state of a monitored system enables multiple login and authenti- devices.
changes. Actuators, by contrast, carry cation of devices, for example based
out responses – such as opening or on tokens or certificates. IoT cloud services
closing a radiator valve. Some IoT appli- • Secure communication: It provides The major cloud providers also offer
cation use both sensors and actuators. a secure communication channel functions that are adapted to the specific
In a certain sense, these applications through which data can be requirements of IoT. The market leaders
act as closed-loop systems operating exchanged with the IoT devices. for IoT solutions are the Windows Azure,
under the control of a remote application • Data forwarding: Some data can be Amazon Web Services, Q-loud and Oracle
system. Other IoT scenarios only involve evaluated and processed directly Cloud platforms. Choosing the right
the acquisition or monitoring of a state in the cloud, while other data must platform is not easy, and it is strongly
or status. In the case of our simple IoT be forwarded to other services for dependent on the intended purpose in
button, the only thing that is monitored further processing. In the figure each case [1]. The following criteria
is pushing the button. these services are shown as backend should be considered when choosing a
services of an existing company IT platform:
The information, which is that the state system. That would be the case with
of the button has changed, is transmit- an industrial IoT application. Simpler • Platform features: Which specific
ted over a network, which is usually the applications only forward the data features are available — such as
Internet. The signal is received by a to a program for evaluation and device management, authentication,
service on a server. The specific services visualisation. authorisation and data forwarding.
tailored to the requirements IoT appli- • Platform attributes: This includes
cations are grouped in what is called In the case of the IoT button, the the aspects of data protection,
an IoT cloud. This IoT cloud plays a key responses triggered by pressing the encryption, and the user interface
role in all of this – it acts as a server, button must be defined. For example, (dashboard).
making it the communication partner of another IoT device in the form of an • Integration: Supported programming
the IoT devices. This is called server- actuator could be driven. languages, SDKs and interfaces.
less computing because only selected Along with these tasks, the IoT cloud • Other: This includes criteria such
functions are used in this case, rather should be as communicative as possible, as community and documentation,
than a complete server. Of course, the which means it should be able to function support, costs and the price model.
services run on the server of a service with a large number of devices. It should
provider, but you don’t have to worry be flexible enough to offer programming Most IoT cloud services can be tested
about configuration, administration, interfaces for a variety of systems. These free of charge up to a certain level of
or any other secondary activities. At a interfaces should preferably be provided use. Documented examples in the form
higher load level, for example with a by easily integrated SDKs (libraries) in of source code and configuration param-
large number of calls to the service, various target languages, such as C, eters are usually available on the provid-
additional resources are provided Python and Java. Generic communica- er’s website.
automatically (horizontal scaling). This is tion via a REST interface (see the inset
also something that you normally don’t “What is REST?”) should also be possible. IoT device integration
have to worry about as a user. The core The IoT cloud should additionally support The IoT devices are connected to the
functions of the IoT cloud are: various protocols, such as HTTPS, AMQP cloud service over the public Internet.
Advertisement
Extruded enclosures
standard and heatsink
More than 5000 different enclosure styles:
hammfg.com/electronics/small-case
01256 812812
[email protected]
CentOS, Red Hat), Windows, or a The software from ThingsBoard is also The functions of this server or cloud
Raspberry Pi 3. The latter option could offered as a managed cloud solution with service include the typical tasks of an
be particularly attractive for maker and graduated fees based on the volume IoT backend, which means managing
community projects or prototyping. of use, starting at USD 10 per month. devices, collecting and visualising data,
Web Links
[1] Platforms comparison:
www.informatik-aktuell.de/betrieb/virtualisierung/iot-in-der-cloud-erkenntnisse-und-erfahrungen-eines-plattformvergleichs.html
[2] Microsoft Azure IoT Hub: https://azure.microsoft.com/en-us/services/iot-hub/
[3] RPi in Azure: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-raspberry-pi-kit-c-get-started
[4] Google IoT Core: https://cloud.google.com/iot-core/
[5] Oracle IoT cloud: www.oracle.com/internet-of-things/
[6] Amazon IoT cloud: https://aws.amazon.com/de/iot/
[7] Q-loud cloud: www.q-loud.de/
[8] ThingsBoard: https://thingsboard.io/
[9] REST: www.codecademy.com/articles/what-is-rest
[10] RESTful API: https://restfulapi.net/
processing events, and remote proce- you a much better understanding of the
dure calls for controlling devices. The relationships and makes it easier to
functions are provided via a REST API, design your own devices.
making them system and device agnos- 190303-03
tic. Graphic layers for processing incom-
ing events can be defined conveniently
using the Rule Engine (Figure 2).
Advertisement
www.driven-by-kurtzersa.com
Annex WiFi RDS (Rapid Development Suite) is a development environment originally designed to use the
BASIC programming language on inexpensive ESP8266 modules. Meanwhile an ESP32 version is also
available. Those who have so far programmed the 8-bit controllers from Atmel/Microchip with AVR-BASIC
now have access to the 32-bit performance class.
Since an ESP32 is practically an ESP8266 with more power, after BASIC variant for non-commercial, private use does not incur
the introduction of the first version for ESP8266, a function- any costs. You might be tempted to give it a try?
ally identical version was also designed for ESP32. At the time
of writing this article, it is still in beta stage, but it should be Annex BASIC
final by March. Annex WiFi RDS [1] is based on the original concept of
If you like to develop small projects with network connection, ESPbasic [2], on which the developer Francesco Ceccarella
you don’t have to struggle with the Arduino IDE and C/C++ a.k.a. “chicciocb” collaborated at the time. However, Annex is
anymore. BASIC is just simpler. In addition, the use of this not just another BASIC variant, but a completely revised suite
Features
Annex WiFi RDS comprises these functions: • Access to all I/O pins, 1-Wire, SPI, I2C, PWM, Servo,
NeoPixel, USART.
• Integrated IDE via web server, use with web browser
• Error handling, watchdog.
(optimized for Chrome and Firefox).
• TCP (HTTP GET and POST).
• BASIC interpreter with floating point (double precision) and
• UDP communication.
string variables, multidimensional arrays (float and string)
• Sending e-mails via SMTP SSL server.
and subroutines.
• AJAX, ESP-NOW, MQTT and FTP communication (client).
• Syntax highlighting with context-sensitive help.
• IMU/AHRS fusion algorithms 6 and 9 DOF (Madgwick and
• Programmable web and file server. Mahony).
• Supports OTA updates (firmware updates via WLAN). • PID controller (4 channels).
• Supports asynchronous events (interrupts, timers, web • Windows-based utility suite (Annex Toolkit) with:
access, UDP etc.). • Flasher, File Manager, Backup/Restore, HTML Converter,
• Breakpoints, immediate execution of commands, display of Serial Port Monitor, OTA Update Server, UDP Console and IP
variables, single step. Scan Tool.
that offers improved functions, higher reliability and optimized support — on the other hand, these functions also consume
use of the capabilities of the Espressif controllers. In addition, memory and therefore limit the scope of your own programs.
appropriate documentation was also created. However, the necessary means are available to communicate
with external devices on the protocol level from your own
The functional range of the IDE including the BASIC inter- BASIC subroutines. For example, it is also feasible to address
preter is amazing (see Features box). The complete software peripherals not listed here via SPI or I2C with your own code.
is in the microcontroller and runs in the web browser, which Annex WiFi RDS is only available in English. However, the
shows the integrated website. The ESP module provides either developer is very active and responds quickly to feedback in
a WLAN access point and a web server under the IP address the forum on the project website [1]. From the project website
192.168.4.1 or you connect the module to your WAN via [3] the IDE for Windows systems can be downloaded as a
(static) DHCP and note the IP address received from the ZIP archive and unzipped anywhere. The included application
router or configured there. Using the latter, the ESP can also ANNEX-toolkit.exe allows the installation of the BASIC inter-
synchronize the time and date with an Internet time server preter on ESP modules. Hints for the installation are given in
without an additional hardware clock. the Installation box.
Hardware Support
The following devices, actuators and sensors are • LCD with ST7920 with 128 × 64 pixels monochrome.
directly supported with dedicated commands and • Graphic OLED display with SSD1306 or SH1106;
functions: 128 × 64 pixels monochrome.
• DHT11, DHT21 and DHT22 temperature/humidity sensors. • Graphical LCD with ILI9341; 320 × 240 pixels in 16 bit
• DS18B20 temperature sensor. color.
• BME280 Temperature, humidity and air pressure sensor. • 7-segment display with TM1637; 4 digits.
• APDS9960 Distance, light (intensity and colour) and • 7-segment display with TM1638; 8 digits plus 8 LEDs and
gesture sensor. 8 buttons.
• BNO055 absolute orientation sensor. • 7-segment display with MAX7219; 8 digits.
• HC-SR04 ultrasonic sensor (distance measurement). • Dot-matrix display with MAX7219; 8 × 8 dots.
• DS1307 and DS3231 RTC clock module. • Color LEDs Neopixel WS2812.
• PCA9685 PWM/SERVO module. • Dot-matrix display with neopixel WS2812; 8 × 8 dots.
• LCD with HD44780 via I2C; 1/2/4 lines of • Infrared interface; bidirectional (common RC protocols).
16/20 characters each.
Further aspects
To ensure that the BASIC interpreter requires as little RAM
as possible, the BASIC script is copied from SPIFF memory
to a designated area in flash memory for execution, so that
only the list of program lines, the branch identifiers and the
list of user-defined subroutines need to be loaded into the
scarce module memory. This is slightly slower than direct
execution in RAM, but it saves RAM in favour of variables,
thus allowing relatively large programs. This is less of a
problem with ESP32, which has four times more RAM than
the ESP8266.
Another performance consideration is that an ESP controlle
rmust always be able to execute multiple activities in the
background (web server, file server, etc.). It therefore needs
sufficient free RAM for these tasks. Parallel-performed actions
inevitably affect the execution speed of its own code.
The developer says that Annex-BASIC is largely compatible with
the well-known PC variants GW-BASIC and Visual Basic and
shares many concepts, ideas and syntax with these models.
There is also compatibility with the Micromite project [5], a
Figure 2: The Annex Editor in the browser window with the example BASIC variant for PIC32 microcontrollers. The interpreter is
“Hello World”.
based on the MiniBasic project [6] and the text editor on the
EditArea project [7].
Naturally the execution speed of the interpreter cannot keep
up with that of BASIC compilers. But for the usual tasks the
interpreted BASIC is well suited on ESP controllers, suffi-
ciently fast, reliable and very easy to use thanks to its brows-
er-based nature. Again according to the developer, the BASIC
on an ESP8266 in the “1980s BASIC benchmark” is about
two to four times slower than under Micromite at 48 MHz
clock. Relative to what this IDE has to offer, this is not a
Figure 3: Output of the example “Hello World”.
bad performance.
In the article “Hourglass with ESP8266 and Annex WiFi RDS” in
the next Elektor edition there is an instructive practical example
based on this attractive IDE. The version for ESP32 has been
4 SALE @ WWW.ELEKTOR.COM equipped with some useful extensions for this SoC.
190400-03
ªESP32 solo
www.elektor.com/esp32-solo-1-wifi-bt-ble
ªESP32 DevKitC
www.elektor.com/esp32-devkitc
Web Links
[1] Annex WiFi RDS: https://sites.google.com/site/annexwifi/home
[2] ESPbasic: www.esp8266basic.com
[3] Downloads: https://sites.google.com/site/annexwifi/downloads
[4] First Steps: https://sites.google.com/site/annexwifi/home/first-steps
[5] Micromite: http://geoffg.net/micromite.html
[6] MiniBasic: https://malcolmmclean.github.io/minibasic/web/MiniBasicHome.html
[7] EditArea: www.cdolivet.com/editarea/
It happens to all of us — you’re at home and there’s a caller at the door but for some reason or other you do
not hear the doorbell buzz or ring! No problem if the person at the door has your phone number handy as he
or she will be able to get hold of you. In all other cases, Catch-22 governs, which is especially annoying when
you stayed home desperately waiting for a parcel delivery within a certain time frame. Here now comes a DIY
project to end such inconvenience.
Delivery folks and some postmen don’t note in your mailbox either advising of the Telegram for you!
usually have the patience or the time to parcel pickup location, or of a scheduled As soon as the doorbell rings, the circuit
call again, and later in the day you’ll find a alternative for the second delivery attempt. we’re about to describe sends a message
entry level
Æ intermediate level
expert level
3 hours approx.
Arduino IDE,
Figure 1: The M5Stack ESP32 Basic Core module available from the Elektor Store.
regular lab tools
2k2
10k
‘real’ doorbell in terms of volume, and a K1 8 7
separate doorbell button can be wired in 10 9
button +3V3
12 11
parallel with, or in lieu of, the optocou-
14 13
pler’s output transistor. The ringing IC1
FOD814 GPIO17 16 15
signal should be added in the Arduino 18 17
GPIO5 20 19
sketch, and the logic level at GPIO17
22 21
inverted if the button is connected like 24 23
this. However, this will not be discussed +5V 26 25
+5V
here, we will limit ourselves to a doorbell 28 27
K3
RE1 30 29
extension that’s connected to an existing opener D1
1N4148
installation! G5V-H1 5DC K2
BT1
Schematic R3
Figure 2 shows the schematic for the 10k
In the November & December 2019 issue we described an extremely luxurious soft-start circuit, designed
specifically for (big) audio amplifiers sporting countless bells and whistles and built from a myriad of
components. That it can be done in a much simpler way is demonstrated by one of the contributions below...
Idea: Elektor Labs overloaded, the inrush-current will remain so high that either
Simpler Inrush Current Limiter the fuse or the resistor will burn out. In the latter case a pungent
The schematic is drawn in Figure 1. The operation really speaks burning smell will be your reward, but a dangerous situation
for itself. Let’s assume that we want to switch on a big ampli- cannot really arise.
fier, one with a couple of giant electrolytic capacitors in the Depending on the size of the load, the values of the fuse and
power supply. You can imagine what happens the instant it is the resistor can be changed as appropriate.
switched on: for a short time, a massive current flows until
these electrolytic capacitors are charged up. And that sound
that you hear in the distance, that is the circuit breaker in your Idea: Ton Giesberts (Elektor Labs)
distribution board tripping... Automatic Gain Control (AGC)
When this circuit is added in front of the amplifier (or any load This circuit automatically adjusts the amplification of (small)
in general) the problem disappears. The 33 Ω resistor limits input signals such that the output signal remains constant over
the inrush current to a maximum of about 7 A. Because of this a wide range. The required control voltage is obtained from a
current, there is a (substantial) voltage drop across the resis- ‘cascade’ circuit.
tor, so that the 230V relay cannot close. Such an automatic gain control (AGC) can be useful for the
After a short time (a fraction of a second, of the order of detection of weak signals. One example that comes to mind is
5 to 10 cycles of the mains AC voltage), the inrush current a bat detector: the (ultrasonic) sounds from bats picked up by
has dropped to the normal operating current of the load. The a microphone is amplified and shifted into an audible range.
voltage drop across the resistor reduces ratiometrically and In the first instance it is necessary to detect any signal at all;
the relay can close. This effectively bypasses the series circuit ‘high-fidelity’ amplification is not relevant here.
of the fuse and the resistor – hey presto, we have obtained a The uncomplicated circuit is drawn in Figure 2. For the actual
normal, stable operating state. gain stage we use both halves of a dual opamp type TL072
The resistor is a ‘power’ version (50 watts in the schematic). (IC1A and IC1B). A non-inverting amplifier is built around
During the peak of the inrush current it will dissipate more IC1A; the gain G of which is:
than 50 W, but because this lasts for only a short time it can
handle that without any problem. G1 = R4 / (R2 + R3 || T1) +1
If, because of a defect, the load has a short circuit or is
Fuse C4 K2
R10
3A T 47R
1
-15dBV max.
P P R6
33R K1 1u ≈ 63xUin max.
C1 22k
2
gain ≈ 0...36dB
50 W 1 3
R5
IC1A 1 6 C5 K3
1u 1k R11
2 7 1
2
IC1B 47R
R7
OUT 230 V AC
5
R4 1u ≈ 1400xUin max.
IN 230 V AC
R1 R2
IC1=TL072 +9V
C2
100R
10k
D2 9V
R9 R8 1u C6
Re 1M 1M
8
230 V AC R3 T1 BAT85 100n
C3 D1 0 IC1
C7
4
*
N N 1u BAT85 100n
J113
9V
PE PE * see text 200004-52 -9V
200004-51 KD
Figure 1: It is hard to make this inrush-current limiter even simpler. Figure 2: An automatic gain control does not have to be extremely
complicated.
G2 = –R6 / R5
The ‘trick’ of this circuit is the two diodes D1 and D2; together
with capacitors C2 and C3 these form a cascade circuit (voltage
doubler). It is used to derive a control voltage from the output
voltage of IC1B that is used to turn T1 (a JFET) on by a variable
amount.
As you probably know (and if not, then you do now), JFETs
are great as a variable resistor; their drain-source resistance
depends on the voltage applied to the gate. In this circuit we
have connected a resistor R3 in parallel with JFET T1, to guaran- Figure 3: In practice, the AGC behaves surprisingly well.
tee a minimum gain for IC1A. There is room for experimenta-
tion: you can omit R3 altogether or play around with its value.
In the circuit as drawn in Figure 2, a type J113 is used for the tation! The very first receivers
JFET; both diodes are Schottky types. The circuit will also work [1] were really like this, only
with other types of FETs; the diodes don’t need to be Schottky we have replaced the origi-
types either, ordinary devices such as 1N4148 should also work. nal crystal detector [2] with
The construction of the circuit is not particularly critical and a diode. As a starting point,
for experimenting you can easily build it on a breadboard. for the coil you can wind
Prototyping board is perfectly appropriate for a ‘definitive’ about 85 turns of enamelled
version. (varnished) copper wire of
Here are a few more details about the circuit (if you want to 0.2 mm diameter around a
get started right away with the soldering iron then you can ferrite rod with a length of
skip this part with impunity). about 10 cm. The diode is a
The input impedance of the AGC circuit is fixed at 10 kΩ by germanium type AA119 or
R1; the low-pass corner frequency is at 16 Hz (C1). The value similar connected to a tap on
of R2 plus the minimum resistance of T1 (100 Ω at UGS = 0 V, Figure 4: This is where the history the coil. The crystal earpiece
according to the datasheet) determines maximum gain of the of radio began... has to be a high-impedance
circuit. In our prototype the minimum resistance of T1 was type of about 2000 Ω! The
actually a little lower (about 60 Ω), so that the maximum gain tuning capacitor is a type with
G of the circuit (at UGS = 0) is: a value of around 200 pF and
the antenna is connected through a small capacitor of about
G = (1 + R4 / (R2 + RDS)) × (R6 / R5) ≈ 1400 3.9 pF. For the detector capacitor (connected to the anode of
the diode), you can use a value of about 10 nF.
The speed at which the AGC reacts (‘attack’) is determined by This receiver definitely needs a ‘real’ antenna — a long-wire
R7 and is of the order of milliseconds. Don’t make R7 smaller antenna a few meters long is an absolute minimum. For reliable
than the value shown in the schematic, otherwise the distor- operation a ‘real’ earth is also a necessity. Connect this to a
tion at output K3 will increase to an unacceptable level. The water pipe or the central heating system!
recovery time of the circuit amounts to several seconds (deter- In the next instalment we will jazz this circuit up a little with
mined by R8+R9, C2 and C3). active components.
This circuit is designed to operate from a pair of 9 V batteries (200004-04)
(plus and minus 9 V) and its current consumption is around
3.5 mA.
Naturally we have subjected this circuit to a few tests in our
lab; in Figure 3 you can see that the output level (blue line)
is nearly constant across a wide input range (horizontal axis).
4 SALE @ WWW.ELEKTOR.COM
Idea: Elex Team ªElectronic Circuits For All
Direct Conversion Receiver www.elektor.com/electronic-circuits-for-all
We conclude this instalment with a treat from halcyon days:
a direct conversion receiver. Whether you believe it or not:
you can use this (without any ‘active’ components) to receive
Web Links
broadcast transmissions!
The principle is arguably simple: a variable capacitor together [1] Crystal radio:
with a coil forms a tuning circuit; the (amplitude-modulated) https://en.wikipedia.org/wiki/Crystal_radio
signal it picks up is detected by the diode and capacitor and [2] Crystal detector:
can be heard on a crystal earpiece. https://en.wikipedia.org/wiki/Crystal_detector
This extremely elementary radio receiver invites experimen-
My First LoRaWAN
With Blue Pill, LoRa Breakout Board and
The Things Network
The LoRa radio technique developed by Semtech covers data transmission combining long range
and low energy consumption. This makes LoRa particularly suitable for networked sensors having to
economize with their energy source. A popular and open network that can receive sensor data and
make it available worldwide is called The Things Network. For initial experiments, a few small boards
for little money are sufficient.
entry level
intermediate level
Æ expert level
30 minutes approx.
PC,
A LoRaWAN, as the name suggests, able on the Internet. A popular, rapidly breadboard,
utilizes LoRa radio technology to expanding LoRaWAN is “The Things jumper wires
transport data in a Wide Area Network Network”, a free, community-based
(WAN). It provides the remote station network with good coverage. To actively
for LoRa sensor nodes by receiving the use this network, all that’ s required €30 approx.
data using so-called gateways (base is a registration and of course suitable
stations) via LoRa and making it avail- hardware. There is no monthly fee or
B11 A8
17 24
R B15
1 8 10 18 23
3V3 B14
19 22
GND B13
20 21
GND B12
191065-001-94 KD
per-message billing; you just have to • “Blue Pill” STM32 Controller board cost-optimized (to put it positively), so
follow the Fair Use Policy in the network. [1] that unfortunately problems with the
This policy is intended to allow all partic- • RFM95 LoRa radio module [2] port occur again and again. Therefore
ipants to transport their data and to • USB-to-serial converter [3] the socket is used here for simple power
prevent gateway overload. • Jumperwires supplying only. To program the chip,
• Breadboard the integrated bootloader is used. New
In for a penny software can be programmed reliably via
The solution presented here is not fully For a start we use an Arduinoid Blue the serial UART interface of the board.
compliant with the LoRaWAN specifica- Pill board with a powerful STM32 ARM The few components, the LoRa module,
tions and is therefore only suitable for Cortex controller on it. The board the Blu Pill board and a USB-to-serial
experimentation. The costs are limited is available for a few euros includ- converter are connected as shown in the
to around €23 for the sensor node plus ing debugger, yet offers 64 kB Flash, schematic (Figure 1). Since the LoRa
possibly a pinboard and some jumper 16 kB RAM and a USB port. The latter module with its grid spacing of 2.00 mm
wires. The ingredient list for the LoRa should be used with caution, because is not exactly plug-in board friendly, the
sensor is quite short: the circuitry on these boards is very Elektor laboratory has developed a small
MOD1
RFM95W-868S2
13
K1 K2
1 3V3 9 1
ANT
2 2 2
MISO
Connector 1 x 8 male
Connector 1 x 8 male
3 3 11 3
MOSI DIO3
4 4 12 4
SCK DIO4
5 5 5
6 6 NSS 14 6
RESET DIO0
7 7 15 7
DIO5 DIO1
8 16 8
DIO2
GND
GND
GND
1 8 10 C1 C2
100n 10µ
10V 10V
191069-004-94 KD
Figure 3. The hardware on the plug-in board with the wired LoRa module.
/*
* Pin-Mapping for the RFM95 LoRa Module
*/
const lmic_pinmap lmic_pins = {
.nss = PA4,
Figure 10. Here the data of the new node are specified.
Figure 9. Request to register nodes in the application. Figure 11. Change the activation method and (temporarily) disable the
frame counter checks.
.rxtx = LMIC_UNUSED_PIN,
.rst = PA0,
.dio = {PB10, PB1, PB0},
};
Registration on
The Things Network
In addition to the pins, the network data for the sensor node
also needs to be set up. To obtain this data, a new node is first
created in The Things Network. At first you have to create a
user account under [6], in which the nodes are created and
managed. In order to keep track of all nodes, they can be
grouped under Applications according to their purpose. After
logging in, applications and gateways can now be managed Figure 14. The node is transmitting!
via the console, as shown in Figure 6.
If there is no usable gateway nearby, you can also run your
own and make it available to other users nearby. How to do
this will be explained later. Network Session Key and App Session Key. The data formats
To generate data suitable for the node, an application must first are a stumbling block: you should correctly specify whether the
be created. To do so, click the icon APPLICATIONS and then fields LSB or MSB must be transferred. For the Sketch, Device
the item add application (Figure 7). The window is filled in as Address and the Network Session Key are required as the LSB
in Figure 8, then the process is completed with Add applica- and the App Session Key as the MSB array. The settings can
tion. In this freshly created application no node is registered be toggled by clicking on “< >”; the settings are displayed in
yet. This is done by clicking on the register devices item in the the windows on the left (Figure 13).
window that opens (Figure 9). In the dialogue that now opens In the Sketch you enter the Network Session Key in NWKSKEY,
(Figure 10), enter the name of the node and under Device the App Session Key in APPSKEY and the Device Address in
EUI click on the crossed arrow symbol at the left, making the DEVADDR.
text “this field will be generated” appear.
By pressing Register you send these specifications to The // LoRaWAN NwkSKey, network session key
Things Network, which then registers the new node and enters static const PROGMEM u1_t NWKSKEY[16] = { Network
the access data. Under Settings (Figure 11) the “Activation Session Key };
Method” is changed from OTAA to ABP and for the first experi-
ments the checkmark at Frame Counter Checks is deactivated.
// LoRaWAN AppSKey, application session key
In “real” productive operation this setting is risky; the check
static const u1_t PROGMEM APPSKEY[16] = { App Session
mark should be reset immediately at the first opportunity after
Key };
the first successful steps!
After the settings have been saved, click on the Overview tab to
get all data necessary for the node at a glance (Figure 12). We // LoRaWAN end-device address (DevAddr)
are not interested in the Device EUI, which roughly corresponds // See http://thethingsnetwork.org/wiki/AddressSpace
to a MAC address [5], nor in the Application EUI assigned by // The library converts the address to network byte
TTN, which is required for the OTAA procedure. Only the content order as needed.
of the following three fields is relevant for us: Device Address, static const u4_t DEVADDR = 0xDEVICE_ADDRESS;
…
In this example the node is set to 868.1 MHz and SF 7. These
values are also used in our gateway. Gateway and node are
now supplied with software, so that the test can start. After
a little while new messages should arrive in the TTN console
from our node (Figure 20).
Figure 20: The data from the node is arriving!
Conclusion and outlook
For the first steps with LoRaWAN, a node at around 25 euros
and a gateway based on a Raspberry Pi and an RFFM95 module
4 SALE @ WWW.ELEKTOR.COM
are all you need. However, this solution is very limited and not
suitable for productive operation. If you are eager to do more ªRFM95 LoRa Module
www.elektor.com/18715
with LoRaWAN after experimenting, you should exchange the
gateway for a fully LoRaWAN-compatible commercial device ªLoRa RFM95 Breakout Board
www.elektor.com/191069-1
which is now available for under 120 euros [7]. With such a
gateway the full potential of the LoRaWAN can be used, includ- ªCH430 USB/Serial Converter
ing messaging from gateway to node. www.elektor.com/19151
One point we have not yet considered is the collection and ªDragino LPS8
processing of data from The Things Network. This will be the www.elektor.com/dragino-lps8-indoor-lorawan-gateway
subject of another article in one of the upcoming issues of ªDragino LG02
Elektor magazine. www.elektor.com/dragino-lg02-dual-channels-lora-iot-gateway
191065-03 ªDragino HAT for RPi
www.elektor.com/dragino-lora-gps-hat-for-raspberry-pi-868-mhz
Web Links
[1] Blue Pill controller board: www.amazon.com/UNIVERSAL-SOLDER-SIMPLY-SMARTER-ELECTRONICS-STM32F103C8T6/dp/
B07S2VF1PZ/ref=sr_1_2?keywords=STM32+Blue+Pill&qid=1579529166&sr=8-2
[2] RFM95 LoRa Module: www.elektor.com/rfm95-ultra-lora-transceiver-module-868-915-mhz
[3] CH340 USB-to-Serial Converter (3.3 V): www.elektor.com/19151
[4] Board support: https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json
[5] LoRaWAN Adressing and Activation: https://www.thethingsnetwork.org/docs/lorawan/addressing.html
[6] TTN account creation: https://account.thethingsnetwork.org/register
[7] LPS8 Gateway: www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html
[8] Gateway HAT Software: https://github.com/hallard/single_chan_pkt_fwd
[9] Gateway HAT: www.elektor.com/dragino-lora-gps-hat-for-raspberry-pi-868-mhz
[10] Project support page: www.elektormagazine.com/191065-03
“A Strong Supporter of
Open Internet”
Interview with Wienke Giezeman,
Initiator of The Things Network
Questions by Mathias Claußen and Jens Nickel
IoT cannot exist without low-energy, wireless transmission of sensor data. LoRaWAN is a protocol that
enables flexible communication between sensor/actuator nodes and gateways acting as base stations and
interfaces to the Internet. However, potential users have to build their own network infrastructure, which can
be a burden for educational and private users. Existing networks are often closed or otherwise inaccessible.
The Things Network is a solution to overcome these obstacles. Across the globe, volunteers install gateways
which are open to other users keen to transfer data, while commercial participants can also open their
gateways to the network. The Things Network also hosts LoRaWAN network servers and offers affordable
hardware and a lot of support.
Elektor: Do you also plan to support Class-B devices? Elektor: What do you see as the future of LoRaWAN?
Wienke: Yes, we have that currently in our latest software. Wienke: The future of LoRaWAN depends on how the WAN
part works out. As I said, there are plenty of last-mile IoT solu-
Elektor: Do you also roam messages to other networks tions that can bring your data from A to B. There is only one
servers and the other way round? that, through an open standard, allows enterprises to build
Wienke: Yes, for that we launched the concept of the Packet devices, networks and applications that are all interoperable
Broker ( www.packetbroker.org). As I said, the beauty of and extend their addressable market.
LoRaWAN is that you can build a real Internet of things of Commercially, the fact that LoRaWAN is solving problems
interconnected gateways and networks. With the Packet Broker across all industries, farming, real estate, metering, smart
we try to simplify exchanging traffic among networks. cities, logistics, maritime, etc. means that LoRaWAN is here
to stay. The strength of the ecosystem will determine how fast
Elektor: Are there partnerships with companies? it will scale up.
Wienke: If you look on www.thethingsnetwork.org and click Thats’ exactly why the theme of our upcoming LoRaWAN con-
on Market Place you will see all our partners. The strength of ference, www.thethingsconference.com, is interoperability. We
the LoRaWAN ecosystem is that there are many. show how partners and even competitors are working together
to push for a global interoperable LoRaWAN network.
Elektor: Can you say something about the partnership 191193-01
with Dutch KPN?
Wienke: KPN is an incumbent telco setting up LoRaWAN gate-
ways across The Netherlands and charges around 30 to 40 euros
per year per device to have it connected.
By Tam Hanna
During his time as VP at Xamarin, Bryan Costanich was busy download the two-file operating system. Next you need the
porting the .NET environment to Android and iOS. He went on ‘dfu’ utils, which you will find at [2].
to purchase the rights to intellectual property from a company A look at the board documentation shows that the boot loader is
run by Chris Walker and set up Wilderness Labs. The latest started by pressing the boot button. Press and hold the button
product from them is the Meadow F7 process computer, which while you connect the board to your Windows workstation with
can be seen assembled in the title picture. The Meadow F7 a micro USB cable. We use the list command to determine the
aims to provide .NET developers with ‘first-class’ access to serial number of the process computer:
the IoT ecosystem.
C:\dfu-util-0.9-win64>dfu-util --list
Architecturally, this is, by the way, an analogy of what has been dfu-util 0.9
achieved so far by combining Raspberry Pi or Orange Pi and a
real-time processor core. An STM32F777 clocked at 216 MHz . . .
is responsible for executing .NET runtime environment while
Cannot open DFU device 0483:df11
an ESP32 module takes care of Wi-Fi connectivity.
Oops — that works fine under older versions of Windows but
Let’s get going fails under Windows 10 because of the error described in [3].
In its delivered state the Meadow F7 board has an operating However, it can be fixed without difficulty: simply follow the
system that is either out of date or just not installed at all. instructions to reset the driver. After that is done, the serial
Installation takes place via the STM boot loader. Visit [1] and number can be determined by trying again with:
we need in the next step to load the kernel and runtime. You will
C:\dfu-util-0.9-win64>dfu-util --list need to update the command lines shown here to use the details
dfu-util 0.9 of your own device. Make sure that you type the hexadecimal
. . . addresses correctly and place the two files Meadow.OS_Kernel.
bin and Meadow.OS_Runtime.bin in the correct folder:
Found DFU: [0483:df11] ver=2200, devnum=4,
cfg=1, intf=0, path="5-3", alt=3, name="@
C:\dfu-util-0.9-win64> dfu-util -a 0 -S
Device Feature/0xFFFF0000/01*004 e",
346B38733536 -D Meadow.OS_Kernel.bin -s 0x08000000
serial="346B38733536"
dfu-util 0.9
C:\dfu-util-0.9-win64> dfu-util -a 0 -S
A successfully recognized Meadow board will appear not just
346B38733536 -D Meadow.OS_Runtime.bin -s
once but will in fact have four end points in the Windows device
0x08040000
list. For us, however only the serial number is important, which
dfu-util 0.9
public MeadowApp() Figure 3: That window needs to be closed, use the enter key.
{
ConfigurePorts();
BlinkLeds();
}
prototypes. The system consisted of a plug-and-play proces- have a choice between the outdated NetDuino or the Meadow
sor-based mainboard and a range of sensor and IO modules F7 board. Applications compatible with the IO performance
which plugged into it using ribbon cables. offered by the board will find a very extensive driver library to
The same engineering spirit lives on at Wilderness Labs. The facilitate the speedy assembly and testing of prototypes — the
scope of delivery of the ‘Meadow F7 Micro Development Kit future of the gadget looks bright!
w/Hack Kit Pro’ (Figure 7), available for pre-order on their 191190-02
website [6], includes a Meadow F7 board, two prototyping plug
boards, a very high quality 4 x 20 alphanumeric LCD, a whole
bunch of active and passive components, actuators and sensors
as well as a development breadboard made from wood (MDF).
On top of that there is a very extensive driver library. At the
time of going to print, the driver for the (high-quality) colour 4 SALE @ WWW.ELEKTOR.COM
LCD is not ready for release but the kit itself should be avail- ª Book: Visual Basic for Electronics Engineers
able in March 2020. Check out the range of sensors listed in www.elektor.com/
the Wilderness Labs hardware list [4]. visual-basic-for-electronics-engineering-applications-e-book
An old English proverb says beggars can’t be choosers. Those
who want to use .NET in an embedded application currently only
Web Links
[1] Meadow F7: http://beta-developer.wildernesslabs.co/Meadow/Getting_Started/Deploying_Meadow/
[2] dfu-utils: http://dfu-util.sourceforge.net/releases/dfu-util-0.9-win64.zip
[3] A Windows bug:
www.hanselman.com/blog/HowToFixDfuutilSTMWinUSBZadigBootloadersAndOtherFirmwareFlashingIssuesOnWindows.aspx
[4] Peripherals: http://developer.wildernesslabs.co/Meadow/Meadow.Foundation/Peripherals/
[5] Character Display:
http://beta-developer.wildernesslabs.co/docs/api/Meadow.Foundation/Meadow.Foundation.Displays.Lcd.CharacterDisplay.html
[6] Meadow Kit /w Hack:
https://store.wildernesslabs.co/collections/frontpage/products/meadow-f7-micro-development-board-w-hack-kit-pro
Within the ESP32 implementation of the FreeRTOS sched- to become unlocked (we will discuss the mutex concept later
uler, tasks are executed according to their priority. Priority in this series). A task that is ready to execute is inserted into
is assigned when the task is created but can be altered later. the scheduler’s ready list according to its priority and is exe-
Higher-numbered tasks are considered first for the configured cuted when its turn comes. Because it is a priority sorted list,
CPU, while zero-priority tasks are considered last. Execution the highest-priority tasks are considered first.
priority may be a familiar concept but the FreeRTOS real-time Tasks with equal priorities are scheduled using a Round-Robin
scheduler works differently than what you might be used to approach. Three ’ready’ tasks at priority-9 (a, b and c) will
with Linux or Windows. This article will explore the difference take turns:
using a demonstration. • task9a
The ESP32 implementation includes a maximum of 25 priority • task9b
levels, ranging from zero to 24. By default, the Arduino setup() • task9c
and loop() functions run at priority level 1 (recall that these • task9a
functions are from the same main task [1]). • task9b
• etc.
Vive la différence
How different can task scheduling be? On a Linux system for Unless they become blocked, this continues forever. Only a high-
example, priority affects the relative urgency of the process er-priority task can pre-empt them. For example, the high-pri-
or thread. Even a low priority process gets some CPU time — ority ESP32 task named idc1 (for CPU 1), may pre-empt your
normally taking longer to run. But the process does always priority-9 tasks to take care of some business. Once the idc1
execute eventually. This is where the difference lies. task becomes not ready again, the priority-9 tasks resume
In a real-time system like FreeRTOS, the scheduler does not where they left off.
guarantee that lower-priority tasks will ever get executed. For
example, if you have priority-9 tasks that are always ready to Here are some examples of how a FreeRTOS task becomes
execute, then no priority-8 or lower task will get scheduled on not ready:
that same CPU. In other words, the priority-9 tasks will starve • sleep or delay for a time (waiting for a timer);
all lower priority tasks. • waiting for a mutex or semaphore;
• waiting to receive a message from an empty queue;
Ready to execute • waiting to insert a message into a full queue;
It is important to understand what ’ready’ means to FreeRTOS. • waiting for a FreeRTOS event or event group;
A task is ready when it is not blocked waiting for something, • waiting for an I/O to complete;
whether it is an event, an entry pushed into a queue or a mutex • suspended (either by the task itself, or by another task).
Demonstration 1 Figure 2: When tasks are executed, the demo worms move.
Using the downloaded code, simply compile, flash and run the
application. Your OLED should immediately display white, with
three black inch worms drawn (see Figure 2).
The configuration (again) for this experiment is:
They will march across the screen at the same pace (or nearly
#define WORM1_TASK_PRIORITY 9 so). When the demonstration is allowed to run long enough,
#define WORM2_TASK_PRIORITY 8 some worms might get ahead of the others by a little bit.
#define WORM3_TASK_PRIORITY 7
#define MAIN_TASK_PRIORITY 10 Demonstration 3
In this experiment, modify the configuration to give the three
This configuration will cause the top worm to wiggle its way worms all the same priority (as in the last demonstration) and
across the top, while the lower two remain still. The question set the main display task to that same priority. I’ll use prior-
is: why don’t the middle and bottom worms move? ity-9 for all of these tasks:
_-_ #define WORM1_TASK_PRIORITY 9
_-_ #define WORM2_TASK_PRIORITY 9
_-_ #define WORM3_TASK_PRIORITY 9
#define MAIN_TASK_PRIORITY 9
Recall that we left the main task at priority 10. So it enjoys the
highest priority in our application set of tasks. The first worm, After recompiling, reflashing and running the code, what did
which displays on the top line of the OLED was able to progress you observe? Was there a difference? Why are they progress-
because it was the only CPU consuming task able to run. This ing at different rates?
priority-9 task is able to execute because the priority-10 display
task performs I/O to the OLED and then waits for messages to _-_
arrive in the message queue (becomes blocked). When the display _-_
task is blocked, other lower priority tasks are able to schedule. _-_
The priority-8 and -7 tasks (for middle and bottom worms)
are starved of CPU and never get executed because the prior- When I run this, the bottom worm seems to get the most CPU
ity-9 task completely monopolizes the CPU. This is the nature (i.e. wiggles the fastest). The top worm moves the slowest.
of real-time scheduling within FreeRTOS. Unlike Linux or Win- Again, the Espressif noted limitation of round-robin unfair-
dows, lower priority tasks are not given a chance to execute. ness is to blame for this. Ideally, the display task should only
steal a little CPU while drawing the inch worm. Otherwise, the
Demonstration 2 remaining CPU time should be equally shared among the three
For the second experiment, modify the configuration to give other tasks driving the worms.
the three worms all the same priority but leave the main dis- Yet we see that the scheduling is unbalanced. Both CPUs are
play task at priority 10. Set all three to the same priority of 9, responding to timer and other interrupts. The flawed sched-
8 or 7. I’ll use 9 here: uler code is responsible for disrupting the fairness of Round-
Robin scheduling.
#define WORM1_TASK_PRIORITY 9
#define WORM2_TASK_PRIORITY 9 Demonstration 4
#define WORM3_TASK_PRIORITY 9 Each demonstration so far has had each worm task consume
#define MAIN_TASK_PRIORITY 10 as much CPU time as it can muster. How does the behaviour
change if we introduce a small delay (to block) within the loop?
When you recompile and reflash the ESP32, what did you Reset the configuration so that the main display task has pri-
observe? ority 10, and each of the worm tasks have priorities 9, 8 and
7 respectively:
_-_
_-_ #define WORM1_TASK_PRIORITY 9
_-_ #define WORM2_TASK_PRIORITY 8
Now each worm task will consume CPU, try to queue up a worm Summary
and then block for 10 milliseconds. Compile, flash and run this What can we conclude from these experiments? What may
example. What did you observe? have seemed like a simple concept of priority was not so sim-
The top worm will move the fastest and the bottom worm will ple after all. The consequence is that if your task priorities are
move the slowest. The top worm with priority-9 gets first crack not well planned, there can be surprises — some tasks can
at the CPU due to its high priority (while the display task is become CPU starved. We haven’t discussed watchdog timers
blocked). When the worm task is blocked in the vTaskDelay(10) yet but this impacts them also. For example if the watchdog
call, the next lower priority task (the middle worm) gets to timer triggers in CPU 0, then your ESP32 will reset and restart.
consume some CPU and it eventually calls vTaskDelay(10). For the dual-core ESP32, there is the additional issue that
This in turn allows the even lower, priority-7 task to get some Round-Robin scheduling at the same priority level can lead
cycles. This has a trickle down effect, dividing up CPU from to unequal execution time. This can be problematic in some
highest to lowest levels. applications and yet be problem free in others. The problem
But note that the priority-8 and -7 tasks do get pre-empted depends upon the nature of your ’system’.
whenever the higher priority-9 task becomes ready again. This For many applications, you can simply create tasks to run at
is why the top worm moves the fastest. The middle worm can priority 1. This is the priority configured for the Arduino setup()
sometimes pre-empt the priority-7 task, so it tends to be faster and loop() task. Higher-priority tasks can safely be utilized if
than the bottom worm. they block on a queue, semaphore or some other event. When
a task blocks or is suspended, the CPU is shared with other
More experiments equal or lower priority tasks. An application with properly con-
What happens if you make the vTaskDelay() time much longer figured task priorities will operate like a well oiled machine.
than 10 milliseconds? Try to imagine the answer and then run (191195-01)
it. Why did you get that result? What happens if you reduce
the delay time to a 1-millisecond delay? These explorations
are left for the reader.
Priority configuration
While we have not yet covered interrupt use within the ESP32,
be aware of the header file named FreeRTOSConfig.h, which
@ WWW.ELEKTOR.COM
configures priorities for the platform, found here:
ªLolin ESP32 OLED Display Module
www.elektor.com/lolin-esp32-oled-module-with-wifi
$IDF_PATH/components/freertos/include/freertos/
FreeRTOSConfig.h
Web Links
[1] Practical ESP32 Multitasking, Elektor Magazine 1/2020: www.elektormagazine.com/190182-01
[2] Symmetric Multiprocessing: https://thc420.xyz/esp-idf/file/docs/en/api-guides/freertos-smp.rst.html
[3] Project source code: https://github.com/ve3wwg/esp32_freertos/blob/master/priority-worms1/priority-worms1.ino
lektor
In addition to simple components, such
as LEDs and resistors, you also receive
complex and sophisticated modules that
employ the latest technology, such as:
• A humidity sensor
• A multicolor LED
• A large LED matrix with 64 points of light
• A 4-character 7-segment LED display
• An infrared remote controller unit
• A complete LCD module
• A servo
• A stepper motor and controller module
• A complete RFID reader module and
security tag
OW6
N 8,4
€5
rs
be
mem
r
fo
Learn more:
www.elektor.com/elektor-arduino-home-automation-bundle
Sigfox
and the IoT (3)
First steps on the network
With the MKR FOX 1200 board now registered to the Sigfox network, nothing stands in the way of trying out
our first communication experiments. We will make our Sigfox device transmit the customary ‘Hello World!’
greeting message using the cloud.
First of all let us take a look at how our station appears in the • Device type: It is possible to sort and arrange stations
Sigfox cloud. To do this log in to the Sigfox backend [1] as usual within a group which have identical type (that is, stations
with your e-mail address and password: this will take you to having the same structure and the same functions). This
the homepage of the Sigfox portal (see Figure 1). Now click allows you to collate temperature measurement stations,
on the ‘Device’ tab, which will give
you an overview of the Sigfox devices
you have registered and possibly
activated (see Figure 2). In this case
the MKR FOX 1200 should be the only
station shown. The columns of the list
have the following meanings.
• Group: The group name is
automatically assigned by Sigfox
on the basis of the information
you have provided to it, and it
is not possible to change it. The
group contains all of your Sigfox
devices. By clicking on the group
name you will see further infor-
mation about the group (which
also cannot be changed here). Figure 1: The Sigfox portal.
Listing 3. Transmitting fixed numeric values. ting raw numerical values within a
// definition of four fixed numeric values payload. First you must decide what
unsigned char AIN_1 = 0x1f ; // first value, 1 byte long data types will need to be carried in
unsigned int pressure = 0x12345678; // second value, 4 bytes long the twelve-byte payload: each data
float temp = 1233.56; // third value, 4 bytes long type comprises a different number
unsigned char AIN_2 = 0x55; // fourth value, 1 byte long of bytes and therefore occupies
a different number of bytes in the
// enable Sigfox modem and check for errors payload. The most important data
if (!SigFox.begin()) // error occurred? types are listed in Table 1. One
{ possible organization of values in a
Serial.println("Error initializing Sigfox module. RESET to continue"); payload is shown in Table 2: in this
while (1); // after error, drop into infinite loop example a total of ten out of an avail-
} able twelve payload bytes are used.
else The second step is to define a
{ dedicated data type to encapsulate
Serial.println("Sigfox modem OK\n"); the above collection of data, making
} it easy to assemble the desired data
into the payload format in one place.
// enable debug LED and disable power-saving modes A suitable definition for our example
SigFox.debug(); is shown in Listing 2. Fully under-
standing the construct used here
// deal with all pending interrupts
requires an in-depth knowledge of
SigFox.status();
C or C++; we will give a simplified
delay(1);
explanation.
The line struct ……… sigfox_message
// now we write the current values that are to be transmitted into
and the lines that follow enclosed
// the SF_send structure variable
within curly brackets together
// this process assembles the payload contents
describe what is called a ‘structure’
SF_send.value_1 = AIN_1; // unsigned char value: 1 byte
of type sigfox_message . A struc-
SF_send.value_2 = pressure; // unsigned int value: 4 bytes
ture like this is nothing more than a
SF_send.value_3 = temp; // float value: 4 bytes collection of pieces of data brought
SF_send.value_4 = AIN_2; // unsigned char value: 1 byte together under a single overarching
Continued on the next page name. It is therefore rather like an
array, except that an array consists
Advertisement
performance
the soldering tool and station.
Patented tip and grip design
Precise control, ergonomic grip
Fast and hassle-free tip changing without needing
The boomerang handle design allows for precise
any tool.
handling while providing an ergonomic and secure grip.
World‘s first:
MR-NH
Discover a new dimension
to smt production – the new
solder paste MR-NH. Even
for applications with an
area ratio smaller than 0.6.
For nearly all stencils.
A performance which
convinces everyone.
Because it is virtually impossible to work on the Raspberry Pi, or, for that matter, on Linux in general, without
ever needing to enter commands in a terminal, here is a list of frequently used Bash commands.
A terminal is that black window in which you can only type all about you can add ‘--help’ (two dashes) to it, e.g.:
text. Sometimes it goes by the name Command Line Interface rm --help
or CLI. The commands you enter here are executed by the In the following ‘[path]’ refers to a relative or absolute path.
command interpreter ominously called Bash. An absolute path starts with ‘/’, e.g. ‘/home/pi’.
191250-01
There are many commands and most commands accept all sorts
of parameters and arguments. To find out what a command is
By almost every metric, HighTechXL is not just a success but an tem. Eindhoven has produced foundational semiconductor
economic-development engine for Eindhoven and the Brabant companies such as ASML, the behind-the-scenes semiconductor
region: at least 2,000 new jobs created in the Netherlands company making the essential machinery powering industry
and other countries; more than 60 successful companies up giants such as Intel.
and running in next-gen tech industries and new technologies But the original effort, which dates back to 2013, has an
taken to market. unequalled record of success.
After only five years, HighTechXL [1] is one exit away from Yes, Y Combinator and 500 Startups have birthed bigger names
becoming Europe’s highest-profile venture-building effort. And and billion-dollar exits. But both have been operating longer...
the 2018 pivot to deep-tech makes a breakout even more likely. and both have far higher failure rates: about 90 percent.
In 2018, HighTechXL CEO and founder, Guus Frericks announced In six years, more than 60 percent of HighTechXL companies
the high-tech accelerator would transition to a deep-tech have survived. Seventeen sell their products globally, are in
venture building effort, more relevant to Eindhoven’s ecosys- the ’Star Portfolio’, and on course for ’10×’ returns.
Successful start-ups
About HighTechXL • Accerion [2], based in Venlo, The Netherlands, makes
HighTechXL is a deep-tech venture-building company positioning technology for mobile robots and autono-
supported by the Eindhoven Startup Alliance members, mous guided vehicles. Accerion sells their products in
including ASML, Philips, NTS-Group, Eindhoven University of several global markets and recently received a signifi-
Technology (TU/e), Brabantse Ontwikkelings Maatschappij cant A Round [3] backed by Phoenix Contact Innovation
(BOM), High Tech Campus, EY, HVG Law and ABN AMRO. Ventures, based in Germany, in syndication with the
HighTechXL, through a partnership with the Dutch research economic development agency for the Limburg Province
center Nikhef (National Institute for Subatomic Physics), has (LIOF).
access to some of the most advanced technology in the world, • Amber Mobility [4], based in Eindhoven, has created
including agreements to take it to market. To build teams a ride-sharing network of electric vehicles, with plans
around these technologies from CERN and other research to introduce autonomous vehicles in the future. Amber
institutions, HighTechXL holds two FasTrackathons each year, has raised millions in capital including from Pala Group
attracting talents ranging from engineers and physicists to BV since its initial €500,000 from a friends-and-family
business managers and marketers. At the FasTrackathons, the round, expanding beyond Eindhoven with hubs all over
new technologies are presented to participants who then join The Netherlands.
teams in their areas of expertise and interest. • Bambi Medical [5], based in Eindhoven, has developed
HighTechXL takes an equity stake in each of the teams that a wireless vital signs monitoring device for premature
comes out of the nine-month venture-building program, babies. Bambi has raised at least 4 million euros from
then continues to work closely with them in a scale-up private investors and 2.4 million euros from Horizon2020.
program. • byFlow [6] makes 3D food printers for the restaurant
industry. The Eindhoven-based company received inter-
national media coverage including flashes on BBC, CBS particle physics lab.
Morning and on industry and tech websites. Frericks: “CERN replied: ’Well, if there’s a region in Europe where
• LifeSense Group [7] makes sensors and health-tech you can make a difference in certain areas, it’s Eindhoven.’
wearables used to detect urine loss in women, men, and There was a high level of trust we could do something spectac-
children. The company has raised several millions in ular with those CERN technologies.”
investment capital using operations in Asia and plans to The pivot involved moving from accelerating teams building
expand into the U.S. market. high-tech products to sourcing technology from research insti-
• Manus VR [8], based in Geldrop, The Netherlands, has tutions, then finding the right people for teams to take the
developed virtual-reality gloves for VR training, and built tech to market.
an environment for testing. Clients include NASA and The new HighTechXL “is powered by the local ecosystem,”
several gaming companies. Based in Eindhoven, Manus Frericks said. The previous five years accelerating high-tech
raised a 2-million euro A round from Eindhoven Venture startups helped develop “very close relationships in the region”
Fund II in 2019. with everyone in the ecosystem.
• Sustonable [9], based in Amsterdam, developed a process Having the trust of the major players — entrepreneurs, corpo-
for combining recycled PET waste from plastics with quartz rate leaders and tech talent — meant it was easier to mobilize
to produce the world’s first circular composite stone for the collective technical might of the Brabant region for the new
kitchen surfaces and other uses. The company has raised HighTechXL approach.
several million euros in later-stage capital, including Here’s how it works.
2.2 million euros from Horizon2020. The company has
plans to expand in other global markets. Engineers, physicists and other professionals
• ULU [10] develops IoT technology for vehicles, includ- invited
ing Cartracker for tracking delivery fleet data. The First, HighTechXL sources technologies from research institu-
company has more than 15,000 subscribers and offices in tions such as CERN [11], TNO and Philips.
Amsterdam, Ljubljana, London and Shenzen. Then, they hold a FasTrackathon — a reverse-hackathon —
where technologies and potential application areas are up for
Alliance with CERN grabs. HighTechXL promotes FasTrackathon, inviting engineers,
In July 2018, HighTechXL pivoted from a high-tech startup physicists and professionals such as business development
accelerator with a successful track record to a deep-tech experts, finance managers and entrepreneurs to join the teams.
venture-building effort. Individuals and teams attend a half-day idea session, build a
Guus Frericks: “We said, what would happen if we only worked business model canvas and pitch their business ideas at the
with propositions where we as a region can make a difference? end of the day.
Do we start with high tech start-ups or take it one step further HighTechXL recruits additional team members interested in taking
and take ground-breaking technology as a starting point?” the technology to market and holds pre-program sessions to
That’s when HighTechXL made an historic alliance with CERN further strengthen the teams. They go through a selection process,
to take to market the latest tech from the world’s largest then teams begin the nine-month venture building program.
First deep-tech cohort • Aircision [15] uses laser technology to build the most
• Incooling [12], who are developing new technology for reliable link in the 5G communications matrix and is in
cooling CPUs and GPUs in data centres, are preparing for talks with telecom industry leaders to build partnerships.
CES 2020 [13] in Las Vegas. Incooling team members Aircision was selected as a Deep Tech Pioneer at Hello
travelled to Taiwan several times as well as across Europe Tomorrow, taking place in Paris in March 2020.
attending tech and startup events in 2019.
Incooling team members, including Helena Samodurova, The next group of deep-tech ventures have been in place
have won pitch competitions in Amsterdam, Berlin and since April 2019, with several promising startups built around
Taipei. The team has raised more than 600,000 euros technology from TNO and CERN.
from private investors. "The success of the first cohort proves Eindhoven is all about
• Dynaxion [14] team members have been to the USA deep tech", Frericks said. “But it’s the quality of putting
twice as finalists of the Opioid Detection Challenge, the network and the local region in motion behind these
funded by the Department of Homeland Security, U.S. propositions.”
Postal Inspection Service and U.S. Customs and Border Deep-tech venture building is the right idea in the right place
Protection. They also received $100,000 as part of this at the right time.
effort. “And of course, a bit of luck.”
Dynaxion uses CERN’s small particle accelerator to scan (191194-01)
packages and freight at the atomic level, helping to stop
the shipment of drugs and other illicit materials.
HighTechXL team members introduce themselves to the new cohort of deep-tech ventures as they embark on the nine-month venture building program.
Nowadays you don’t need to start from scratch with a handful the web and appropriate (Python) libraries are available to
of discrete components to build a unit for recording important handle sensor interfacing.
environmental variables. Just grab a suitable µC board, add
some sort of shield or expansion board with all the appropri- The Enviro+
ate sensors and the only brain work left to do is to write the As you can see the Enviro+ [1], is a small HAT in the same
code to handle measurement data coming in from the sensors. form factor as the Raspberry Pi Zero W [2] and has all the
If you want extra features, such as an on-board WiFi link, sensors needed for the job. It uses the standard 40-pin GPIO
etc., then a good extension header, which means it can be used with almost all
choice for the control- of the RPi models.
ler board would be a The HAT board (Figure 1) comes in a small antistatic bag with
Raspberry Pi which a sticker surrounded with some packing material - nothing else.
is quite cheap and In an effort to cut down on wastage no paperwork is included,
has a lot of power on not even a small slip of paper. All documentation is available
tap to handle almost online but you first need to be directed to the correct address…
any application you You can enter the address provided by hand but in the age of
have in mind. The the ubiquitous smartphone, it would be more convenient if the
added benefit for URL pointing to the documentation could be accessed via a
any developer is that QR code or something similar. The barcode does not actually
there are a range of contain a link. It would also have been nice if the printed URL
ready-made plug-in had been run through a URL shortener so that you didn’t have
boards in the form such a long address to type. Lastly it would have been even
of HATs (Hardware nicer if the URL provided actually pointed to a useful website
Attached on instead of provoking an ‘HTTP / 1.0 404 Not Found’ response.
Top) that bring a Sarcasm, of which I am guilty, is the lowest form of wit but
smorgasbord of this simple error should surely have been ironed out a long
different sensors time before the kit hit the shelves.
to the setup. The
popularity of this Key features
platform ensures The Enviro+ HAT is equipped with the following electronics:
that lots of • BME280, sensor for temperature, air pressure and air
B in a ba g. coding examples humidity [3]
package: a PC
Figure 1. The can be found on • LTR-559, light and proximity sensor [4]
Figure 2. Together with an RPi Zero W it makes Figure 3. With an RPi 3 or 4, the lid needs to be
Plug in
a neat assembly. left off if the board is built into an opaque or
Connecting the board to the Raspberry metal housing.
Pi couldn’t be simpler; take it out of the
bag and plug it onto the 40-way header
connector on the RPi — done and dusted.
Well almost…
If you are using it with an RPi Zero W,
then you just need to plug it together
(with suitable spacers) to produce a
beautifully compact module (Figure 2).
The complete assembly can then be
installed in a small housing. The standard
type of case is less than ideal because
there needs to be provision for air circu-
lation otherwise sensor measurements
will be inaccurate. If you intend to take Figure 4. A piece of insulating tape on the Figure 5. The Enviro+ with added tape on an
light level measurements a transparent bottom of the Enviro+ prevents short circuits. RPi 3B+.
or lidless housing will also be necessary.
Since Enviro+ fits on a standard RPi, I
chose to pair it up with RPi 3B+ that just
happened to be sitting around on my
bench collecting dust. It quickly became obvious I would need pads where you can access a few of the relevant signals.
to leave the cover of the aluminum housing open (Figure 3)
so that enough air and light can get to the sensors on the Documentation and a few examples
Enviro+ HAT. Extensive documentation for the board is available on the
You can see that some of the chips on my RPi3B+ have been Pimoroni website [9], just ignore the faulty link printed on the
fitted with heat sinks. The larger one on the SoC in particu- bag. It is very well put together and also provides basic informa-
lar can cause issues with some types of HATs - including the tion about the sensors and how their values can be interpreted.
Enviro+. As a precaution, you will need to insulate the small It is particularly good that there are also links to instructions
PCB with a piece of tape (Figure 4) so that no short circuits explaining how to easily install the basic RPi, which will be very
are created when you plug it on to the RPi. helpful for many beginners. It shows how, with the help of a
Now the Enviro+ can be plugged into the 40-pin RPi header few terminal commands you can install the additional software
(Figure 5). This header is not the only way to connect to signals for Enviro+ including the Python library and some ‘Examples’.
on the board; the front edge of the board has some labelled It’s quick and easy to get the examples running. Figures 6
Figure 8. This example with the light and proximity sensor outputs the Figure 9. The gas sensor actually consists of three sensors to detect
lighting in lux - the output did not react to proximity. different air components. The output in Ohms is unusual and would need
to be converted.
To sum up
The Enviro+ provides all you need to build an inexpensive
weather station for collecting measurements of environmental
conditions. Thanks to the Python library routines, reading the Figure 10. The display can be used to show any content. Python functions
sensors etc. is fairly easy. The examples provided, consisting are also available for this.
of a few lines of code, help with this greatly so you can tinker
with the code to make the system behave as you would like.
That’s not all; on the Pimoroni website you can find complete
building instructions for an air-quality measurement station
[10] with connection to the cloud ‘luftdaten.info’. Its no
surprise there are so many of these stations registered to
users in my country. IM ELEKTOR-STORE
All in all, I would say this is a very useful bit of kit.
ªEnviro+ (Environmental Monitoring Station for RPi)
191248-03
www.elektor.de/18975
Sometimes, when in a nostalgic mood, I have melancholic thoughts about the time when you could cheerfully
ride your bike to the electronics shop on the corner to buy parts for a small project. In the past everything
was better, it is sometimes said, but the hard reality back then was nevertheless a little less rosy. How
often have I defied atrocious weather and strong headwinds only to return home bitterly disappointed.
Unfortunately the electronics retail business is as good as dead and ordering online is now the norm. These
days (out of necessity) I order everything from any of the well-known ’wholesalers’.
For the more exotic components, the supplier from a friendly horror films and my occasionally miserable geographic knowledge).
neighbouring country is often inadequate and sourcing from Packages from the former Eastern Block generally have a
some distant country becomes the only option. This is also characteristic and recognisable appearance and every individual
true for the better glassware that’s still readily available from vendor also has their own style. Here follows a brief summary
mainly Russia and the Ukraine. Buying components from the of the common characteristics:
former Eastern Block has its charms but there are also traps...
The Latin expression caveat emptor is here more relevant than • a drab and grubby general appearance;
ever (and yes indeed, I had to look that up). • the use of twine;
• cardboard box wrapped in grey or brown paper, or dented
Russian packaging techniques — an introduction packages made from thin, weak cardboard, taped with
So, around 2007 I built my first nixie clock, using IN-14 tubes. colourless packing tape;
That was still a hobby back then, but for one reason or another • decorated with an excessive number of postage stamps,
I’m currently still busy with nixie tubes and other vintage often also neatly cancelled by the local post office
components. To be honest, this business runs quite well when (occupational therapy);
compared to other electronics stuff. • sheets of foam or foil, polystyrene foam, newspaper or
Over the years I’ve got to know quite a few of the vendors of plastic bags as filler material;
these little tubes on eBay. Most of these reside in the Ukraine or • contains strange notes with incomprehensible Cyrillic
Russia, but I have also done business with vendors in Bulgaria, scribbles;
Romania and Moldavia (the latter country always makes me think • reused boxes of consumer products, mostly toiletries for
automatically of Count Dracula; I blame that on my addiction to ladies, but also toys, coffee pods and even paint.
Payment
Payment is normally done through PayPal. There are often paid during importation cannot be reconciled properly. Mistakes
restrictions, particularly in Ukraine, on PayPal accounts, so are common and usually to your disadvantage. Complaining
that most vendors have to employ intermediaries such as is pointless because your package is returned to the sender
Western Bid in order to receive money from PayPal. Others quicker than your case will be processed. It is possible to
use foreign accounts, from friends or otherwise. Therefore rectify an incorrect payment after the fact, but only after a
do not be concerned if you receive a PayPal invoice from and payment of 85 euros for a documentation fee — ka-ching! I
unknown person or even from Thailand or Japan. won’t dwell on that one time that I had 180 back-orders because
a package with components was hopelessly stuck at customs.
Customs, your friend and helper Calling and begging is only counter-productive in such cases,
When you buy goods from outside the EU, you generally have because your package will promptly go to the bottom of the
to pay VAT on importation and sometimes also import duties. pile (’where does she get the nerve...’). Strangely enough, I
With shipments via courier services such as DHL, UPS and have never needed to pay anything for packages from China,
FedEx this transaction is normally very straightforward. Courier when received through the normal postal service. It appears
services are prohibitively expensive in the Eastern Block and that they want to encourage trade with China, which is not
most packages are simply sent using air mail. This means that even an EU country.
they (in my case) will be delivered by the Belgian postal service. Belgian governments, if you (n)ever read this, do something
It appears that the Belgian government and its companies are about this! I will use this opportunity to boast that I can
increasingly creative each year when it comes to the subject of also be creative and my packages in the future will be sent
’entrepreneur harassment’. Not only does the customs clearing to the Netherlands. The Dutch postal services are nowhere
period take an extraordinary period of time, count on three to near as difficult...
four weeks but the necessary documents to account for the 191266-04
costs in your bookkeeping are usually missing so that the VAT
For some time now, cheap USB devices have been available that are pitched as ‘microscopes’, but the early
models were really too flimsy for practical use in the electronics lab, while the focus distance was generally
too small to be able to solder under it. So for that fine-pitch soldering work (SMD) you needed to make do
with a magnifying glass (lamp) or reading glasses - sadly, other optical aids were either unusable or not
affordable.
the images, you can store photos and/or videos on a micro-SD Both microscopes are supplied with an infra-red remote control,
card, and subsequently process them further on a computer. that in my experience is only useful when you want to take
pictures and want to prevent the image from shifting or blurring.
Stand What is experience? I have only handled the microscope when
Both microscopes have a sturdy, robust stand about which there unpacking and writing this review. In normal use of the micro-
is little to say. For the illumination of objects they are provided scope (and in our lab that means ‘soldering and/or checking of
with two LED spotlights on flexible arms, and while these do solder joints’) the remote has no additional value, in my opinion.
provide light, they also are, in my experience, ‘always’ in the Furthermore, the AD407 contains a hex wrench for assem-
way or in the wrong location. When you want to work under bling the stand and – according to the manual — a UV filter.
the microscope, your hands or tools interfere with the lights The latter was missing from the microscope that I received
or you block the light so that you cannot see properly what for this review, but to be honest, I cannot immediately think
you are doing. Directing the spotlights is not that easy either, of an application for it.
because they spring back when you release them. It actually Then remains the question: if you already have an older
puzzles me why Andonstar persists with this system: a ring Andonstar model, would you consider the purchase of the
of LEDs around the lens is, in my experience, much better in new AD407? With the A1, V160 and ADSM201 my answer will
all aspects. be a resounding ‘yes’, but in the case of the ADSM302 I’m a
The stands for the ADSM302 and the AD407 exhibit considerable little more reserved.
differences from a mechanical perspective that – depending on It is quite handy to be able to inspect an object from an angle,
the objects you want to examine – can be decisive when you but: you do not necessarily need such a stand for that (you
have to make a choice. Firstly, the great advantage of the stand can also place the object at an angle). The large LC display of
for the ADSM302: the maximum object distance (that is, the the new model finally turns it into a real stand-alone micro-
distance between object and lens) is about 12 cm, while with scope. As already mentioned, in the Elektor lab we usea (small)
the new stand the lens doesn’t reach more than 8 cm above additional monitor next to the ADSM302 in many cases, but with
the object table. With a little bit of improvisation a solution the AD407 this additional clutter on the work bench becomes
can certainly be found for this, but during ‘normal use’ the unnecessary. To me, that’s more than sufficient reason to give a
new version is a little less capable than its predecessor. On the clear preference to the new Andonstar, if I were to make a new
other hand, the AD407 has a neat feature that could be very purchase. And if I already had an ADSM302, and the budget
handy: you can tilt the entire stand on an angle (Figure 2) so permitting, then I would certainly replace it with an AD407.
that you can also examine solder connections from the side. A (191154-04)
useful option that is missing from its predecessor.
Accessories
Just as the ADSM302, the AD407 is supplied with a power supply
and a cable with a jack for the light source and a micro-USB
plug for the power supply for the microscope itself. There is a
@ WWW.ELEKTOR.COM
small improvement here too: the USB connection now has a ªAndonstar AD407 HDMI Digital Microscope
right-angle plug, with the result that the power supply cable is with 7” LCD Screen
less likely to break, a fault that tends to appear with the older www.elektor.com/19079
models after a period of time (Figure 3).
Philippe (or Cyrob, as he is known to confreres) writes: I want to be able to repair or improve them, and design new
ones myself.”
“My dad worked for a big electronics firm and he gave me “In the 1980s I bought a farm south of Nantes, not far from
some used equipment. That was the beginning of my love of the Atlantic coast, because my wife breeds horses and there-
measurement instruments — I want to know how they work, fore needs space.”
“For many years I actually had very little equipment — a waveform generator.”
Tektronix 2225 oscilloscope, a homebuilt power supply and “It won’t surprise you that my biggest concern again is lack
a ditto generator and so on; I guess most of us are familiar of space; I have to control myself (or try to push those thick
with that.” walls out...) because of course there has to be some space
“In 2004, I decided to expand my small home lab a bit; I opted left for parts and such.”
for an unused pigpen with 80 cm thick walls. I isolated the floor “Feel free to contact me for more information on info@cyrob.
and covered the walls with plastic panels.” org. And of course you are very welcome on my website [1]
“Then came the workbench with a lot of plug boxes, plus a and on my YouTube channel [2]”.
console for my servers and CCTV system.” (191265-03)
“My lab has three independent power circuits: one for light-
ing only (so I don’t sit in the dark when a fuse blows), one
that I turn off when I leave the lab (so the equipment doesn’t
remain live), and one that stays permanently (for alarms,
servers and the like).”
“My lab is well insulated and is heated with a few electric
Web Links
radiators. An electric ’humidifier’ prevents the whole thing
from getting damp.” [1] Philippe Demerliac’s Website: www.cyrob.org
“I own a lot of equipment - a lot more than I need, but that’s [2] Philippe Demerliac’s YouTube channel
because I’m also a collector. But not only is there ’old’ stuff in www.youtube.com/c/PhilippeDemerliac_Cyrob
my lab, I also have modern equipment like a fantastic AFG31000
Optical Probe
for Oscilloscopes
Measure brightness fluctuations of lighting systems
Do you want to measure not only electrical signals but also optical signals? Then you need an optical probe
that converts light intensity into voltage fluctuations that can be evaluated by an oscilloscope. This article
shows how to build such a probe yourself inexpensively.
You may remember this story about the (100 Hz) and the switching frequency of ing retrofit LED lamps. Although the noise
problems with LED lamps, which was their switching power supply. levels emitted by them were very low,
published as an article Electromagnetic they flickered noticeably at the mains
Interference from LED Lamps in Elektor’s Flickering frequency or a multiple of it.
March & April 2018 edition. During my At that time I built a prototype of an Everyone could easily notice this for
EMC measurements for this article I optical probe on a breadboard. A while themselves, as the LC displays of our
also checked the brightness variations later, the fluorescent lamps in our office telephones suddenly seemed to
of lamps with double mains frequency open-plan office were replaced by match- flicker. The reason was an interference
of the lamp flickering with the display
refresh rate. Most digital cameras also
show such interference between lamp
+12V
IC1
78L12
flicker and the refresh rate of the sensor
+15...24V
1 3 (and the screen).
As the lamp flicker spread to more and
D1
6k8
2
MBR0540 R1
more areas, I wanted to get to the
C1 C4 C5 C6 D3 C8
bottom of this new phenomenon of
10µ
35V
100n 10µ
25V
10µ
25V
MBR0540 100n LED1 modern lighting. This was motivation
0V 8
IC3
enough to make a more sophisticated
C2 C7 4 version with PCB, housing and cable
10µ C3 10µ D4 C9
R2
connection out of the flying construc-
6k8
R3
BPW34 (optional) 1
is amplified tenfold by another opamp
10k
A
3 IC3A
TL072D R6 (IC3b). The 50-Ω resistor R7 is used for
impedance matching to the coaxial cable
1k1
R5
Layout be examined perfectly. The cable does half-wave. The current is easily ’scoped
The double--sided circuit board (Figure◦2) not need to be terminated input of the as a voltage drop on the series resistor.
has been designed to fit into a housing ’scope with 50 Ω for these frequencies. At The result is a pulsating light with adjust-
reminiscent of a USB stick, which has also high amplitudes most opamps would be able minimum and maximum brightness.
proven itself for other self-made probes. overstrained with a termination, because If your generator is of a simpler nature,
The vias are positioned in such a way the typical maximum 20 mA results in for simplicity’s sake a square wave
that the board can also be produced with just 1 V across 50 Ω. voltage will also do. With sine or trian-
a circuit board plotter. The through-hole The function test can be easily performed gular voltage interesting clipped curves
vias must then of course be assembled using an LED, which is fed directly from are obtained. It goes without saying that
manually and soldered on top and bottom. a function generator. A suitable series the LED must illuminate the photodiode.
resistor should be used for low imped- The polarity of the output signal can be
The finished probe ance outputs. If not only the amplitude reversed by turning the photodiode. On
Figure 3 shows my fully assembled of the AC voltage but also the offset has the Elektor website for this article [1] you
optical probe. Using the BPW34 photo- to be set on the function generator used, can find layout files of the circuit board
diode and a TL072 I got a frequency then the offset and amplitude can be in Eagle format and a video that clearly
response of several 100 kHz. This is set so that the maximum current of the shows the interference of flickering LED
adequate to view not only the mains LED (typically 20 mA) is not exceeded illumination with the camera sensor.
frequency (or its double frequency), and that a very small current (<1 mA) 180710-02
but even to be able to measure the flows through the LED at the negative
high-frequency brightness variations
(Figure 4), which result from the ripple
of the switching power supply of some Web Link
LED lamps (typically 30-60 kHz). Also [1] Video, CAD data: www.elektormagazine.com/180710-02
the flickering of dimmed LED lamps can
+3V3 +3V3 4 18 20
J2 C4
+5V 12 VCC AVCC AREF 100n
USB_B_Mini PB0
13
AVR-ISP-6 PB1
1 1 4 2 14 ATmega88 - 20AU
PB2
3 EN V+ VCC 15
D+ N2 PB3
4 R3 1 16
ID H2 X2 MISO PB4
VBUS +3V3
GND antenna +3V3 20MHz U5 MOSI
3 17
PB5
10k
3 4 19
OUT SCK R6 ADC6
5 22
GND RST ADC7
330
6 GND
SHIELD 2
D- 2 6
7 XTAL1/PB6
GND
T3 R9 R7 8
5 XTAL2/PB7
540k
47k
NPN photo transistor 3V3 D4
LED 23
12 4 U5A PC0
2 GN 24
+BATT +3V3 14 MCP6569 PC1
25
1 13 PC2
TLV70233 (SOT23-5) R11 3 1 26
PC3
2 P2 3V3 4 27
100k
1 3 5 U5D 11 PC4
P3 10k 3 28
IN EN OUT MCP6569 PC5
3 100k J6 2 29
C2 C3 RESET/PC6
U3 R10 R8 TWI 1
540k
47k
10µ GND 100n
3V3 4 30
2 PD0
3 31 PD1
J7 2 32
COM PD2
1
3 D8 D7 D6 D5 2
330
2 1
MCP73831-2-0T D2 5 3 5 3 5 3 5 3
1 3 4 more LEDs
VDD VCC VDD VCC VDD VCC VDD VCC
VBAT
VDD
J4 1 2 1 2 1 2 1 2 2
1 LED DOUT DIN DOUT DIN DOUT DIN DOUT DIN PD4
conn_Lipo
2 STAT OG 9
PD5
1 U2 D3 VSS VSS VSS VSS 10
PD6
6 WS2812 6 WS2812 6 WS2812 6 WS2812 11
PROG VSS +BATT PD7 GND +BATT
5 2 LED 3
GN
BZ2
R2 R5
M
330
5k6
M2
Buzzer DC motor C6
100n
C5
100n
T2B T2A
IRF7309|PBF IRF7309|PBF
Figure 1: The final circuit diagram of a Tangible. 190100-004-94 KD
the Tangible in the new housing. There First applications with feedback tions NOT, AND, OR, NAND, NOR or XOR
is charging electronics for a LiPo bat- In Dem 1 (a basic version of this app and thus assembled to digital circuits. In
tery and a slide switch to switch between is already finished) regular expressions this app the Tangibles indicate by means
charging and operation. Two further LEDs should be assigned to matching words. of the LEDs whether the node switches
(D2, orange, and D3, red) indicate the The tangibles are used as a tool and feed- or not. Furthermore, it can be indicated
charging/operating mode. The clunky back too. Wrong or correct entries can whether the circuit is currently in edit or
light sensor with its „board peephole“ now be displayed directly on the Tangible. simulation mode, for example, by the RGB
from the first model has given way to a The app is to be modified later and used LEDs lighting red/green during simula-
small SMD variant on the underside of for teaching German in the lower grades tion and white in edit mode. Even if the
the board. (assignment of animal names) and in hardware is finished, there is still a lot to
the upper grades in chemistry classes. do. The next step would be to finance fol-
The new feedback functions can play an With Dem 2 propositional logical circuits low-up research in which the applications
important role in the first TABULA appli- can be designed. The tangibles are pro- can actually be used and tested.
cations (Demonstrator 1 and 2). grammed as gates with the logical func- 190100-02
Web Links
[1] RWTH Aachen: https://hci.rwth-aachen.de/TABULA
[2] TABULA Article: www.elektormagazine.com/160123
[3] Ehlenz et al. The lone wolf dies, the pack survives?:
Analyzing a Computer Science Learning Application on a Multitouch-Tabletop.
Koli Calling ‚18. ACM, New York, NY, USA, Article 4, 8 pages:
https://doi.org/10.1145/3279720.3279724
[4] NeoPixel-LEDs: www.world-semi.com/DownLoadFile/108
[5] Cherek et al. 2018. Tangible Awareness: How Tangibles on Tabletops Influ-
ence Awareness of Each Other‘s Actions. CHI ‚18. ACM, New York, NY, USA,
Paper 298, 7 pages: https://doi.org/10.1145/3173574.3173872
The prospective short-circuit current (PSCC) is the maximum current that can flow through a shorted
electrical circuit. The PSCC value is needed for selecting devices like circuit breakers and fuses to prevent
damage such circuits. So how does this work?
Before we go any further, let’s make clear that this article covers What about the trip current?
electrical engineering, not electronics. So, when a ’circuit’ is The breaking capacity of a circuit breaker is not the same thing
mentioned here, it refers to an electrical supply circuit connect- as its trip current. The latter is the maximum current a circuit
ing lamps, switches, power outlets, and machines, including breaker ’considers’ safe to pass; the breaking current on the
all wiring. other hand is the current the device can withstand without
getting damaged. For instance, the type SN201 L C32-L 1+N
What is the PSCC? pole miniature circuit breaker (MCB) from ABB has a rated
The prospective short-circuit current or PSCC is the maximum trip current (In) of 32 A and a rated short-circuit current (Icn)
current that can flow through a shorted electrical circuit. It is of 4.5 kA (at 230 / 400 VAC). This is because the short-circuit
also known as ’available fault current’ or ’short-circuit making current depends on the capacity of the power source and is
current’, and, as with any current, it conforms to Ohm’s Law. unrelated to the current drawn by the load protected by the
Therefore, the circuit’s supply voltage and its impedance circuit breaker.
together determine the PSCC value we crave to know.
Measuring the PSCC
Why would I want to know the PSCC? You can measure the PSCC of an electrical installation with a
To select devices like circuit breakers and fuses that will effec- PSC Tester. This is an easy-to-operate instrument that calcu-
tively protect an electrical installation, you need the PSCC lates the PSCC value of a circuit in ampères (A) and kiloampères
value. Such protective devices must be able to sustain the (kA). Although pressing the ’Test’ button is usually enough
PSCC to provide a reliable protection. If the breaking capacity to obtain a value, connecting the instrument properly to the
or interrupting rating of the protective device is too low, the system requires knowledge of what you are trying to measure.
PSCC may destroy it or cause an electric arc (Figure 1). In Generally, a PSCC test is conducted at the distribution board
either case, the breaking device may not operate correctly, between phase (P) and neutral (N). In the case of a power
and dangerous situations may arise. outlet using the moulded test cable supplied with the tester,
the test is done between the Phase and Protective Earth (PE; Figure 1: This is what can happen to a miniature circuit breaker (MCB)
E) conductors. Before pressing the ’Test’ button, make sure when it cannot withstand the short-circuit current.
the tester indicates that it is safe to do so.
Notes
Depending on the wiring it can happen that the PSCC and P(E)
FC values differ. If this is the case, use the highest value of the
two for specifying a circuit breaker. Web Link
Working on live electrical installations can kill you. We warned
[1] Video: Unboxing and Trying the PeakTech 2715
you.
Loop & PSC Tester: https://youtu.be/9dBhz3acowc
191160-01
Microcontrollers are used in many of the electronic devices that we use every day. But the multibillion-dollar
market for microcontrollers had a humble beginning when several LSI chips were condensed into one. Let’s
take a closer look at some of the first commercially available microcontrollers, which were the TMS1000
series from Texas Instruments.
There are some hobbies that never require calculation - those who work with paint and brush don’t first have
to work out how green the grass is (which, by the way, always seems to be greener on the other side). This is
very different in electronics: there (accurate) calculation is of the utmost importance to prevent blown parts,
tripped fuses and worse.
Conductance R=U/I
In the previous episode we talked about voltage and current;
now let’s see what cool things we can do with that. And this is (finally!) Ohm’s famous law, which even people who
We all know from experience that certain materials (such as don’t know anything about electronics might have heard of.
metals) conduct an electric current better than others; and
there are also materials that hardly conduct current, or not at Intermezzo
all. In the latter case, we speak of insulators. Glass is a good In daily electronics practice the ohm is a rather small unit,
example, and it may surprise you, but water is also an excellent usually we are dealing with much larger values, for example
insulator (it has to be distilled or better still, doubly distilled 8200 Ω. The farad on the other hand (the unit of capacitance;
water - aqua bidest). we’ll come back to that in a later episode) is again unwieldy.
A quantity has been defined in physics that specifies this In order to avoid having to write and pronounce unwieldy
material property: conductivity or specific conductance. values in full all the time (“here we mount a resistor of eight
thousand two hundred ohms” or (even worse) “here comes a
capacitor of one eighteen-millionth farads”) we use decimal
Conductivity prefixes, the most important of which are summarized in the
There is a nice linear relationship between the voltage across, following table.
and the current through, a conductor, which can be cast in
formula form as follows:
Multiples
κ=I/U
name symbol multiplier
In other words, the quotient of current and voltage is conduc- tera T 1012
tivity — the more current flowing at a given voltage, the better giga G 109
the conductance and the greater the conductivity κ. Conductivity mega M 106
κ is expressed in the unit Siemens (S). kilo k 103
hecto h 102
Resistance
deca d 101
Now, in practice, the voltage is usually numerically greater
Fractions
than the current, so the value of the conductivity will nearly
always be (much) smaller than one. And electricians too are name symbol multiplier
only human beings — they do not like to calculate with very deci d 10–1
small values. centi c 10–2
milli m 10–3
That is why, in practice, they usually calculate with the reverse
micro µ 10–6
of conductivity: resistance. The better a conductor conducts
nano n 10–9
the electric current, the lower its resistance. The resistance R is
pico p 10–12
expressed in the unit ohm (symbol: Ω). The following applies:
8200 Ω = 8.2 kΩ = 8k2 or 8kΩ2 That’s not a lot - in our example it was a very modest electric
0.0000000056 F = 5.6 nF = 5n6 or 5nF6 heater. But suppose we had used a 220 Ω resistor - so 10 times
smaller. Then we arrive at a dissipation of 368 mW (ten times as
The electric circuit much) and then it gets interesting. Many electronic circuits use
Now an electric current doesn’t ’just run’: it comes from as small (and cheap) resistors as possible, which are specified
somewhere and it goes somewhere. In the simplest case, the for a (maximum) power of 250 mW (see also the parts lists for
current comes from (the plus pole of) a battery and flows to the DIY projects in this magazine). However, such a resistor
the minus pole of that same battery, creating a closed circuit. would burn up in no time at all, with all the consequences...
In an ’open’ circuit no current can flow!
A last example to conclude. We want to connect a 1000-watt
Note: it is actually the electrons that move in exactly the spotlight to a wall socket using an extension cable. How much
opposite direction; the generally accepted flow direction from current should that cable be able to handle as an absolute
plus to minus that we count on is a legacy from the past, when minimum without setting the place on fire?
+
R U
I
200003-51
R=U/II=U/R=
9 V / 2200 Ω = 0.00409 A = 4.09 mA
a machine similar to
bably have to go through
Since your design will pro ble.
they are com pati
this one, better make sure
Version control
It is just not possible to come up with a perfect schematic
right from the beginning. Things will change and evolve
What’s next?
when your knowledge and experience grow. Several The results of the design stage described above are —
iterations will be necessary to get it right. Keep track of besides a nice document for future reference — a bill of
these revisions to avoid making the same mistake again. materials (BoM) and a netlist, both complete and correct.
This is even more important when a design forks into With these documents in hand, you can embark on the
multiple versions. Use unique and clear identifiers for design of a printed circuit board (PCB).
versions and iterations and be consistent. 190369-B-01
Switching on
It starts by turning on the triac to apply the supply voltage to the load. Because
the triac is fast, it can switch the load on and off around a zero crossing of the AC
supply voltage and thus keep electromagnetic interference (EMI) to a minimum.
Furthermore, a triac can be used in phase angle control mode which allows soft
starting a load.
Once the load has been started, the relay is turned on too. Because the
mechanical switch has a much lower ‘On’ resistance than the triac, most of the
current will start flowing through the switch. The triac is no longer needed and
can be switched off.
Switching off
Switching off the load starts by switching the triac back on, then the relay is
switched off. Since the triac is conducting at this moment, the voltage over the mechanical switch contacts remains low.
Opening the switch is now safe and will not produce sparks and arcs. Again, EMI production will be low, and the switch
contacts do not burn. Once the relay is open, triggering the triac is stopped and the load will switch off as soon as the triac
stops conducting.
Advantages
A hybrid relay constructed and operated this way has many advantages. The power losses are low thanks to the relay’s low
‘On’ resistance. This also saves costs and space as the triac doesn’t need a large heat sink. EMI noise level stays low because
the triac avoids contact bounce. Also, operation is fast and spark-free, making switching safer and more robust.
The main inconvenience of a hybrid relay is the number of parts needed to build one. Controlling it is more complex too and
requires a microcontroller in most cases.
Which way do the wires run? This conundrum regularly faces electricians working in older buildings and do-
it-yourself enthusiasts alike – in other words everyone who enjoys (?) doing work in his or her home and
garden. Sometimes finding concealed cable runs is far from easy, which is why we are discussing ways and
means of locating these hidden copper wires even when they are non-continuous (interrupted).
Lines and
lawns
Eagerly holding the
monstrous box of a newly
acquired the new piece of
technology, you are faced with problems
that are easily – and grossly – under-
estimated. While researching which
machines would be suitable for my
Figure 1. My lawn robot (Photo: Gardena).
U-shaped garden (with several pinch-
points barely one metre wide), I natu-
rally also discovered the quirks of these
potential mowing slaves. I knew that
robotic mowers of this kind are actually As robots go, they are rather stupid, its charging station, the robot needs an
quite ‘unintelligent’ and make their trips because they have no camera or inbuilt extra search line – laid on the lawn or
through the grass fairly randomly. If cognitive map to make intelligent deci- better, in the ground. Through all of these
they bump into something, they reverse, sions. In order to prevent them from wires flows a pulsed current, and thanks
turn a little (again randomly) and try leaving your property altogether and to to built-in sensors that detect the mag-
once more until their daily time allow- exclude areas that are not to be mowed, netic fields, the robot knows where it is.
ance for mowing is finished (or the bat- you have to lay a boundary wire all With my robot (Figure 1) the signal is
tery is running low). around for their guidance. And to find also password-encrypted with a unique
secret code, making a stolen Robby The to make things easy for yourself, lay Cable breaks
Robot also a Robby that’s unusable by the line directly on the grass and tack it My luck didn’t last long, however. When
anyone else. At least that’s a deterrent down every 50 cm with a kind of plastic you are involved so intensively with your
to any thieves who can add up to three. tent peg (see Figure 3). Over time, the lawn, you also take good care of it. In my
On the other hand, the only additional wire disappears into the undergrowth case this was waging war on the dandeli-
luxury with my example is a radio con- of the lawn. So says the manufacturer. ons. Since I knew where the cables were,
nection to the Internet via a modem. This And in general, it’s true. However, this I was the only one allowed to tackle these
means I can check on my smartphone, is only practicable in areas where you pesky opponents. At first, things went
from anywhere in the world, what the rarely set foot, otherwise you create trip quite well. But then, at some point, it
robot is doing and send it back into its hazards for yourself. Around paths and happened: while slicing the stem of a
little house (Figure 2) in heavy rain, flower beds it is better to lay the line magnificent dandelion, I found myself
for example. 10 to 20 cm below the earth, stones or adrift by several centimetres and the
No gain without pain, though. Before I (concrete) slabs. Alternatively, you can lawn robot stopped dead in its tracks.
could enjoy the reward of watching mow- (laboriously) make slits in the lawn with I had sliced the cable as well. No big
ing carried out robotically, the gods now a flat (straight) spade and press the wire problem, because I knew exactly where
set me the task of cable laying opera- into the earth with your fingers. Or you I had been gardening in perilous prox-
tions. For me, this involved putting down can hire a professional with a cable-lay- imity to the buried power source. After
a green single-core conductor of approx. ing machine to do this sweaty job in a some digging, I saw the severed cable
1.5-square millimetre cross-section, a short time. ends. If there is some slack, you put the
good 500 m long in fact. If you want I had to contend with all four methods, ends into a special, gel-filled, waterproof
because just after I had finished my connector (Figure 4), squeeze the clamp
labours, I discovered the consequences and all’s well again.
of an incorrect statement in the manual.
This said that the distance between the This mishap was not a one-off occur-
cable and any edges or obstacles could rence, though. In the second year of the
be set between 15 and 50 cm. Trusting autonomous lawn mowing I apparently
this guidance, I laid the cables at a dis- became more careless, because I had
tance of 20 cm from the actual bound- been rooting out some undesired plant
ary. Subsequently, when configuring my growth at the edge of the garden, spread
robot, I noticed the minimum distance across several metres. Then I noticed
was now stated to be 25 cm. However, that Robby had stopped helplessly, hav-
my cursing bore fruit, as the manufac- ing lost its orientation entirely. This was
turer kindly sent out a professional with right at the edge where the professional
a laying machine, who then re-buried cable-laying machine had been used.
the 250 m of wire that I had already laid, Here the wires were particularly deep
this time at a distance of 30 cm. Every- and not buried in the ground by myself.
Figure 4. Gel-filled (watertight) crimp
thing was fine and the mower mowed So, what to do? Unearth every possible
connector. I bought a bulk pack of these…
excellently, as I had schemed and hoped. location, one after the other? Or seek
3k9
Signal injector
Figure 9. A signal injector based on the 556 dual CMOS timer. It generates an amplitude modulated An amplitude-modulated signal for recep-
LW signal on 465 Hz (185 kHz). tion on a long-wave radio does not take
Advertisement
GREEN
MEMBERSHIP
✔ 6x Elektor Ma
gazine (PDF)
✔ 3x Elektor Indu
stry Magazine
(PDF)
rubber bumper and on the back are four function buttons, the functions
is a fold-out stand that allows the of which are displayed on the screen. The
meter to be placed upright. On the back colour display is easy to read and with a
What is it actually? there is also the battery compartment resolution of 320 x 240 pixels it shows
With so much functionality packed in a that contains two standard 18650 Li-ion a lot of information. I believe it should
single instrument you will naturally ask cells. These are therefore always easy to have been a little bigger, but then the
yourself what its main function actually replace. A cover on the right side protects instrument would probably also have to
is. This is obviously the oscilloscope, in a USB-C connector that serves as power be more expense.
this case a two-channel version with a supply input and for communication with The four cursor buttons are used for,
bandwidth of 70 MHz and a sampling rate a PC. On the top are three recessed BNC among other things, setting the time
of 250 Msamples/s (half that when using connectors for the oscilloscope inputs base, sensitivity, DC level and trigger
the two channels simultaneously). These and the AWG output. On the front we level. This is initially not all that straight-
are very reasonable specs for a measur- find a 2.8-inch display at the top with forward because the functions of the
ing instrument that costs less than the operating controls below that and the buttons changes after pressing the
€200 euro (for Elektor members). Add multimeter inputs right at the bottom. Channel or Time button. Unfortunately
to that the AWG (arbritrary wave gener- The meter is supplied in a generous case I could not find an indication anywhere
ator) which also has decent characteris- with many accessories. on the display that showed which of the
tics (sampling rate of 250 Msamples/s) Channel or Time buttons was pressed
and an autoranging multimeter with its Oscilloscope last.
own dedicated inputs. What more do you The operation of the DMSO2D72 The oscilloscope possesses virtually all
want? succeeds largely without having to the functions that an ordinary ’scope has,
The DMSO2D72 is supplied with a sturdy consult the operating manual first, but such as an auto setting that automat-
case, a power supply adapter and various some things you will find only after some ically adjusts the settings to obtain a
types of test leads. All these features are trial and error. Three of the blue buttons stable scope display, the use of cursor
housed in a robust enclosure measur- are used to switch between the different lines and the display of various measure-
ing about 20 x 10 x 4 cm. The whole functions, the fourth blue button gives ments. The trigger options are somewhat
thing resembles a substantial multime- access to a menu with various configu- limited, but are sufficient for most
ter. The enclosure itself is fitted with a ration options. Directly below the display practical applications. The ’scope has
PC software
The accompanying PC software is avail-
@ WWW.ELEKTOR.COM
able from the Joy-IT website and can be ªJoy-IT DMSO2D72 Portable 3-in-1 Oscilloscope
used to operate the instrument from your www.elektor.com/19157
computer. The installation went quickly
Old PCs consigned for use in an electronics lab have some • Power supply
advantages: Firstly it is not such a loss if you mistreat them and • Case
they fail. They will not be the most recent model so often they
provide connectors for some of the older, redundant interfaces Small parts such as slot plates with serial and parallel interface
that may be used by some old projects. The disadvantages of connectors are also an option if you think they will be useful,
an old PC however are manifold. these are often not included with boards. If you have specific
First, we need to accept lower reliability; even though PCs graphic-intensive requirements (3D renderings, etc.), you can
occasionally last ten years, it’s reasonable to assume that choose a powerful dedicated graphics card instead of using the
their typical useful lifespan is around three years. It’s not just graphics processor integrated into many CPUs. Of course, you
that something can break or wear out but old PCs often run an could fire up a search engine and look for an off-the-shelf PC that
old unsupported OS, which poses a security risk. Okay, hand does everything you need. It is however a good exercise to con-
on heart: Do you have a PC somewhere running Windows sider the properties of all the necessary components in advance
XP? Newer operating systems often cannot be installed on old to see how you can build something that you can really use.
machines because of lack of space, no compatible drivers or
the result would be an achingly slow PC which brings me to the Motherboard
third drawback: poor performance. To get round this why not The basic choice we need to make here is between Intel or AMD.
build your own PC? For relatively little money, you can quickly AMD’s new processors currently deliver a little more ‘bang for the
put together something that fits the bill exactly. buck’ which has encouraged Intel to price their products more
competitively. If you intend to only run Windows 10, then an
The PC components AMD processor is a good choice. I install Windows 10 on several
For an electronics engineer, building a PC yourself should be a volumes and also use Linux and macOS so I need to go for Intel.
breeze. Anyone who knows that red ≠ blue and plus ≠ minus If you need space for plug-in cards, the next decision for the
and what static electricity can do to modern electronics hardly board format is in favour of standard ATX. Alternatively, you
needs to be instructed how to plug the various components can also choose µATX but standard ATX also provides (proba-
together (Figure 1). I managed to build a lab PC in one eve- bly for not much longer) a PCI slot, useful if you want to use
ning; if I can do it, anyone can… an older board with a PCI connector. Otherwise you will be
What you will need: limited to more modern PCIe cards.
• Motherboard If you plan to use an Intel CPU, you can choose from boards
• CPU with a number of variants of the X3XX chipsets. Here you
• CPU cooler should not be tempted to penny pinch; avoid the H310, B360
• RAM modules and B365 chipsets. These variants, which are intended for sim-
• SSD (electromechanical hard drives are out) ple office PCs, have a reduced number of usable PCIe lanes,
The CPU
After selecting either Intel or AMD, the next thing to consider is
processing power, which these days is largely governed by the Figure 4: CPU cooler supplied with the ‘boxed’ version of the processor.
number of CPU cores. Although Intel offers modern ‘Celeron’ or
‘Pentium’ processors for just under €50 these are feeble dual-core
CPUs which may be sufficient for less demanding applications
but won’t cut the mustard for what we have in mind here. You If you opt for a more powerful processor you need to pay more
don’t need to stump up much more money to get a powerful, attention to drawing off the extra heat it generates. A wide
fast quad-core version of the processor for around 100 Euros. choice of cooling arrangements is available, some fans can be
For AMD devices we would be looking at the Ryzen 3 or 5 pro- quite noisy but for our application this is not such a serious
cessors — older, slower or even completely different CPUs that drawback. You can expect to pay at least €20 for a cooler with
don’t use the AM4 socket should be avoided. For Intel a good heat pipes and a 120-mm fan (Figure 5). The selection is huge
processor to consider is the i3-9100. The F version is a bit but a water cooled system would be overkill, after all nobody in
cheaper because it has the integrated video controller disabled. the lab would ever use the machine for gaming… would they?
After a recent upgrade to my main PC I have a fairly modern
AMD graphics spare so it makes sense to choose a ‘boxed’ RAM
i3-9100F for around €80 (Figure 3). This has four cores clocked When it comes to RAM, the first question is: how much? 16 GB
at 3.6 GHz (Turbo = 4.2 GHz). Five years ago you would have seems to be the standard these days and is almost always
shelled out over €400 for this CPU. Processors can also be pur- sufficient for the majority of applications. You can order this
chased as OEM/Tray processors; these are bought in bulk by a as a kit consisting of two 8 GB cards so they can be accessed
manufacture (in trays) and will not be supplied in the usual retail faster i.e. ‘interleaved’. A 32 GB, made up of 2x16 uses less
packaging when resold individually as a Tray CPU. They are not energy than the same capacity made from 4x8.
significantly cheaper so I opted to buy one in its original box. CPUs have long used DDR4 memory; these 260-pin mod-
At the time of going to print, there may already be successors. ules are required for Ryzen CPUs with a maximum clock of
In this case, I would prefer the i3-10100. For those requiring 2,933 MHz. For the Coffee Lake processors from Intel (iX-8XXX
processors with more cores, CPUs of the i5, i7 and i9 type are and iX-9XXX), 2400 MHz is sufficient. More is always possible
popular choices. and can be activated via BIOS (XMP = eXtreme Memory Profile).
XMP is an Intel technology that allows you to use higher than
CPU cooler standard memory speeds by choosing a different profile for
The ‘boxed’ i3 CPU also comes with a heat sink and fan the RAM during BIOS boot.
(Figure 4) which runs not particularly quietly but in a lab In addition to the clock speed, the access latency is also rele-
environment that’s acceptable. vant for RAM modules, which is specified as ‘CLXX-XX-XX-XX’
Note: avoid QLC SSDs! These ‘Quad Level Cells’ actually work
with 16 voltage levels per cell and can thereby store 4 bits per
cell. That makes them cheaper to produce for a given capacity,
but makes the read/write cycles relatively slow and also impacts
on cell longevity. Without some nifty tricks by the memory con-
troller (‘wear leveling’ and ‘reserve blocks’) a memory sector
would become unstable after only about 200 write operations
(compared to 2000 for more standard Triple-Layer cell (TLC)
SSDs). The cost savings are really not worth it!
Figure 5: Typical cooler: Artic Freezer 34 with four heatpipes (Image:
Arctic [2]). The power supply
An increasingly more important criterion to consider here is the
efficiency of the power supply. More energy wasted equates to a
in the description. Less is more. I decided to go down the con- larger carbon footprint. Power supplies using the ‘80PLUS’ rating
servative route and opted for a 2x8-GB kit rated at 1.2 V from system are divided into categories of bronze, silver and gold. You
the G.Skill ‘Value’ range with the description CL15-15-15-35. shouldn’t buy anything with an efficiency rating less than bronze.
This set me back around €55. The power rating is also relevant. If you have a CPU consum-
ing 65 W with an integrated CPU graphics, it will be difficult
SSD to exceed 100 W for the entire system even under full load.
The two obvious criteria here are: capacity and speed. Everyone Graphics cards are notoriously power hungry. Top of the range
has an idea how much memory they want and a bank state- cards used by serious gamers consume several hundred watts.
ment that tells them how much they really can get away with. A fairly average graphics card in the lower-mid range class will
Personally, using a Windows 10 machine running various devel- take 200 W. As a rule, the graphics card in an average lab PC
opment environments with CAD software installed plus an office will be jogging along at 20 to 40 W if it has nothing special to do.
package on top of that I think 250 GB is more than ample for Unfortunately, there are no longer any usable 250 W ATX power
my needs. supplies available. A power supply with an output rated much
The crucial question is the interface; although my board has six higher than necessary will be operating below its optimal level
SATA-3 interfaces the data throughput is ‘only’ a maximum of of efficiency. I chose a 350 W LC-Power LC420-12 (Figure 7)
600 MB/s. SSDs with an M2 NVME interface are better and not which is a compromise but costs just € 25. Its connections
much more expensive, the board we are using here offers two slots comply with the ATX standard V2.31. The power supply runs
for this. Thanks to four 3 lane PCIe slots, gross data throughput with an efficiency rating of 88% and is very efficient in sleep
of up to 4 GB/s is possible. Standard SSDs easily offer 3 GB/s. mode. Its integrated 120 mm cooling fan is not too noisy (gen-
erally the larger the fan the quieter it runs).
Assembly
It’s usual for most of the components to be supplied in bags
with an antistatic coating. A professional work bench will pro-
vide an earthing point to connect a (high impedance) conduc-
tive wriststrap via a flexible coiled wire.
You can also take some simple precautions to reduce the risk of
accumulating a static charge on your body. Firstly do not slide
or walk across synthetic floor coverings immediately before
handling static-sensitive parts. Sit at a bench and touch a
surface like a metal instrument case that has a connection to
earth to disperse any charge. Wear clothes made from natu-
ral (not synthetic) fibres. Working in an environment with a
humidity level of at least 30% will reduce the risk of a static
charge accumulating on any surface.
Figure 7: 350 W power supply LC420-12 from LC-Power (Image: LC-
Before the motherboard is installed in the case first mount the
Power [4]).
CPU in its socket. Once sure your body is not harbouring any
electrical charge you can release the lever over the CPU socket,
remove the black plastic cover and place the CPU on its socket.
Notches and markings on the CPU package ensure that it’s diffi- First impressions indicate that this low-cost lab PC runs almost as
cult to fit it the wrong way round. Once in place and level carefully fast as my much more expensive main PC. Now I need to install
bring down the lever to lock the CPU in place. The motherboard and configure all the necessary software packages, experience
can now be positioned and fixed in the case with screws. The has shown that this phase of the build usually takes significantly
case usually has a bag with six to nine screws included. longer than the time needed to put the PC together.
Now we can mount the CPU cooler in place. Its heat-conductive 191191-04
surface already has a coating of thermal paste (almost always
too much). Press the cooler onto the CPU, twist it slightly and
pull it away again, use a tissue to wipe away any paste stick-
ing to the CPU. Now the amount of paste remaining should
be about right. I decided to dispense with the supplied paste
completely and used a better product; it contains metal-par-
ticles to improve heat transfer; I used a hobby knife blade to
spread it thinly over the surface.
Now the SSD and the two RAM modules can be slotted in place.
The manual explains which sockets should be used together so
that RAM interleaving works. Now take some care to connect
up all the cables in the case according to the manual.
Run the power leads from the PSU to the boards. Note that the
six-pin (2x3) connector from the PSU usually plugs into the
graphics card. The additional 12 V supply for the board requires
a 4- or 8-pin connector. This is very important!
The graphics card is now plugged into the PCIe slot with 16
lanes; this is the one nearest the CPU.
Once you are happy everything is connected as it should be
turn the PC on and watch as the BIOS messages appear on
the connected monitor. Windows 10 installs without problem
in the standard configuration but other OSs may require a cer-
tain amount of tweaking. Figure 8: Outside and inside the finished e-lab PC.
Web Links
[1] www.gigabyte.com/de/Motherboard/H370-HD3-rev-10#kf
[2] www.arctic.ac/de_de/freezer-34.html
[3] www.silicon-power.com/web/product-P34A80
[4] www.lc-power.com/produkte/pc-netzteile/office-serie/lc420-12-v231/
Presentable it was
The casing made for the Intelekt reveals that it was made for
showing to an audience …. and survive! It was a time when
large numbers of readers would flock to the Elektor stand at
shows especially in Holland and Germany which were easy to
reach out of Beek. In contrast to today’s ‘professional’ shows
like Embedded World, productronica and electronica, the Elektor
stand was beleaguered by readers. Long queues and shouting
were not uncommon especially if there were PCBs and books on
sale, demos available, or authors or designers on the stand to
have fierce discussions with. It was a time when readers were
keen to meet the Elektor editors, publishers and sales staff if
only to see the people behind that weird publication “coming
out of Holland’ — and grab a bargain, of course.
Back to the Intelekt case, the recessed switch is the Interrupt
control, and the 12 × 17 mm size of the rectangular clear-
ance cut by Jan Visser in the acrylic cover should preclude
any thick-fingered or thumbed ruffians at the show to disturb
Figure 1: Intelekt case with the cover removed. The Interrupt pushbutton
a game of chess on demonstration. The switch is secured on is a ‘Digitast’ type witn tactile feedback!. Here it can be seen soldered
a small piece of perfboard you can see dangling on its wires on a small piece of perfboard with two standoffs, and connected to the
when the cover is removed (Figure 1). circuit board with wires.
Second remarkable thing is the product label that reads
‘intelekt’ (sic). It’s a single rectangular piece of acrylic plate
which could be reversed depending on the language required.
Figure 2 shows the trick. For the Dutch version, Jan photo-
copied the Dutch article title only, added the month of publi-
cation in rather normal typeface, and then stuck his paper
creation on one of the plates. For the more refined looking
German plate, Jan said he first ripped the front cover off a
German april 1981 magazine and cut out the piece where
Intelekt was announced.
Only the cover of the case is made from 3-mm thick acrylic
plate (“perspex”) bent to size with a machine I still remember Figure 2: The Intelekt screw-on product descriptor plate set is reversible
seeing in the old workshop in 1985. That cover is bash-proof to show one of two languages: Dutch or German, depending on the show
and certainly served its purpose: to drool over electronics. The or demo location.
the board pictured in Figure 5, near the 15-MHz crystal. The like changing players (CTRL-X), autoplay (CTRL-A), and setting
cost of this small chip was ludicrously high compared to the the level (CTRL-N).
8088 in its 40-pin DIP case. The original article has a long section at the end where a sample
Although the circuit diagram proudly shows a 25-pin D-sub chess game played against Intelekt is discussed and analyzed,
connector for the serial link to the terminal, and ‘RS232’ (sic) complete with move lists, exciting mini battles on the board,
printed alongside, the interface certainly does not deserve and comments. The conclusion of the article is interesting to
that name as it has only two lines effectively: RxD and TxD, no read as it hints at modifying the software for such purposes as
handshaking implemented, and 0-5 V swing instead of ±10 V. “improving the end game” and “pawn promotion to other pieces
This type of ersatz RS-232 with one BC54x was to appear in than a queen”. Readers were warned though that “ [software
many Elektor projects in later years, often causing despair mods] involve additional memory and slower response”, which
with readers using professional terminals and other equipment is amusing because the Intelekt board is prepared for fitting
designed for the real RS-232 thing and failing to communicate larger EPROMS type 2732.
with the d%^@ projects. Remember, this was long before the All in all, the 1981 article does a good job in discussing both
arrival of the MAX232 and its likes with their charge pumps the strengths and the weaknesses of Elektor’s first self-con-
taking care of the negative swing. tained and dedicated computer running Tiny Chess. For two
positive notes like “… he presents a good challenge at reason-
How good was it? ably short response times”, and “… he uses brute 16-bit force
Intelekt is not a fully graphical chess computer. After the welcome to overcome the shortcomings of a straightforward ‘mini-max’
message it does display the initial board position though on the procedure”, we read one sobering thought like “Intelekt is
terminal screen in a very primitive manner as you can expect intended as a chess opponent. He doesn’t like solving chess
from a dumb terminal like the Elekterminal with 20 rows of 40 problems on his own.”
characters. There is an extremely primitive representation of the I plan to power up our Intelekt some time and see if it still
chess pieces on the “board” using crosses and dots mostly and plays, possibly against a 32-bit opponent. But first, those blue
I believe most players would forfeit the screen altogether and tantalum capacitors have to go to prevent an explosive move
simply read the moves as text and move the relevant pieces on by Intelekt before the game begins.
a real chess board. To enter your move, you key in: 190382-B-01
LAUNCH
YOUR STARTUP AT
ELECTRONICA
2020
Is your electronics-related startup ready
to disrupt? It is time to introduce your
company’s solution to the global market!
FINALIST BENEFITS
First Prize = €75,000 marketing package from Elektor,
plus a booth at electronica 2022.
Second Prize = €50,000 marketing package from Elektor.
Third Prize = €25,000 marketing package from Elektor.
Get exclusive, specially priced (only €1,905!) booth
space (5 m²) at electronica 2020.
Get great exposure before, during, and after
electronica 2020. (10.-13.11.2020)
>Sign up
here
electronica Fast Forward is brought to you by
elektormagazine.com/fastforward
PCB Art
Pushing the Limits of Industrial Manufacturing
By Tessel Renzenbrink
Saar Drimer creates PCB art. Combining engineering and artistic skills, Drimer produces beautiful circuit
boards that push the boundaries of traditional electronics design. He teamed up with PCB manufacturer
Eurocircuits to manufacture his designs. At first the collaboration was bumpy. Drimer was frustrated with the
limitations imposed by the industrial manufacturing process. At Eurocircuits, Drimer’s unconventional designs
earned him the nickname troublemaker. But over the years the designer and the manufacturer grew closer by
learning from each other’s point of view. I spoke to both Eurocircuits’ Managing Partner Dirk Stans and Saar
Drimer about their partnership. From these two conversations a common theme emerges. Both men are on a
mission to make electronics design more accessible and bring color to the industry.
“One of the challenges of printed circuit boards is understand- an opportunity for them to explore the industrial production
ing what the developer wants” says Stans. “The most import- environment and discover new possibilities.”
ant step is translating the CAD data to CAM (Computer Aided
Manufacturing) data. You want to filter out all possible mistakes Colour in the industry
before you take anything in production. To achieve this, we “Working with Saar brings some colour in the somewhat gray
offer developers a set of free online tools to check the design world of electronics”, says Stans. “And I don’t just mean multi-
before it goes to manufacture [2]. We decided to add a tool colored solder masks. More generally, the open mind to look
called Marking Editor that enables developers to place the at things differently and come up with original solutions. Most
product number anywhere on the board. The conversations engineers focus solely on functionality. But adding some colour
with Saar did contribute to this idea. But to say we built the to functional solutions makes it more enjoyable for everyone.
tool just for him would be bit of an overstatement. Other people Take for instance the demonstration boards given away on
had made similar requests. Some developers want to add their big trade fairs — they’re the dullest boards you can possibly
own number or add their logo or a photo to the PCB. So, we imagine. Why not brighten them up with an artistic touch? It’s
built the Marking Editor to offer all these capabilities in one a small extra that sets you apart from others. You always have
tool. But it’s true that Saar brings up issues that most devel- to take care that life remains interesting.”
opers don’t pay attention to. Or at least, they don’t complain Drimer: “Dirk cares a lot about making people enthusias-
about it. Working with Saar has made us look differently at the tic about engineering. If you want to get people excited and
production process. Adding multiple solder mask colours on a motivated, it’s helpful if the object that comes out is interesting.
single board for instance, is a new functionality that came out There is a whole spectrum of ‘interesting’ — it doesn’t neces-
of our collaboration with Saar.” sarily have to be ‘good looks’. I think the industry needs better
tools if you want to get people into electronics design. You must
Two-pass solder mask provide tools that aren’t intimidating. Tools that guide rather
Drimer’s company Boldport provides electronics craftsmanship than enforce. You shouldn’t expect people to fight through
as a service: clients can commission or license designs. But learning these incredibly hard tools. You have to remove the
it is best known for its exquisite DIY kits [3]. It has a large barrier and ease people into the world of designing electron-
offering of electronics projects such as the insect-themed kits ics. That way you enable them to design the things they want
that include a butterfly and a ladybird. A purchase comes with to create.”
an invitation to join the Boldport Club— an active community (191263-01)
that hangs out on a Discord server maintained by Drimer. The
latest edition to the bug series that Boldport and Eurocircuits
are working on is the Scarab. A beetle-shaped circuit board
with a multi-coloured solder mask.
Stans: “You can’t apply solder mask on a few specific places.
You always have to apply it to the entire surface of the board. Web Links
So, if you want to use multiple solder masks, you have to
[1] https://boldport.com/pcbmode
repeat the process several times. In an industrial environment
that means cleaning the installation entirely and filling it with [2] www.eurocircuits.com/online-smart-tools-services-
new ink. Technically, it is also quite difficult to neatly align the products/
various colour areas and keep the tolerances low. But it is an [3] https://shop.pimoroni.com/collections/boldport
interesting experience for the engineers in our factories. It’s
Start-up
Guide
8-page Supplement with Elektor Magazine
edition 2/2020
Distrelec
– Powering the Future
Education is the foundation for innovation,
and innovation needs advocates.
Technology is rapidly transforming the way we interact, the way Fundamental to the success of these concepts is an under-
we live and the way we work. Its progression in the 21st century standing of the technology already available, and having the
so far has seen dramatic developments including the rollout tools, products and resources to prototype and innovate for the
of the 5G network, the Internet of Things (IoT) and renew- technology that is yet to exist. Like this, start-ups, innovators
able energy solutions predicted to save the planet. With such and visionaries are shaping future technological landscapes.
progressive technologies shaping our existence, humans are But where can motivated individuals gain the necessary knowl-
becoming increasingly aware of the opportunities for industrial edge and resources to turn an inspiring concept into an indus-
growth that these innovations give rise to, and are invested in try-changing development?
using them as a platform to conceptualize the next generation
of groundbreaking developments. Central to Distrelec’s core proposition is igniting the internal fire
that propels solution seekers towards the latest technological
But it is not enough to simply offer the right tools and products.
Innovation is based on education and industry insight. Distrelec
has cultivated a vast resource and information hub on a platform The Author
called ‘KnowHow’. KnowHow is a space for engineers, indus-
Steve Herd, CEO at Distrelec, has been fundamental to
try professionals and leading manufacturers to find insights,
the delivery of Distrelec’s customer and product proposition
resources and a wealth of knowledge about the technologies
since 2015.
affecting our world. This is a platform where our network can
not only hear from the companies behind cutting-edge technol-
ogies, but also discover innovative applications used to design
Distrelec
the future of production in different fields. The KnowHow hub
seeks to uncover opportunities and inspire possibilities for all Distrelec is a leading distributor of electronics, automation
unique projects. and measurement technology with a local presence in
7 European countries. Here, Steve Herd, CEO at Distrelec,
Every notable individual in the industry has to start somewhere, discusses the ways Distrelec advocates for innovation,
and at Distrelec, we want to be the next generations’ spring- and in turn is shaping the future of technology.
board into success. By championing great ideas from the start
and aspiring to make the latest technologies completely acces-
sible to all skill sets, we demonstrate a dedication to advocating
the latest and greatest in technological innovation. Through
empowering the next generation of solution seekers, innova-
tors and industry experts, these individuals can radically alter
the future of technology alongside Distrelec.
191210-01
powered by 113
Robodev
Robodev is a spin-off of the Karlsruhe Institute of Technology
(Germany) and is active in the field of industrial automation.
Its main product is a modular, flexible and versatile automa-
tion kit consisting of hardware modules, a uniform cabling and The MES solution uses IoT technologies for Internet or Cloud
a software assistant. communication. Big Data Stream Processing and Machine Learn-
ing are used to analyze the cloud data and to generate meaning-
ful visualizations. Thanks to SAP/ERP integration, seamless
management of the entire production process is also supported.
The combination of hardware (Meta Industrial Panel) and
software (Meta Web and Mobile Application) is used to collect
data from machines in order to count produced products and to
record and use machine status, order status, employee perfor-
mance per order and much more useful data. The software
allows production to be controlled and monitored at every level
from planning to delivery via the Internet.
https://metasmartfactory.com
“ Important investors asked us to enher into
cooperation to sell our product in U.S. market
and China. “
powered by 115
Contunity
The start-up company Contunity is a spin-off of the Technical
University of Munich (Germany) and is active in the field of
electronics development. Automation processes from software
development were adapted to the requirements of electronics assembly processes.
production.
Manuals, checklists or hand-written protocols are a thing of the
Contunity’s B2B SaaS platform automates the complete past with Arkite’s HMI. The HIM software’s user-friendly inter-
electronics development process from functional description face allows engineers to create projects without programming
and component selection through to mechanical dimensions and knowledge. The system is able to integrate into the customer’s
prototyping. Circuit diagrams and board layout are generated at ecosystem, incorporating the existing workstation environment
the push of a button. Complex algorithms and AI reduce devel- and securing important aspects of the process.
opment time and time-to-market by up to 90%. In addition, www.arkite.be
know-how barriers are lowered, and existing electronics IP and
development knowledge can be exchanged across projects, “ The show was an eye-opener for discovering the
locations and times. The fully integrated solution can be fully future of electronics production. “
integrated into CAD tools of the user’s choice and so provides 191253-01
By Clemens Valens
Finals
Day One of the Fast Forward Award finals at productronica The names of the lucky three contestants were announced at
2019 saw the pitching competition. Each of the eight finalist the beginning of Day Three:
start-ups had exactly five minutes to present themselves, their • Konekt – 3D manufacturing, miniaturization and rapid
product and their business plan. A three-headed Jury consist- prototyping;
ing of professionals active in the electronics industry watched • robodev – easy to set up and program modular
and listened carefully, made notes and asked critical questions. automation solution;
On Day Two each Jury Member interviewed the candidate start- • Touchless Automation – moving small objects without
ups to gain a deeper insight into their offerings and potential. touching them.
After adding in the observations and results from Day One,
the three most promising start-ups were selected to compete These three contestants had to pitch once again in a final
on Day Three for the Grand Prize, a marketing budget of no effort to convince the Jury. After a short deliberation, the Jury
less than €25,000 (€45,000 in total). announced the winner: Touchless Automation! Konekt was
Choosing these three ‘best’ candidates turned out to be a tough runner-up, robodev came in third.
job for the Jury as all eight finalists had presented high-quality
and well thought-out projects. There could have been eight Well done and congratulations to all!
winners if the rules had allowed it. 191233-01
powered by 117
powered by 119
Elektor Ultimate Sensor Kit IoT Home Hacks with ESP8266 SDR Hands-on Book
This bundle consists of a high-quality sensor kit and There are many so-called ‘Arduino compatible’ platforms on Elektor’s SDR-Shield (SKU 18515) is a versatile shortwave
comprehensive project book. It has been specifically developed the market. The ESP8266 – in the form of the WeMos D1 Mini receiver up to 30 MHz. Using an Arduino and the appropriate
to enable use of sensors across multiple open-source Pro – is one that really stands out. This device includes WiFi software, radio stations, morse signals, SSB stations, and
microcontroller platforms including Arduino, Raspberry Pi, Internet access and the option of a flash file system using up digital signals can be received. In this book, successful author
and ESP32. The bundle contains a total of 40 different sensors to 16 MB of external flash memory. Furthermore, there are and enthusiastic radio amateur, Burkhard Kainka describes the
that are applied in multiple projects. All described projects are ample in/output pins (though only one analogue input), PWM, modern practice of software defined radio using the Elektor
supported with software examples. I²C, and one-wire. Needless to say, you are easily able to SDR Shield. He not only imparts a theoretical background but
construct many small IoT devices! also explains numerous open source software tools.
NEW
introduction to the Linux operating system, after which
you start programming in Bash, Python 3 and Javascript.
Microcontroller Basics with PIC The State of Hollow State Audio Learning Python with Raspberry Pi
In this book the author presents all essential aspects of Audio tubes are currently experiencing a comeback, especially This book is about teaching the Python programming
microcontroller programming, without overloading the in the music and high-end audio industry. This new book language using the Raspberry Pi 4 computer. The book makes
reader with unnecessary or quasi-relevant bits of information. provides answers to the following questions, among others: Do an introduction to Raspberry Pi 4 and then teaches Python
Having read the book, you should be able to understand as tubes produce better sound and how do hollow-state circuits with the topics: variables, strings, arrays, matrices, tuples,
well as program, 8-bit microcontrollers. The introduction work? How do you design hollow-state audio circuits? Can lists, dictionaries, user functions, flow of control, printing,
to microcontroller programming is worked out using you recreate some of the classic hollow-state audio devices keyboard input, graphics, GUI, object oriented programming
microcontrollers from the PIC series. for modern listening rooms and recording studios? How can and many more topics.
you intelligently modify hollow-state amplifiers to your taste?
The Hexadoku puzzle employs numbers in the hexadecimal thicker black lines). A number of clues are given in the puzzle
range 0 through F. In the diagram composed of 16 × 16 boxes, and these determine the start situation.
enter numbers such that all hexadecimal numbers 0 through
F (that’s 0-9 and A-F) occur once only in each row, once in Correct entries received enter a prize draw. All you need to do
each column and in each of the 4×4 boxes (marked by the is send us the numbers in the gray boxes.
Participate!
Ultimately April 5 2020, supply your name, street address
and the solution (the numbers in the gray boxes) by email to:
[email protected]
Prize Winners
The solution of Hexadoku in edition 1/2020 (January & February) is: C7A13.
The book vouchers have been awarded to: Francis Biette (France); Annie Tigchelaar (Netherlands);
David Turnbull (UK); Sabine Lamprecht (Germany); Gabi Kirchhof (Germany).
Congratulations everyone!
The competition is not open to employees of Elektor International Media, its subsidiaries, licensees and/or associated publishing houses.
Let Microchip help you secure not only your designs, but your brand and revenue
stream as well. With two decades of security experience, our experts take the
fear out of integrating security and remove the need for costly in-house expertise.
Combine that expertise with our secure factories and provisioning services and
you’ll understand why many top companies trust Microchip’s experts to help guide
their designs.
The Microchip name and logo and the Microchip logo are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries. All
other trademarks are the property of their registered owners.
© 2019 Microchip Technology Inc. All rights reserved. DS00002767A. MEC2236Eng01/19