An Introduction to RISC-V
RISC-V is an Instruction Set Architecture (ISA) that is both free and open. This means that the RISC-V ISA itself does not require a licensing fee, although individual implementations may do so. The RISC-V ISA is curated by a non-profit foundation with no commercial interest in products or services that use it, and it is possible for anyone to submit contributions to the RISC-V specifications. The RISC-V ISA is suitable for applications ranging from embedded microcontrollers to supercomputers.
This book will first describe the 32-bit RISC-V ISA, including both the base instruction set as well as the majority of the currently-defined extensions. The book will then describe, in detail, an open-source implementation of the ISA that is intended for embedded control applications. This implementation includes the base instruction set as well as a number of standard extensions.
After the description of the CPU design is complete the design is expanded to include memory and some simple I/O. The resulting microcontroller will then be implemented in an affordable FPGA development board (available from Elektor) along with a simple software application so that the reader can investigate the finished design.
The Intelligent Digital Thermostat Temperature Controller is a small switch controller (77x51mm) which allows you to create your own thermostat. With its NTC Sensor and its LED displays, you are able to switch up to 10A 220V depending on the measured temperature.
The Internet of Things (IoT) is a new concept in intelligent automation and intelligent monitoring using the Internet as the communications medium. The “Things” in IoT usually refer to devices that have unique identifiers and are connected to the Internet to exchange information with each other. Such devices usually have sensors and/or actuators that can be used to collect data about their environments and to monitor and control their environments. The collected data can be processed locally or it can be sent to centralized servers or to the cloud for remote storage and processing. For example, a small device at the size of a matchbox can be used to collect data about the temperature, relative humidity and the atmospheric pressure. This data can be sent and stored in the cloud. Anyone with a mobile device can then access and monitor this data at any time and from anywhere on Earth provided there is Internet connectivity. In addition, users can for example, adjust the central heating remotely using their mobile devices and accessing the cloud.
This book is written for students, for practising engineers and for hobbyists who want to learn more about the building blocks of an IoT system and also learn how to setup an IoT system using these blocks.
Chapter 1 is an introduction to the IoT systems. In Chapter 2, the basic concepts and possible IoT architectures are discussed. The important parts of any IoT system are the sensors and actuators and they are described briefly in Chapter 3. The devices in an IoT system usually communicate with each other and the important aspect of IoT communication is covered in Chapter 4. Chapter 5 proceeds with the features of some of the commonly used development kits. One of these, the Clicker 2 for PIC18FJ manufactured by mikroElektronika, can be used as a processor in IoT systems and its features are described in detail in Chapter 6. A popular microcontroller C language, mikroC Pro for PIC gets introduced in Chapter 7. Chapter 8 covers the use of a click board with the Clicker 2 for PIC18FJ development kit. Similarly, the use of a sensor click board is described as a project in Chapter 9, and an actuator board in Chapter 10. Chapters 11 and 12 cover Bluetooth and Wi-Fi technologies in microcontroller based systems, and the remaining chapters of the book demo the creation of a simple Wi-Fi based IoT system with cloud-based data storage.
This book has been written with the assumption that the reader has taken a course on digital logic design and has been exposed to writing programs using at least one high-level programming language. Knowledge of the C programming language will be very useful. Also, familiarity with at least one member of the PIC series of microcontrollers (e.g. PIC16 or PIC18) will be an advantage. The knowledge of assembly language programming is not required because all the projects in the book are based on using the C language. If you are a total beginner in programming you can still access the e-book, but first you are advised to study introductory books on microcontrollers.
This book is aimed at practising engineers, students and hobbyists. It is intended as a source of reference for hardware and software associated with instrumentation and control engineering. Examples are presented from a range of industries and applications.
Throughout the book, circuit diagrams and software listings are described, typical of many measurement and control applications. The hardware and software designs may be used as a basis for application by the reader.
The book contains examples of PIC, PLC, PAC and PC programming. All code samples are available to download free of charge from the support website.
After an introductory section on control theory and modelling, the text focus is upon software for control system simulation and implementation, with appropriate reference to interfacing, electronic hardware and computing platforms.
Introduction to Control Engineering is a sourcebook of solutions for control system applications!
In 35 Projects with the Raspberry Pi and Arduino
The Internet of Things (IoT) is a trend with a strong technological impulse. At home, we want to do everything on our tablets, from browsing Facebook to watching TV, from operating lights to keeping an eye on the temperature.
In 35 fun projects, this book will show you how to build your own Internet of Things system. We'll cover the hardware (primarily the Raspberry Pi and Arduino) and the software that makes control via Internet possible. We employ Wi-Fi and radio links so no requirement any longer to install cabling crisscross through your home.
Assuming the projects in the book are finished, you have a complete Internet of Things system that allows you to control and view of everything in your home. For example, if there's something in the mail box or the car is securely in the garage. Also, you can switch on the lights and the alarm from your couch. The crisp explanations allow the projects to be customized with ease, for example, to turn on your coffee machine or TV remotely. The index gives easy access to creative projects that can serve as an example, enabling you to do all the connecting to the IoT independently. All project software can be downloaded free of charge from the Elektor website.
In this unique book, Raspberry Pi, Arduino and HTML webpages with stylesheets and JavaScript come together in clearly-described, easy-to-build projects. This special book is an essential part of your collection!
There are many so-called 'Arduino compatible' platforms on the market. The ESP8266 – in the form of the WeMos D1 Mini Pro – is one that really stands out. This device includes WiFi Internet access and the option of a flash file system using up to 16 MB of external flash memory. Furthermore, there are ample in/output pins (though only one analogue input), PWM, I²C, and one-wire. Needless to say, you are easily able to construct many small IoT devices!
This book contains the following builds:
A colourful smart home accessory
refrigerator controller
230 V power monitor
door lock monitor
and some further spin-off devices.
All builds are documented together with relevant background information for further study. For your convenience, there is a small PCB for most of the designs; you can also use a perf board. You don’t need to be an expert but the minimum recommended essentials include basic experience with a PC, software, and hardware, including the ability to surf the Internet and assemble PCBs.
And of course: A handle was kept on development costs. All custom software for the IoT devices and PCB layouts are available for free download from at Elektor.com.
TapNLink modules provide wireless interfaces for linking electronic systems to mobile devices and the Cloud. TapNLink connects directly to the target system's microcontroller. It integrates into and is powered by the target system. All TapNLink products are easily configured to control access by different types of users to data in the target system.
TapNLink facilitates rapid creation of Human Machine Interfaces (HMI) that run on Android, iOS and Windows mobiles. HMI apps are easily customized for different users and can be deployed and updated to keep pace with evolving system requirements and user needs.
TapNLink Wi-Fi modules can also be configured to connect the target system permanently to a wireless network and the Cloud. This enables permanent logging of target system data and alarms.
Features
Wireless Channels
Wi-Fi 802.11b/g/n
Bluetooth Low Energy (BLE 4.2)
Near Field Communication (NFC) Type5 tag (ISO/IEC 15693)
Supported Target Connections: Connects on 2 GPIO of the target microcontroller and supports:
Serial interface with Software Secure Serial Port (S3P) protocol
Serial interface with ARM SWD debug protocol.
UART with Modbus protocol
Mobile Platform Support
HTML5 web apps (Android, iOS)
API for Cordova (Android, iOS, Windows 10)
Java (Android, iOS native)
Auto-app generator for Android and iOS mobiles
Security
Configurable access profiles
Configurable, encrypted passwords
AES-128/256 module-level data encryption
Configurable secure pairing with NFC
Dimensions: 38 mm x 28 mm x 3 mm
Electrical Characteristics
Input voltage: 2.3V to 3.6 V
Low power consumption:
Standby: 100 µA
NFC Tx/Rx: 7 mA
Wi-Fi Rx: 110 mA
Wi-Fi Tx : 280 mA (802.11b)
Temperature Range: -20°C ~ +55°C
Compliance
CE (Europe), FCC (USA), IC (Canada)
REACH
RoHS
WEEE
Ordering Information
Base Part Number: TnL-FIW103
MOQ: 20 modules
TapNLink modules pre-qualified, pre-programmed and ready to configure.
IoTize Studio configuration and testing software
Software for HMI on mobile devices (iOS, Android, Windows 10)
IoTize Cloud MQTT infrastructure (open source)
For more information, check out the datasheet here.
This fiberglass outdoor antenna is optimized for receiving signals in the 868 MHz ISM band, supporting technologies such as Sigfox, LoRa, Mesh Networks, and Helium. The antenna consists of a half-wave dipole with 4.4 dBi gain, encapsulated inside a fiberglass radome with an aluminum mounting base.
Specifications
Frequency
868-870 MHz
Antenna type
Dipole 1/2 wave
Connector
N female
Installation type
Mast Diam 35-60 mm (mounting bracket included)
Gain
4.4 dBi
SWR
≤1.5
Type of Polarization
Vertical
Maximum power
10 W
Impedance
50 Ohms
Dimensions
52.5 cm
Tube diameter
26 mm
Base antenna
32 mm
Operating temperature
−30°C to +60°C
Included
ISM Band Antenna (868 Mhz)
Mast bracket (for installation on a 35 to 60 mm diameter mast)
The AxiDraw's pen holder normally holds the pen parallel to the front face of the vertical pen slide, either vertically or at 45° from vertical.
This heavy-gauge aluminum adapter sits between the front face of the vertical slide and the pen clip, and serves to rotate the pen tip an additional 45°, not from vertical but out from parallel to the front face of the vertical slide. This gives the AxiDraw the ability to hold a pen in a 'right handed' grip, as opposed to the normal 'center-handed' (for lack of a better description) position.
The right-handed grip makes it possible to hold the pen at a consistent angle suitable for use with regular pens, but also stub, italic, parallel, and chisel-point pens.
Compatibility
This adapter is compatible only with AxiDraw V3 family pen plotters that mount the pen on a 2-hole vertical slide. This includes all AxiDraw V3/A3 and AxiDraw V3 XLX units, and all AxiDraw V3 units manufactured after February 2017.
The JLINK V9 USB-JTAG Arm Emulator/Debugger is a high-performance and reliable tool for programming and debugging ARM Cortex-M, Cortex-A/R, and other supported microcontrollers via JTAG and SWD interfaces.
Features
Universal Compatibility: Supports a wide range of ARM-based MCUs and cores including Cortex-M0, M3, M4, M7, A5, A7, A9, and R4.
High-Speed Performance: Fast data throughput for both flash programming and real-time debugging with minimal latency.
Multi-Interface Support: Offers both JTAG and SWD modes, enabling flexible use in different development environments.
Plug & Play via USB: Easy connection to your PC with USB 2.0 interface; no external power supply required.
Robust Software Support: Fully compatible with SEGGER J-Link software tools and supported by major IDEs including Keil MDK, IAR EWARM, SEGGER Embedded Studio, and others.
Included
1x JLINK V9 USB-JTAG Arm Emulator/Debugger
1x USB Cable
1x Connector Cable
This display correspond to the Nokia 5110 norm which makes it perfectly to display data or graphs of measured values on a microcontroller or a single-board computer. Additionally, the display is compatible to all Raspberry Pi, Arduino, CubieBoard, Banana Pi and microcontroller without additional effort. Specifications Chipset Philips PCD8544 Interface SPI Resolution 84 x 48 Pixels Power supply 2.7-3.3 V Special features Backlight Compatible to Raspberry Pi, Arduino, CubieBoard, Banana Pi and microcontroller Dimensions 45 x 45 x 14 mm Weight 14 g
This aluminium case in a precious design is very robust and protects your Raspberry Pi 4 perfectly against outer influences. There are cut-outs for all interfaces to make them accessible. The channel milling at the top side serves as a heat sink and inside the housing the case is in direct contact with the CPU and the RAM to maximize cooling results. Features Color: Matt black (gun-metal black) Material: High-quality, cast aluminium Special Features: Channel milling which serves as a heatsink, cut outs for all interfaces, heatsink in contact with CPU and RAM of the Raspberry Pi for better cooling performance Dimensions: 91 x 65 x 34 mm Items delivered Aluminium case Screws Heat conduction pads
This aluminium-based Armor Case is perfect for your Raspberry Pi 4 if it gets hot, as this protects it against shocks and heat equally. Channel milling combined with dual fans offers best cooling performance. That‘s why it is suitable for extreme settings. Another benefit is that this case does not need more space than the Raspberry Pi itself and can be integrated in existing projects.Features
Material: CNC milled aluminium alloy
Compatible with Raspberry Pi 4B
Assembly: 4 included screws connect the case to the Raspberry Pi
Special features: Large heat sink and dual fan each Ø24 mm, massive protection against heat and shocks, no additional space needed
Wiring: Fan 5V (Red) - 5V (Pin4), Fan GND (Black) - GND (Pin6)
Scope of delivery: Armor case “BLOCK ACTIVE”, screws, thermal tape
Size top side: 69 x 56 x 15.5 mm
Size bottom side: 87 x 56 x 7.5 mm
DownloadsManual
The JOY-iT Armor Case BLOCK is a robust aluminum enclosure designed specifically for the Raspberry Pi 5. It offers excellent protection against heat and physical shocks, making it suitable for challenging environments. Its compact design ensures that it doesn't require additional space, allowing for seamless integration into existing projects.
The case includes a large heatsink to enhance cooling efficiency. Installation is straightforward, with four screws (included) securing the case to the Raspberry Pi.
Specifications
Material
CNC milled aluminum alloy
Cooling performance
Idle: ~39°CFull load: ~75°C
Special features
Large heat sink, protection against shocks and heat with the same volume as without housing
Dimensions (top side)
69 x 56 x 15,5 mm
Dimensions (bottom side)
87 x 56 x 7,5 mm
Input Voltage: 12 - 36 V Max. Phase Current: 2 A per phase Removable motor drivers Reset-button Screw terminals for power supply Dimensions: 53 mm x 68 mm x 18 mm Weight: 46 g
This expansion board allows you to add an RS485 and a CAN interface to a Raspberry Pi Pico.
The board also offers the option of operating it either via a standard USB-C connection with 5 V or via a screw terminal that accepts a voltage of 6 to 12 V. The voltage applied to the screw terminal is reduced to 5 V by a voltage converter integrated on the board.
Features
Power can be supplied via a USB-C connection with 5 V or via a screw terminal that draws between 6 and 12 V. In the latter case, a built-in voltage converter reduces the voltage to 5 V.
To increase the versatility and range of functions, the connection pins of the Raspberry Pi Pico have been routed to the outside.
The expansion board also offers the option of communication via the RS485 and CAN interfaces.
Specifications
CAN Interface
SPI, CAN
RS485 Interface
Serial, RS485
Power supply
5 V DC (USB-C)
Screw terminal
6-12 V DC
Logic level
3.3 V
Terminating resistor CAN
120 Ω (can be activated and deactivated as required)
Terminating resistor RS485
120 Ω (can be activated and deactivated as required)
The Explorer Board is the easy and efficient way to develop your Raspberry Pi Pico projects.
Since the most important components are already integrated, you save time and effort on wiring. The Explorer Board has a wide range of interface connectors so you can connect your projects to a variety of modules and devices. With the integrated breadboard, you can quickly build and realize your own projects.
Thanks to the possibility to connect or disconnect all modules individually, you can use your pins, which are additionally led separately to the outside, for other projects or experiment on the integrated breadboard at any time.
Features
Fast and efficient experimenting with the Raspberry Pi Pico
Raspberry Pi Pico can be plugged in directly
All modules can be switched on and off individually
Additional integrated breadboard for own development
Specifications
Integrated modules: 4 RGB LEDs, buzzer, relay, 1.8“ TFT display, DHT11 temperature sensor, 4 buttons, breadboard
Interfaces: 4x servo motor, SPI, I²C, UART, 5x crocodile clip connector
Power supply: 5 V USB-C
Dimensions: 219 x 110 x 27 mm
Downloads
Manual
Examples and libraries
The JOY-iT JDS2960 is a 2-channel signal generator capable of producing signals up to 60 MHz. Its compact design and the option to operate it with a power bank make it ideal for mobile use.
With a variety of waveforms, including sine, square, triangle, pulse, half-wave, and more, it is suitable for various measurement technology applications.
Additionally, the JDS2960 features a 1-channel frequency allocation. Its high frequency accuracy of ±20 ppm and stability of ±1 ppm/3 h ensure excellent signal quality and great flexibility.
The 2.4-inch TFT color display provides user-friendly operation and enables a wide range of applications.
Features
2 Channels
Up to 60 MHz
Robust aluminum housing
1-channel frequency counter
Up to 20 Vpp
Many different pre-programmed waveforms and up to 60 user-defined waveforms
Pulse function
Specifications
Channels
2-channel Signal Generator1-channel Frequency meter
Frequency range
Sine: 0-60 MHzSquare, triangle: 0-25 MHzTTL, Pulse: 0-6 MHz
Signal forms
Sine, square, triangle, pulse, half/solid wave, exponential rise/fall, etc.
Measuring range frequency counter
1-100 MHz
Frequency accuracy
±20 ppm
Frequency stability
±1 ppm/3 h
Sampling rate
266 MSa/s
Display
2,4" TFT color LCD
Vertical shaft resolution
14 bits
Amplitude range
<10 MHz: 0-20 Vpp>10 MHz: 0-10 Vpp
Amplitude resolution
1 mV
Amplitude stability
±5%/5h
Amplitude flatness
<10 MHz: ±5%>10 MHz: ±10%
Impedance of output
50 Ω ±10%
Distortion factor
<0.8% (20 Hz-20 KHz, 0 dBm)
Dimensions
145 x 95 x 55 mm
Weight
900 g
Included
1x JOY-iT JDS2960 2-ch Signal Generator
1x Power supply unit
1x BNC-BNC cable
2x BNC crocodile clip cables
1x USB-DC power cable
1x USB data cable
Downloads
Datasheet
Manual
Software
This multimedia case for all Raspberry Pi 4 models is characterized by high functionality, modern design and a sumptuous equipment: Integrated IR receiver, controllable with almost all IR remote controls Controllable LED lighting Switching on/off, controlling additional functions of the Raspberry Pi Active, quiet cooling Toolless, magnetic assembly All connections of the Raspberry Pi are on the backside GPIO port is accessible via separate lid Perfect as a multimedia platform in the living room, desktop device or for the use in digital signage. Specifications Material Acryl Color Black Compatible to Raspberry Pi 4 Power supply 5 VDC (USB-C) Microcontroller STM32F030F4P Infrared receiver TSOP4838 LEDs 4x WS2812Mini Led out connections 1x USB-C, 1x Aux, 2x microHDMIFrom Raspberry Pi: 2x USB-A 3.0, 2x USB-A 2.0, 1x RJ45 Weight 280 g Dimensions 113 x 100 x 38 mm Scope of delivery Multimedia case, adapter board, control board, Aux adapter cable Downloads Datasheet (177.9 KB) Manual (3.5 MB) Expert Guide (6.5 MB) Firmware v1.0.9-beta (11.2 KB) Addons for LibreElec 9 (2.6 MB) Code Examples Addon - Multimedia Case Configuration Addon - LED Configuration Addon - IR Control Configuration Prepared LibreElec Image Prepared LibreElec Image 10.BETA GitHub
This JOY-iT microcontroller board opens the world of programming to you and offers you the same computing power as the Mega 2560, but with a smaller foot-print. It also has many more connectors than comparable boards (Arduino Uno). It is powered by the Arduino IDE and power can be supplied either via the USB port or the VIN pins. This allows you to use it safely with many other devices, e.g. desktop PC. Therefore the Mega 2560 Pro is highly integrable.
Features
Microcontroller
ATmega2560 - 16AU
Storage
Flash 256 KB, SRAM 8 KB, EEPRom 4 KB
Amount of Pins:Digital I/OPWM OutputAnalog Input
541516
Compatible with
Arduino, Desktop PCs, etc.
Special features
USB Port or Power Pins for power supply
Interface converter
Micro USB to USB UART
Size
55 x 38 mm
Items delivered
JOY-iT Mega 2560 Pro with Pins
Further Specifications
Input Voltage
7 - 9 Volt on Vin, 5 Volt on mUSB
Logic level
5 Volt
Output current
800 mA
Voltage regulator
LDO (for up to 12 V peak)
Frequency
16 MHz (12 MHz are possible for data exchange)
Downloads
Manual
The MotoPi is an extension-board to control and use up to 16 PWM-controlled 5 V servo motors. The board can be additional powered by a voltage between 4.8 V and 6 V so a perfect supply is always guaranteed and even larger projects can be powered. With the additional power supply and the integrated Analog-Digital-Converter, new possibilities can be reached. An additional power supply per motor is not required anymore because all connections (Voltage, Ground, Control) are directly connected to the board. The control and the programing can be directly done, as usual, on the Raspberry Pi. Special features 16 Channels, own clock generator, Inkl. Analog Digital Converter Input 1 Coaxial power connector 5.5 / 2.1 mm, 5 V / 6 A max Input 2 Screw terminal, 4.8-6 V / 6 A max Compatible with Raspberry Pi A+, B+, 2B, 3B Dimensions 65 x 56 x 24 mm Scope of supply Board, manual, fixing material
The Motorino board is an extension-board to control and use up to 16 PWM-controlled 5V-Servo-motors. The included clock generator ensures a very precise PWM signal and a very precise positioning. The board has 2 inputs for voltage from 4.8 V to 6 V which can be used for up to 11 A. With this input, a perfect power supply is always guaranteed and even bigger projects are no problem. The supply runs directly over the Motorino which provides a connection for voltage, ground and control. With the build in capacitor, the voltage is buffered which prevents a sudden voltage-drop at a high load. But there is also the possibility to connect another capacitor. The control and the programing can be done, as usual, with the Arduino. Manuals and code examples allows a quick introduction for beginners. Special features 16 Channels, own clock generator Input 1 Coaxial power connector 5.5 / 2.1 mm, 4.8-6 V / 5 A max Input 2 Screw-terminal, 4.8-6 V / 6 A max Communication 16 x PWM Compatible with Arduino Uno, Mega and may more microcontroller with Arduino compatible pinout Dimensions 69 x 24 x 56 mm Scope of supply Board, Manual, Retail package
Wide Range Power Supply for Raspberry Pi
With the PiEnergy Mini, you can operate your Raspberry Pi with a voltage of 6 to 36 V DC. You can use the button integrated on the board to both power up and power down your Raspberry Pi.
Communication with the Raspberry Pi is via GPIO4, but this connection can also be cut by removing a resistor to use the pin freely. Thanks to the ultra-flat design, it can also be used in many housings. The pin header is included and not soldered on to keep the design even flatter.
Specifications
Input voltage
6 to 36 V DC
Output voltage
5.1 V
Output current
Up to 3 A (active ventilation recommended for additionally connected loads)
Cable cross-section at the power input
0.2-0.75 mm²
Interface to the Raspberry Pi
GPIO4
Microcontroller
ATtiny5
Further connections
5 V fan connector (2-pin/2.54 mm)Solder pads for external on/off switch
Compatible with
Raspberry Pi 3, 4, 5
Dimensions
23 x 56 x 11 mm
Included
Board with mounted heat sink
Pin header (2x5)
Spacer, screw, nut
Downloads
Datasheet (English)
Datasheet (Italiano)
Manual (English)
Manual (Italiano)
The JOY-iT R301T fingerprint sensor module is capable of image collection and algorithm calculation due to this integrated chip. Another remarkable function of the sensor is, that it can recognize the fingerprint in different conditions, for example humidity, light texture or changes of the skin. This offers a very wide range of possible applications to secure locks and doors among others. The chip can send data via UART, TTL serial and USB to the connected controller.
Specifications
Model
JP2000 sensor
Chip
32 Bit ARM Cortex-M3
Chip storage
96 kB RAM, 1 MB Flash
Power supply
4.2-6.0 V
Working current
Typical: 40 mAPeak: 50 mA
Logic level
3,3/5 V TTL Logic
Fingerprint storage capacity
3000 Prints
Matching mode
1:N Identification1:1 Verification
Adjustable security level
1 - 5 levels(default security level: 3)
False acceptance rate
< 0.001%(on security level 3)
False acceptance rate
< 0.1%(on security level 3)
Response time
Pre-treatment: < 0.45 sMatch: < 1.5 s
Baud rate support
9600 - 921600
UART communication
No parity, Stop Bit: 1
Dimensions
42 x 19 x 8 mm
Included
1x Fingerprint sensor COM-FP-R301T
1x Cable
Downloads
Datasheet
Manual